| ▲ | meken 4 hours ago |
| > The biggest downside of Racket is that you can't build up your environment incrementally the way you can with Common Lisp/Sly. When you change anything in your source you reload REPL state from scratch. I don’t quite understand… I’m using Racket in emacs/SLIME and I can eval-last-sexp, regions, etc. |
|
| ▲ | coffeemug 3 hours ago | parent [-] |
| Ah, I'm using racketmode which doesn't support live state buildup (and the builtin GUI doesn't either). What exactly is your setup? SLIME only has a Common Lisp backend, it doesn't support Racket to my knowledge. EDIT: ok with geiser and geiser-racket incremental state buildup works really well. I rescind my objection! |
| |
| ▲ | hencq an hour ago | parent | next [-] | | I think that should work in racket-mode as well. You can easily send individual sexps to the repl and add to the live state. However, one thing that CL does that Racket doesn't do (afaik) is when you change a data type (e.g. alter a struct), it automatically ensures live code uses the new types. In Racket by contrast I have to either carefully go through all affected forms and send them to the repl, or send the whole buffer to the repl. This does make the whole experience feel more static than in CL. | |
| ▲ | meken 3 hours ago | parent | prev | next [-] | | Oh, my mistake. I'm using Spacemacs and it looks like it's just using racket-mode..? https://www.spacemacs.org/layers/+lang/racket/README.html | |
| ▲ | packetlost 3 hours ago | parent | prev [-] | | I'm guessing via swank: https://github.com/mbal/swank-racket |
|