GNU Artanis: A web framework for Guile Scheme
groups.google.com
groups.google.com
Nothing. But Schemers just passionately hate it since the 70s because it doesnt enforce their religious dogmas like recursion, continuations, unusable macros, and other similarly silly pretexts.
The fact that the GNU extension language became a Scheme instead of a Lisp is primarily a very personal decision by Richard Stallman. Early Lisp Machine companies like Symbolics refused to copyleft their stuff, so RMS started to hate them with a passion.
So even as he was a Lisp fan early on, which can be seen in Emacs, he for political reasons switched the GNU projet to Scheme, even as the GNU project had no working Scheme implementations but had two Lisp implementations (CLisp and GCL).
So to answer your question: Nothing is wrong with Lisp, but the dear leader hates it, because the Symbolics guys were meanies when he was 25 yrs old.
Wikipedia names continuations, tail recursion in the standard, hygienic macros and a shared namespace for variables and procedures as defining differences between Common Lisp and Scheme.
* Chicken has always been free, with almost all of its
library BSD-licensed, whereas CL used to be expensive.
* Chicken has had a really good packaging story (eggs) for
a long time, whereas QuickLisp is new
* Chicken has always been able to produce static binaries,
which, as the Go aficionados will tell you, makes deployment
really awesome.
If you prefer SBCL, good for you. There was a post fairly recently about how CL's library situation is becoming awesome, and I hope that continues.Free CL from day zero: CMUCL. CMUCL originates in Spice Lisp (1980), from before Common Lisp. CMUCL has spawned commercial and free variants (SBCL). Free: CLISP, 1987. Free: GCL, 1994.
Still, Chicken Scheme is great! Though I prefer CL.
By the way, Guile 2.1.1 has just been released, with a rebranded website: http://www.gnu.org/software/guile/
And it looked pretty unstable to me. He is using `script` instead of `sh` in the makefile. And then `guile examples/blog.scm` throws various errors: "Seems the conn-pool wasn't well initialized!"
Looks like I need to play a lot more with the configuration. But I like the backtrace.
You may need to modify blog.scm to specify your DB passwd to make it work. I'll write a tutorial to show how to play it like Rails/Django.
Artanis is still young, but anyway, we are on the way.
The core of Racket, its syntax and basic constructs, is basically the small and elegant Scheme we all known and love. What set Racket apart is all of the additional features that was built around that tiny core (its own OO system, for example), as well as a huge standard library.
The portable lib SLIB (a Scheme library that works across many Scheme implementation) also provides a lot of useful things for web development (html generation, database management, etc.).