|
|
|
|
|
by seivadmas
4234 days ago
|
|
If you want to find the 'magic moment' try 'The Little Schemer' by Friedman and Felleisen. I'm on my third read of it. The first time I tried to implement all the exercises in Ruby and failed around chapter 7 when the language ran out of expressive power. The second time round I implemented it in Javascript and got to chapter 9 before the syntax became too much of an obstruction to seeing what the code was doing (the good parts of Javascript are actually quite similar to Scheme in some ways but the syntax is just horrible). This third time round I am implementing it in the language it was actually written in, Scheme. And having tried it with two other languages I can suddenly see why LISP is so suited for certain types of problems. My 'magic moment' came when I finally grokked how the Y combinator works. It was like since I started learning how to code 4 years ago I had been continuously trying and failing to get two mirrors to line up perfectly so the images went off into infinity, and suddenly I got it just right and caught a glimpse of the wonderful self-referential simplicity of the entire of computation. I use Ruby in my daily work but I want to start using more Clojure. There is a mathematical purity to LISP that other languages don't have. It's like the whole language itself IS the fixed point function for humans interacting with computers. |
|