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

Also when will people understand that SICP is not about teaching programming language? There is no fucking point in rewriting it in your favourite language, it is 99.9% your language less suitable for it (99% it already has mutable state, assignment, loops, (pseudo-)OOP and 5 layers of historic brain damage)

Don't know scheme? But it's even better that way! Many things will faster click in your head. Like oh wtf we're writing programs in some lists. Oh and now how the fuck your interpreter can evaluate programs far more complex than itself?



> it already has mutable state, assignment, loops, (pseudo-)OOP and 5 layers of historic brain damage

You mean like Scheme, right? It's got all that, plus an extra couple of layers now that there's R7RS.


Sure, but this is in Clojure. Surely that's not /that/ far away from Scheme: they're Lisp-1's with pervasive immutability. There's not such an emphasis on explicit recursion, but the loop/recur pattern is still pretty close :) (But yes, you would have to of course translate it from Scheme to Clojure, which means not doing the explicit recursion.)


Scheme and/or Common LISP seem to be the common recommendation to embark on SICP journey, just for reference.


Look at Racket (was Dr Scheme) and use the dialect R5RS

http://stackoverflow.com/questions/939582/which-language-in-...


Use the SICP package for Racket, when you get to the chapters with non-standard functions. For example the chapter on streams and the one about the picture language.

http://planet.racket-lang.org/package-source/neil/sicp.plt/1...


Especially scheme, because it's the language used in the original edition.


An alternative to Racket would be Chicken Scheme. But again, anything that has R5RS included will do fine.

I would not go with R7RS, but this is just a personal preference. Seems bloated to me.




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

Search: