This book is filled with pompous statements and philosophical discussions. Who cares? No one. Instead of teaching really useful things, such as algorithms, or tecnhiques, the text spends huge amounts of space on pointless philosophical discussions.
For example, when assignments are introduced...(e.g. x = x + 1), the authors take up a boring discussion about the conceptual difficulties and implications this introduces into the language. Again, who cares?
Millions of lines of code are written in C every year and everything works just fine. You can tell from the book's preface that the aim isn't to teach you programming, but instead to philosophise about conceptual issues...whatever that means. In other words, this text belongs more in a philosophy course than in a computer science course. There's more talk here, and less real action. It supposedly teaches you how to think about programming, but that is already accomplished by C courses, which teach objects and functions.
Aside from that, it does a decent job of introducing Scheme. But here again, that language is strongly tied to the book's philosophy. It is nearly impossible to write anything useful in the language, as it's designed to demonstrate some finer points of reasoning about computer science, and is not designed as a practical programming language.
If you are looking to learn practical skills, don't get this book, it'll only waste your time. If you are interested in "philosophy of programming" mumbo jumbo, you might like this book. Although, I should warn you, the text pretends to teach both things, but does neither well.
This is pure "programming for its own sake" type of text. If you like that, fine, but if you want to program for the sake of accomplishing something useful, there are only a handful of sections in this book that discuss anything of relevance and you'll just waste your money.
>>/amazon/
>>55471135
Great review OP. Now get the fuck out and come back when you have some memes.
This book was written to sort out the 1st year CS students at MIT, it's nothing philosophical.
>>55471135
>boring discussion about the conceptual difficulties and implications this introduces into the language
How is this a bad thing? Sounds like you have all the ambition of a code monkey, not that there's anything wrong with that...
Also HTDP is more up to date anyway
I barely remember its specific contents from when I went through it. All I remember about it now is that it was a fun book of mathematical puzzles. Did anyone read it expecting anything else?
>>55471135
>confuses CS — a field of applied mathematics — with software engineering
Stay pleb
>>55472590
this
>>55472590
>>55472657
>replying to yourself
>>55472684
Dumbass.
Using a tool without understanding how that tool works makes you nothing more than a monkey with a hammer.
>>55472707
Nice inspect element skills :-)
>>55472707
not the mad guy senpai, but what app? looks like it'd fit nicely on my Galaxy Tab
>>55471135
>Aside from that, it does a decent job of introducing Scheme. But here again, that language is strongly tied to the book's philosophy. It is nearly impossible to write anything useful in the language, as it's designed to demonstrate some finer points of reasoning about computer science, and is not designed as a practical programming language.
Is this true?
I write Common Lisp and Clojure, but don't know Scheme. I always thought of it kinda like what would happen if those two languages had a kid.
>>55471135
>I don't understand, therefore it's useless
>>55471135
>hur durr this book doesn't teach you how to make a game
>>55474686
Lisp itself is not a language, but more like a concept of what a language could be. Scheme, CL, and Clojure are three Lisp languages, with the third being the new kid on the block. Scheme and CL represent two development theories for Lisp: Scheme tries to stay lightweight and simple at the language level, while CL tries to be useful and therefore bloaty. Because of this, Scheme has gotten a reputation as a "teaching language."
As for OP's blather, I'd reiterate that "practicality" is itself a meme. If you don't understand what you're doing or why, then you can never have ambitions beyond the moment.
>>55474928
I figured. Minimalist languages don't really mean that you can't really use them for practical uses so long they are turing complete. Scheme just looked like a more functional Common Lisp with less functions, and a few neat features that CL didn't have. Which is why I thought somewhere between Clojure and CL.
Writing between Clojure and CL, I can say that Clojure definitely feels WAY more functional than Common Lisp ever was. (Though functional wasn't ever Common Lisp's goal, it's just a good practice.)
>>55474659
Clover, just changed the theme :D
>>55471135
>Who cares? No one.
exactly
>>55472590
the job market often has trouble with making that distinction unless you're coming out of MIT desu
>>55474468
Is that even possible on a phone?
So you didn't like it. Okay. Post about it in your blog.
>Millions of lines of code are written in C every year and everything works just fine
AHAHAHAHAHAHA you clearly know nothing
>the aim isn't to teach you programming, but instead to philosophise about conceptual issues.
this much is true.
>C courses, which teach objects
I hope you don't mean objects as in OOP. But if you do, please buy a rope
>This is pure "programming for its own sake" type of text.
also true.
To be honest, I'm not an applications programmer, and so I don't use lisp or any or that jazz even though I know my share of Common Lisp.
But I really dislike how smug lispers can get, always complaining about how everything is sooo wrong about computers, simply because their precious lisp machines don't exist. I understand some of the things they complain about but they rarely care about doing something about it, and rather keep using unix and complaining how bad unix is.
For real. It's okay that Common Lisp lets them think in terms of higher level concepts and whatever, but why shit on every other language? As a system administrator I am more interested in languages like perl that let me do my job rather than on fancy macros to show around how advanced my language is
>>55471135
nice meme
>>55478688
>But I really dislike how smug lispers can get
Yeah, we do get pretty bad sometimes.
You should see the talk of Lisp on Usenet. Basically any hint of implementing something in another language will be met with essays about why you shouldn't. Particularly by the likes of pjb. (Kinda like what happens if you try to post PHP some places)
#lisp is better, but honestly? I think the best Lisp group was here when we used to have Lisp generals and /r/lisp on Reddit. I think the stereotypical smug Lisp weenies avoid Reddit and this place like a plague, and that made them pretty alright.
#emacs is pretty chill too and has a lot of Lispers. Actually, I love that room, probably one of the best places on Freenode.
>>55471135
>discussion about the conceptual difficulties and implications this introduces into the language. Again, who cares?
People who want to git gud.
>>55471135
lol you copied my post on /prog/
>>55471135
>the aim isn't to teach you programming, but instead to philosophise about conceptual issues
the aim is to teach you the fundamentals of computation.
it's to make you a wizard in computation instead of a codemonkey tradie.
>>55472707
>needing to prove yourself to people on the internet
you thought it was any different?
>>55471135
>It is nearly impossible to write anything useful in the language
confirmed bait