Small error in this: It says the latest Scheme version is R6RS, when R7RS-small has been finished for years. Not intending to bring up the R6RS/R7RS debate, just wondering if it was a typo or such.
Yeah I totally forgot about R7RS, I was just trying to compare specification sizes in terms of pages. R7RS is even smaller at 20-somrthing pages, but the point was the two orders of magnitude in page count.
They feel so very different with such different philosophies on when to fail or what functions can work on what data structure.
The only thing they really have in common are where you put the parentheses.
I think you’ll find that Common Lisp or Picolisp are quite a bit closer to Clojure in spirit. Scheme (or Racket) are much more “static” and less sloppy (for lack of a better word) in regards to things like nil-punning, macro hygiene etc.
I’m not sure what is more a “real Lisp”, especially considering Common Lisp is the older of the bunch.
I’ve only recently started programming Clojure (for work), maybe I will write up my own subjective experience in a blog post.
If you write it, please post it. I would be interested to read it.
If you write it, I will read it.
I’ve considered Chicken in the past. If I get tired of Racket, for Advent of Code, at this point I’ll either go Fennel or Chicken. C is my favorite language, but I really enjoy the language facilities Clojure grants, mostly threading and super-convenient maps. Also EDN. EDN is amazing.
w.r.t the lack of package management for Guile, have you looked at akku.scm?
Yeah. And guild hall as well. Akku is the more promising one, but I think the problem is it will take some years it gains the momentum of something like Quicklisp. That’s probably a never though. For Guile I think Guix is the best option since with it you can combine C builds effortlessly, but for scheme in general Akku seems very, very promising.
Huh, I totally forgot to mention in the blog entry that CHICKEN is also a fantastic scheme implementation. Guile is a bit easier on the developer, but if you look close enough, they both are very practical though CHICKEN is more standalone, and I think there are some German companies actually using it in production.
I love CHICKEN as a Scheme implementation. The package manager there feels quite a bit more like Quicklisp than, say, Akku. Gerbil/Gambit is another Scheme I’m fond of, though it lacks the community aspect I associate with CHICKEN.