I have been wanting to program in lisp for a good while, but I do not enjoy using Emacs, and Slimv and Vlime haven’t functioned. So, would having Vim in one terminal editing a file and then a REPL in another work?
I have been wanting to program in lisp for a good while, but I do not enjoy using Emacs, and Slimv and Vlime haven’t functioned. So, would having Vim in one terminal editing a file and then a REPL in another work?
So then, what is the “Lisp experience”, and why does everyone want it?
The development of a program is very incremental, immediate, and interactive. The idea of the editor and the program begin to blend. The cycle type between observing program behavior and changing program source is trivialized and almost not even noticeable. In the end it allows you to converge on ideas very, very rapidly. Programming in other languages/environments feels like having asthma.
The problem is that describing this never really makes sense.
Is there a video we can see what this is like? I have looked it up and often the videos are like an hour long and there is more talking than showing.
Here’s a video of live coding a game in CIDER (which is like SLIME for Clojure - another Lisp).
+1 for long talking. My attempt at it: https://www.youtube.com/watch?v=jBBS4FeY7XM 5min, shows how we can restart a running program from any point in the stack trace, without restarting the program from zero.
Some more I recommend: https://www.cliki.net/Lisp Videos
It is difficult to find good demonstration videos. Here is another:
https://www.youtube.com/watch?v=jBBS4FeY7XM
Emacs with Elisp btw. is working alike. So you could experience that “Lisp experience” yourself easily, just by modifying Emacs itself. You can change ca. 99% of it on the fly, redefine whole parts of its functionality without need to restart Emacs. Sometimes that’s not realized. Together with
edebug
, its good in-code documented functions and introspectibility it is a nice programming experience. Sometimes I miss that tight integration with Common Lisp.You’ve seen a couple descriptions in the sibling comments to this one, and it probably sounds like what you feel about python/ruby/whatever. But you really should try lisp with editor integration. Or, try some smalltalk for a lot of the same feel. Smalltalk has better integrated tooling, though I’d argue lisp through swank feels nicer. The common spiel sounds so similar to regular repls, but feels profoundly better in practice. I always thought of languages using repls as toys prior to earning common lisp.