Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm currently re-visiting SICP, as well as filmed SICP lectures: http://academicearth.org/courses/the-structure-and-interpret... - it is a nice refresh of Scheme, since the last time I saw Scheme was when men built pyramids.

What motivated me to revisit it again is Naughty Dog's presentation on their "new" version of Scheme scripting engine they use in Uncharted 2 (similar to GOAL, but new, based on PLT-Scheme).

Check it out http://www.gameenginebook.com/gdc09-statescripting-uncharted... (40 MB PDF). There is also this shorter presentation http://www.naughtydog.com/corporate/press/GDC%202008/Adventu... (pdf).

What I'm wondering is, now that we have multicore power, huge amount of RAM and stuff like that - why are people so dispersed into other functional languages when LISP has such a rich heritage? IMO wouldn't it be trivial to run Scheme or any other LISP if you stick to functional programming? Of course, on the other hand there is a problem of parallel algo's, but that is another topic.



Some of the other languages have capabilities that Lisp doesn't, and while some argue that one can theoretically graft anything onto Lisp via macros, there's something to be said for having them planned as part of the language. Really diving into another functional language (I'd suggest OCaml or Erlang) will influence your programming just as much as learning Scheme has, whichever you use more in the long run. OCaml will get you thinking about when static typing is a useful tool, and Erlang has a refreshingly sensible take on concurrency.

The people who designed those languages weren't ignorant of Lisp, by the way. For example, ML (i.e., SML and OCaml) was originally designed because Lisp's dynamic typing kept leading to subtle errors in an automated theorem prover, IIRC. The influence of Lisp on Haskell and Erlang is also pretty obvious, particularly in the terminology. Lisp is not the end of programming language evolution -- Scheme is just one of the most concise designs so far.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: