News for hackers. Stuff that matters.
Re:New Languages Considered Harmful: "Learning new languages... by Zak on Friday April 04, 2008 @01:11PM (#154997)
I've found that most languages I consider worth learning have fairly small overhead. The syntaxes of ML, Lisp, Haskell, Smalltalk, Prolog, Lua, Ruby, Qi and Python are small, simple and easy to learn[0]. Most of those have small standard libraries as well. Learning any one of those, assuming you don't already know a very similar language is likely to change how you think about programming. Even if you don't use that language much, it will alter how you code in other languages.

Is this worth it, from a strictly professional perspective? I have no clue. I've never met a strictly professional programmer who was any good.

[0] This should not be taken to mean that these are the only languages I consider worth learning - they're just the first ones that came to mind.

Re:New Languages Considered Harmful: "Learning new languages... by papersmith on Friday April 04, 2008 @03:37PM (#155163)
"I've found that most languages I consider worth learning have fairly small overhead...Lisp..."

Scheme yes, maybe not Common Lisp :P

Re:New Languages Considered Harmful: "Learning new languages... by Zak on Friday April 04, 2008 @05:23PM (#155257)
Note that I said the syntax is small for all of (list of languages) and most of those have a small standard library. CL has a simple syntax and a large standard library. By extension, so does Qi.
Re:New Languages Considered Harmful: "Learning new languages... by ced on Saturday April 05, 2008 @11:11AM (#155648)
There's more to the syntax than just the parenthesis. That you write

   (let ((x 4)) (print x))
instead of

   (let x 4 (print x))
is part of it. So is the order of arguments.
Re:New Languages Considered Harmful: "Learning new languages... by Zak on Monday April 07, 2008 @01:37PM (#157017)
Sure, those are all parts of the syntax of a language, but I still maintain that CL's syntax is simpler and more regular than that of Ruby and vastly simpler than that of Java.

As an aside, the first form of the example you gave is what most Lisps use. CL, Scheme, Emacs and Goo all use this. The second, as far as I know is only used by Arc, which has a more complicated syntax than most Lisps.