43 comments

[ 4.0 ms ] story [ 65.3 ms ] thread
"Old LISPer that I am, I also looked at various current dialects of Lisp and Scheme—but, as is historically usual for Lisp, lots of clever design was rendered almost useless by scanty or nonexistent documentation, incomplete access to POSIX/UNIX facilities, and a small but nevertheless deeply fragmented user community."

I find this still a pretty accurate assessment of the world of Lisp, 8 years on. I'm keeping an eye on Clojure, though, as a potential break in this pattern.

As does MzScheme.

This rift and indecision in lisp implementations only exists as long as we continue to allow it. If people just start hacking and using a system in larger numbers, it'll grow. The world is so ripe for the next big language to be Scheme.

If people just start hacking and using a system in larger numbers, it'll grow.

If being the magic word...

The world is so ripe for the next big language to be Scheme.

Why do you say that? Scheme is not new. Something radical would have to happen to make it popular out of nowhere.

What's new is where a lot of independent programmers are. Tons of people are coming off of a Ruby and Python high and wondering where the cutting edge is going.

Scheme is positioned to be that next edge to cut with. It's very much like Python and Ruby, with similar usage properties and library distribution practices. But at the same time it's got a simpler core and a more powerful syntax layer.

If we can just get people to stop discriminating against parenthesis and maybe get a nice web framework and a good deployment tool, we could see an explosion of usage in the Scehme world that inflates the space much like what happens with Ruby.

I yearn for the day when using Scheme professionally is No Big Deal.

What's new is where a lot of independent programmers are.

What's necessary is for something very practical to require scheme. Ruby would still be a hobbyists language if Rails didn't come along. Perhaps arc could help here in the future but even the scheme community isn't totally amped on arc and therefore not rallying behind it.

Erlang seems better suited to be the next big lang than scheme. It has already found it's way into some of the big names like facebook and amazon, demonstrating practical importance, while solving problems that are still hard in other languages. cough concurrency...

The world is so ripe for the next big language to be Scheme.

Would Scheme with C syntax do it for you? If so, we're already there with JavaScript.

The importance of good documentation cannot be overstated. Clean code is not enough. While it can simplify the process of understanding its behavior unambiguously, it is limited in conveying its intended behavior. If a certain set of inputs doesn't work correctly on a function, is that a bug, or a known/intentional limitation? Tests play an important role in this as well, since they can convey intent in an executable format. Anyway, for what it's worth, I've got my eye on Clojure also.
This is pretty old, but as an avid Python advocate, it's always worth a re-read.
"Python advocate"...pft.

I'm an advocate of open source tools. Who has the time or the motivation to be an advocate for one specific technology unless they're developing it themselves?

Don't get me wrong, I use Python on an almost daily basis and like the language. But the only "advocacy" I practice is by example.

I assumed he means "advocate" in the same way that someone is an advocate for their favorite music/movies. I see nothing wrong with that.
Haha, fine, an avid Python fan.

In my world, which is dominated by C, C++, and Java, advocating agile technologies can be well worth my time.

I respect that. I think that the Ruby guys have bestowed upon me a healthy knee-jerk reaction to anything resembling fanboyism.
Yeah, anytime I see "RoR", my eyes narrow.
(comment deleted)
Look, there's merit to this article, but if it's really necessary to post it to the front page of Hacker News, I'm sure SICP deserves mention as well.
Like a HN obSICP, equivalent to 1. X, 2. ??? 3. Profit on /.?
You may want more recent resources about Python, because Python has changed significantly since 1997.

Mark Pilgrim's book Dive Into Python (Also free online at http://diveintopython.org) is a pretty good intro to the language, and does a good job of exploring its strengths.

(And, seriously, people. #1?)

ESR is a poseur.
What makes you say that?
Because he is an observer of hacker culture but writes as if he is a participant.
How has he not participated?
He's definitely a participant, both in terms of software (off the top of my head: fetchmail, several contributions to Linux, Emacs, and Nethack) and tech books (The Art of Unix Programming, some of Learning GNU Emacs, others).

If anything, the problem with ESR is that he considers himself an expert on explaining hacker culture to outsiders, yet tends to excessively project his own values, politics, etc. on it when doing so.

Agree 100%

Now, I do find that his values and politics and opinions are rather typical of hackers . . .

While he has deleted my comments on his blog (and arbitrarily and unfairly so in my opinion) and is not the nicest person, he is quite generous with his time and energy - I have learned a lot from his writing. As a matter of fact, it was through his writing that I found PG, and many, many other sources of enriching, life-changing information - I have a lot to thank him for.

Update: it appears that the spam filter on ESR's WordPress installation is what deleted my comments on his blog.
Perhaps instead of "a participant" I should have said "as if he is representative of hackers" which manifestly he isn't.

Now excuse me, I'm going to play my flute for a bit, then go and shoot something, and maybe write some more of my sex-advice column :-P

The concept that any one individual could be representative of hackers is fallacious, and neither does ESR purport to be representative of hackers, even though many of his views and his style of reasoning are indeed common amongst hackers.
I believe that he is indeed a participant.

His work speaks for itself.

Now, his personality might be a bit abrasive to some (to say the least) yet - as I have stated on /. before - let the first geek/nerd/techie/hacker with the all around pleasant personality cast the first stone.

I didn't finish it. I browsed the author's website a little. He seems grossly arrogant.
I found it hilarious that he had to mention the fact that he had a "baseline of 12 languages" twice.
First experience with ESR?

Check out the cathedral and the bazaar.

http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral...

That's crap. Check out his sex tips for geeks!

http://www.catb.org/~esr/writings/sextips/

The Cathy lady he asks for opinions is his wife. Not totally unbiased, then.
Not to mention that one person's opinion is not data. The best way to find out what your partner wants is either to ask or experiment. Much better than listening to ESR. :)
At least he praises every good work, not just his. He is quick to praise PG (check out his Software page, he implemented a filter) and anybody else who has done something cool...including himself.
I thought so too, then I checked who the author was, and realized I had already read a book of his: http://www.catb.org/~esr/writings/taoup/

When I read the book, his personality some times bothered me, but the book had enough insight that it was worth my time. I felt the same with this essay.

Python could then evaluate the fetchmail --configdump output and have the configuration available as the value of the variable “fetchmail”.

Never ever do it. Python has very good parsers now. Using "eval" is crazy. Python is not just a scripting language like JavaScript, it has a full power of C under the hood, thus it's evaluation must be restricted. Or someone will set your or your client's “fetchmail” environment variable to '__import__('os').remove(...'.

Why not Python?

  - CPython
  - CPython
  - did I mention the GIL and the sub-performing interpreter? guess I did.
  - CPython
Next time I'm in a debate, I'll repeat my only point tersely and hope nobody notices.
It's really the only knock I have against Python ;/

  - Jython
  - Jython
  >>> from __future__ import GIL
  Traceback (most recent call last):
  (no code object) at line 0
  File "", line 0
  SyntaxError: Never going to happen!
  - Jython
write compilers and interpreters for fun

Yet I do not know a single person who uses an ESR language, nor any even semi-mainstream language that is influenced by his ideas. The only thing he has IIRC is /etc/termcap. Someone's gotta do it, but doing it doesn't make him an authority on anything...