6 ms·
This is the essence of that "This is so cool"-feeling that arises when you first really _get_ programming. And almost makes me want to invest in SICP or someth
by rlm 18y ago
This is the essence of that "This is so cool"-feeling that arises when you first really _get_ programming.
And almost makes me want to invest in SICP or something similar to see what all this LISP-talk is about :)
- lliiffee 18y agoRead the full text online right now: http://mitpress.mit.edu/sicp/full-text/book/book.html http://mitpress.mit.edu/sicp/full-text/book/book.html If you meant an investment of time, then, well yes. But SICP is really, really fun.
- chrisconley 18y agoDon't forget about our Hacker News SICP Book Club too: http://groups.google.com/group/hacker-news-reads-sicp http://groups.google.com/group/hacker-news-reads-sicp
- rlm 18y agoI both meant an investment of time and money :) I don't like reading entire books on the computer. It just feels better on paper ;)
- xenophanes 18y agoI agree about paper books. Does anyone who feels the same have a kindle? Supposedly the screen is more like paper. Wondering how well that works...
- jrockway 18y agoIt is very much like paper. (The display area is smaller than the average hard-cover book, however, but that doesn't bother me too much.) The only thing I don't like about the Kindle is that you can't skim to get an overview of the book or newspaper... you basically have to use the table of contents or read it in order. Not so bad for books, kind of annoying for local news. (The killer feature of the Kindle, though, is the effortless buying feature. When you have to pay $30 and go to the store or wait 5 days for shipping, you tend to not buy books. When you can click a button and start reading on a paper-like screen instantly, it becomes much easier to read all the books that you've been "meaning to" read. But I digress.)
- derefr 18y agoSomeone should really make a hybrid E-Ink/LCD reader. A transparent LCD overlay (with backlight) for skimming, that switches off after you stare at the same page for a few seconds and re-displays the current rendered page on the E-Ink display underneath.
- michael_dorfman 18y ago....and don't forget the SICP video lectures! http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/ http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussma... The best 20-hour introduction to CS you can find, or your money back!
- gamache 18y agoAnd Hal Abelson knows how to give fledgling programmers that Eureka moment in spades. This article mirrors my experiences very closely -- I came into the class Spring 1998 with BASIC and assembly experience, thinking I knew how to program. SICP couldn't be worth any more if it were printed on gold leaf, but having Abelson and Sussman there to teach it really seals the deal.
- coffeemug 18y agoYou know, if you keep learning you will never cease to have this feeling. ?- append([1, 2, 3], [4, 5, 6], X). X = [1, 2, 3, 4, 5, 6]. ?- append([1, 2, 3], X, [1, 2, 3, 4, 5, 6]). X = [4, 5, 6]. ?- append(X, [4, 5, 6], [1, 2, 3, 4, 5, 6]). X = [1, 2, 3]. And the definition of append: append([], X, X). append([X | Y], Z, [X | O]) :- append(Y, Z, O). Magic!
- anatoly 18y agoAh, thank you for rekindling that memory. Prolog, where you just type what you want to achieve, and it goes ahead and does it for you. I really couldn't wrap my head around it for some time. I read up on backtracking and chased around derivations on paper to satisfy myself that something like append really worked.
- Hexstream 18y agoYou mean if one keeps learning after SICP? Bad example, because SICP tells you how to implement exactly this functionality (among other things).
- coffeemug 18y agoIf one keeps learning, dreaming, and building in general. I am just saying that no matter how many amazing things you've discovered, there's always more in store. Just never stop looking.
- moe 18y agoWhat is this snippet supposed to tell me? Looks completely meaningless to me.
- Ezra 18y agoBasically what's going on is this, but with lists: 3 + 5 = X? X = 8 3 + X = 8? X = 5 5 + X = 8? X = 3 In most programming languages, you can't infer a parameter by specifying a result. (Though that's not strictly what's going on here, either) You could further say something like X + Y = 8 and get X = 0, Y = 8 X = 1, Y = 7 etc. for some definitions. Which is, as the OP was getting at, sometimes incredibly useful.
- jjames 18y agoWish there was a way to read this online but The Little Schemer http://www.ccs.neu.edu/home/matthias/BTLS/ http://www.ccs.neu.edu/home/matthias/BTLS/ made the first couple chapters of SICP a little easier for self study.
- discojesus 18y agothere is (sort of); it's available nearly in its entirety on Google Books.