5 ms·
Lisp was developed because McCarthy needed a tool for experimenting with AI. Found a video of McCarthy talking about AI: https://www.youtube.com/watch?v=Ozipf13
by kluck 10y ago
Lisp was developed because McCarthy needed a tool for experimenting with AI. Found a video of McCarthy talking about AI: https://www.youtube.com/watch?v=Ozipf13jRr4 https://www.youtube.com/watch?v=Ozipf13jRr4
And if anyone cares, here is nice Shirt with McCarthy on it ;)
https://www.teepublic.com/t-shirt/666689-john-mccarthy-lisp-man https://www.teepublic.com/t-shirt/666689-john-mccarthy-lisp-...
I think it should be mandatory for CS students to implement their own little Lisp using the building blocks McCarthy described! Instead they are learning Java and ist crappy OO...
- lolive 10y agoIs there a kind of walkthrough/tutorial about how to develop a little Lisp interpreter? That sounds like a fun experiment. PS: Sorry, I am a Java OO developper. But I like to learn :)
- kriro 10y agoThere's this classic by Peter Norvig (of AI a Modern Approach fame) about wrting a Lisp in Python...which also happens to have an amazing title :D http://norvig.com/lispy.html http://norvig.com/lispy.html Edit: He also links to his Scheme interpreter in Java in that article: http://norvig.com/jscheme.html http://norvig.com/jscheme.html
- kornakiewicz 10y agoFor example: http://www.buildyourownlisp.com/ http://www.buildyourownlisp.com/ But there's plenty more.
- agumonkey 10y agoAnother one https://github.com/kanaka/mal https://github.com/kanaka/mal (quite famous AFAIK)
- coldtea 10y ago>Is there a kind of walkthrough/tutorial about how to develop a little Lisp interpreter? At least as many as there are TODO app examples for web frameworks...
- pjmlp 10y agoYes, this quite good book, "Lisp in Small Pieces" https://www.amazon.com/Lisp-Small-Pieces-Christian-Queinnec/dp/0521545668/ref=pd_rhf_dp_s_cp_3?_encoding=UTF8&pd_rd_i=0521545668&pd_rd_r=YM5VENWTAZJVESD5NFR3&pd_rd_w=oRQlB&pd_rd_wg=s7HjI&psc=1&refRID=YM5VENWTAZJVESD5NFR3 https://www.amazon.com/Lisp-Small-Pieces-Christian-Queinnec/...
- wolfgang42 10y agoWhat I did was follow Paul Graham's Roots of Lisp[1]. He lays out in simple terms the basic operations, all I did was copy his examples into unit tests and then write code until the tests passed. I didn't even bother writing a parser, I just used JS expressions like this: [natives.label, factorial, [natives.lambda, [n], [natives.cond, [ [natives.eq, n, 0], 1 ], [ true, [natives.times, n, [factorial, [natives.plus, n, -1]]] ] ]] ] It took me about 5 hours to get the whole think working from his paper, and I learned a lot in the process.
- yosbelms 10y agoI've made a Lisp that compiles to Ramda.js, the source code is simple, http://github.com/yosbelms/ramdascript http://github.com/yosbelms/ramdascript
- amyjess 10y agohttps://danthedev.com/2015/09/09/lisp-in-your-language https://danthedev.com/2015/09/09/lisp-in-your-language A Lisp implemented through JavaScript arrays.
- agumonkey 10y agoWhile ML was the meta language for a theorem prover. Funny how these were side effects.
- lmm 10y agoIf there's one thing I've learned from programming it's that to build anything good you have to be driven by real use cases.
- agumonkey 10y agoJust like nature.
- Nekorosu 10y agoIt's not clear if your comment approves or disapproves the one you've commented.
- lmm 10y agoIt's not clear to me whether the comment I replied to viewed this as a good or a bad thing (all it said was "funny how..."), so I can't say whether I approve or disapprove. Hopefully it's clear where I stand though.
- lispm 10y agoAnd ML was originally written in Lisp. https://github.com/theoremprover-museum/LCF77/tree/master/src https://github.com/theoremprover-museum/LCF77/tree/master/sr... https://github.com/theoremprover-museum/HOL88/tree/master/src/lisp https://github.com/theoremprover-museum/HOL88/tree/master/sr...
- panic 10y agoI think it should be mandatory for CS students to implement their own little Lisp using the building blocks McCarthy described! That used to be part of the intro course at MIT and Berkeley, but they've since switched to Python: https://web.archive.org/web/20091209071455/http://danweinreb.org/blog/why-did-mit-switch-from-scheme-to-python https://web.archive.org/web/20091209071455/http://danweinreb...
- mypalmike 10y ago> Java and ist crappy OO * There are those for whom writing an AST acting on lists of lists of lists comes naturally. They have Lisp. For us idiots who model things in terms of state and behavior, and who prefer to let the compiler do the hard work of figuring out an AST representing our ugly, step-by-step solution, there is "crappy OO".