Live data from Hacker News

SICP: JavaScript Edition available for pre-order

mitpress.mit.edu

51–60 of 123 posts

Re: SICP: JavaScript Edition available for pre-order

#52

Note to the unaware, both* this version and the classic (Scheme) version are Creative Commons-licensed and freely available online. (*edit: thanks to keithwinstein for enlightening me -- I wrongly thought it was just the one. The publisher's site doesn't advertise this at all!) https://sicp.sourceacademy.org/ (JS version) https://mitpress.mit.edu/sites/default/files/sicp/index.html (1984 classic)

That's wonderful! I was going to ask.

Re: SICP: JavaScript Edition available for pre-order

#53

I have a copy of SICP right next to me, and it's one of my favorite computer science books. I'm not sure how I feel about this javascript edition though...

I was doing some Javascript coding today. A false != x test failed for a zero-valued x; had to make it !==. WTF? I never want false and 0 to be other than different objects. Almost every twist and turn in this language is an imbecillic clusterfuck. I had one instance of a if (foo.bar = 0) typo; no warning from the implementation. Why do we want stupid C mistakes in a higher level language, without the C fixes for the…

Not to minimize these problems but typescript eases a lot of them.

Re: SICP: JavaScript Edition available for pre-order

#54

Earlier quoted context omitted.

I believe they are both CC-licensed. See https://sicp.sourceacademy.org/ A ton of work seems to have gone into this -- they have a meta-circular evaluator in JavaScript (and it's not that much longer than the original Scheme)!

Very respectfully disagree; but long or short, this looks really bad: list("sequence", list(list("constant_declaration", list("name", "size"), list("literal", 2)), list("binary_operator_combination", "*", list("literal", 5), list("name", "size")))) https://sourceacademy.org/sicpjs/4.1.2 ( "4.1.2 Metalinguistic Abstraction / Representing Components" ) This isn't an ideal language for doing this stuff. The Scheme versi…

I know which one I'd rather debug, but which one can a new student get started with faster? They are unlikely to already have a scheme interpreter on their computer.

Re: SICP: JavaScript Edition available for pre-order

#56
post #54

Earlier quoted context omitted.

Very respectfully disagree; but long or short, this looks really bad: list("sequence", list(list("constant_declaration", list("name", "size"), list("literal", 2)), list("binary_operator_combination", "*", list("literal", 5), list("name", "size")))) https://sourceacademy.org/sicpjs/4.1.2 ( "4.1.2 Metalinguistic Abstraction / Representing Components" ) This isn't an ideal language for doing this stuff. The Scheme versi…

I know which one I'd rather debug, but which one can a new student get started with faster? They are unlikely to already have a scheme interpreter on their computer.

It won't take longer than 15 minutes to get racket installed, and that's being extremely conservative. If you can't spend 15 minutes getting setup done, why would you finish a dense book on the theory of computation?

Re: SICP: JavaScript Edition available for pre-order

#58
post #8

First they replace Scheme with Python for their CS classes, and now SICP in JavaScript! Isn't this another portent from Nostradamus about the coming of the end of the world?

It's not the worst thing to happen, but for the love of god, couldn't they have at least chosen an expression oriented language?! Even Ruby for god's sakes would've been better than JS!

Re: SICP: JavaScript Edition available for pre-order

#59
post #5

WHAT? They skipped all the way from Lisp to JS? Why?

JS has always been a LISP in Algol clothing.

Only, you know, without List Processing. And seventeen things that test false. And all numbers being floating-point (except when optimized implementations fudgily pretend that small values are integers). And a switch statement that you have to put into a function in order to get a return value out of it (everything returns a value in Lisp). Maybe it's more of a Scheme in Algol clothing; not everything returns a value in Scheme.

Re: SICP: JavaScript Edition available for pre-order

#60
post #56
post #54

Earlier quoted context omitted.

I know which one I'd rather debug, but which one can a new student get started with faster? They are unlikely to already have a scheme interpreter on their computer.

It won't take longer than 15 minutes to get racket installed, and that's being extremely conservative. If you can't spend 15 minutes getting setup done, why would you finish a dense book on the theory of computation?

No post body was provided.
Post reply on HN