15 ms·
Every now and then a great movie comes out. Then it gets its American remake. It's been proven you can put Al Pacino, Robert de Niro and Bruce Willis in any mov
by b0rsuk 7y ago
Every now and then a great movie comes out. Then it gets its American remake. It's been proven you can put Al Pacino, Robert de Niro and Bruce Willis in any movie (with predictable results!). This is the book equivalent of an American remake for me.
Is Javascript the new pseudocode? Honestly I'd rather be forced to learn a new language to understand a book than to read the book adapted to JS.
- slimed 7y agoThere is a simple explanation of course. You are not the intended audience. Ditto for the blockbusters you mentioned.
- caiocaiocaio 7y agoThe target audience are people who don't want to learn Lisp but want to write a bunch of Lisp interpreters and compilers. Obviously.
- slimed 7y agoThat's a pretty narrow view of the teachings to be gained from SICP.
- ng12 7y agoThere's a reason SICP isn't called Structure and Interpretation of Lisp Programs. Lisp is incidental.
- caiocaiocaio 7y agoImagine a book where you wrote a bunch of Javascript implementations without learning Javascript.
- edflsafoiewq 7y agoThere is a reason SICP uses Lisp.
- ng12 7y agoThere is. Scheme is a great pedagogical language. The book isn't _about_ Lisp though.
- vanderZwan 7y agoI'm with you. As much as I find most remakes terrible, to say others should not enjoy them is a form of gatekeeping. If people who would otherwise not enjoy any of the insights to be gained from SICP do get into it through this version, great.
- b0rsuk 7y agoI think the target audience is people who don't like to learn, and I find that worrying in the context of programming. It's not like code examples in a book are intentionally obfuscated. They are also not some atrocious pile of spaghetti code you may have to put up with at work. I think any foreign PL programming book is a joy to read next to working as a software maintainer. And while the original book aspires to be a general programming book (the title!), I think we should allow Scheme programmers to have their poster child book/success story. I also have a modest, optimistic interest in Rust, and tinker with it from time to time, but I don't think everything should be converted to Rust. The language team is open about sacrificing readability for other values, like execution speed, memory safety, concurrency, correctness. But with Rust at least the occasional rewriting hype can be justified as "testing the limits of the new language" and "optimizing" - because the language is pretty damn efficient. With Javascript it's... what? Some kind of idealism about running all programs in a browser sandbox? And isn't it a bit ironic that an idealistic book about software architecture is rewritten in an ad-hoc language, with a minefield of bad features you're not supposed to use but you will encounter at work?
- slimed 7y ago> I think the target audience is people who don't like to learn, and I find that worrying in the context of programming. A strange comment to make about someone trying to tackle a text like this > I also have a modest, optimistic interest in Rust, and tinker with it from time to time, but I don't think everything should be converted to Rust. This is a great example of how your perspective differs from that of the intended audience. They don't want the book in JS because it's a language they're already picking up and want to tinker with. It's likely one of the only languages they are confident with. Maybe they just finished their CS degree or (gasp) a coding bootcamp and would like to understand more of the fundamentals before learning their second language. Especially one like LISP that represents an entirely separate branch of programming language design from JavaScript. As someone who writes Clojure professionally, I certainly share your hope they would choose to pick up lisp eventually. Let's not hamper their development in the meantime by steering them away from resources like this that might assist their journey.
- scottoreily 7y agoTypical dramatic Hacker News user. JS is a great language and enjoyed by millions of developers.
- YorickPeterse 7y agoYes, it's such a great language that `{} + []` is a valid program.
- s_y_n_t_a_x 7y agoWhat an extremely weak criticism that has been played out. 1) Don't concatenate them in the first place 2) Use TypeScript Pro-tip, if the world is going JS and you don't get it, it's probably you. With JS (TypeScript) I can develop on every platform natively (React Native). I can compile to native code. (AssemblyScript). I'm not saying you can't do those things on other languages, but JS is becoming a powerhouse thanks to it's ecosystem. Also, you see many other communities like Rust copying lessons learned from web developers (React/Redux/etc)
- caiocaiocaio 7y agoJavascript is such a good language that, even after two decades of fixes, it's only good when you use a different language - specifically created to address JS's many problems - that compiles to it.
- s_y_n_t_a_x 7y agoTypeScript is JavaScript. They follow and contribute to the Ecmascript spec. It pretty much just strips the typing out when "compiling". All the JS problems have been solved in ES6+ There are many languages that have supersets.
- ptx 7y ago> develop on every platform natively (React Native) If "native" means bundling a runtime and having your program pass serialized messages to a different thread where the actual native platform code lives, the same can be said for any language. You just need to build the wrappers for the native API – which is a lot of work but could be done for QBASIC running in DOSBox just as well as for JS running on V8.
- pluto9 7y agoHN's ability to shoehorn a swipe at the USA into almost any topic is really an impressive thing to behold.
- ritchiea 7y agoTo dang and the other moderators, can you think of a way to auto-penalize effectively contentless/empty anti-Javascript comments? Imagine this kind of comment for any other language, C, Python, Ruby, Rust, Scheme whatever. It would be downvoted to death. And yet people still make & upvote these comments about JS despite JS being the most popular language, run on the most devices & having a massive community of people fixing its warts and modernizing JS. There are still valid critiques of JS but they have nothing to do with Al Pacino or Bruce Willis. Please spare us, or if you want to criticize Javascript, learn something about Javascript in 2019 & criticize that.
- bryanrasmussen 7y agoWell since I very much enjoy the first half of SICP I like that I can look at problems I have some familiarity with in a language I use day to day. Anyway, how did you like the Pacino remake of Pippi Longstocking?
- dxbydt 7y agoI just wanted to take 2 minutes to thank you personally for that comment. Honestly its amazing to find another person on this planet who has the exact same reaction to this idea ! I was going to type out what you said pretty much word for word, and then I'm reading what you wrote & I'm like, hey, who's this person who has read my mind & how're they doing that ? For a minute it was like, completely mindblowing. I think most of the comments below are entirely missing the point & thinking of this as JS hatred. Its more about...cultural degradation...Pedestrianization. sicp was holy grail. you looked up to it, you cherished it, it was something few people have partaken of & it was nice that way. then gradually that got diluted over time. berkeley did the python3 gig & that itself was icky but now this is a whole new low. sicp in js ?! jesus. what next ? are we going to sicp in qbasic ? why not a sicp do-over in Visual Basic so all them fogey 90s microsoft-for-life developers! developers! developers! on win95 code up COM DLL interpreters in Notepad++ ? where does the madness end ? sicp & scheme. buttons & bows. mac & cheese. bread & butter. things that go together. Now, sicp & js is...is..what is it ? mustard & jam ? you know what would be real cool ? sicp in J !!! Now that's a marriage made in heaven. if i was a rich vc i would happily fork over a million for a sicp in J effort. the apl family has so much to offer! now that i recall, there was actually an effort called aprol http://www.cs.trinity.edu/~jhowland/aprol.paper.pdf http://www.cs.trinity.edu/~jhowland/aprol.paper.pdf