Chicken Scheme looks mighty fine
lenz.unl.edu
lenz.unl.edu
Moritz from the Chicken community recently published a Mongrel2 egg as well (http://wiki.call-cc.org/eggref/4/mongrel2)
As a newcomer, there are just so many implementations to choose from, even when I restrict myself to choosing ones that can compile to C. Racket, Chicken, Gambit, Bigloo. They all look good on paper, and all feel the same (to me) when trying them out. What sets Chicken apart from the rest?
(FWIW, my research is leading me towards Chicken, but I've got that nagging voice in my head wondering if it's the right choice)
While I set out at first to disprove the axiom that "Scheme is not commercially viable;" Chicken is now my preferred method of writing performant, robust and literate code.
A few things that really came in handy: XML ↔ S-expression equivalence (for writing functional XML parsers); code-data unification (for structurally composing documents); arbitrary precision arithmetic; etc.
[1] http://en.wikipedia.org/wiki/Psychological_Operations_(Unite...
My projects usually evolve from a TODO file with source-code fragments for subproblems; then, by a process of conjugation, the fragments are tangled into viable products.
The TODO captures the evolution of the project, and follows the trajectory of eventually accepted or rejected ideas.
Do the contracts specify any language requirements, considering the organization may eventually maintain the old themselves.
And, in your experience, do any military projects still require Ada? :)
They did; and, in some cases, I risked losing my job by writing in Scheme. I eventually prevailed, however; and, in one case, converted a Python shop.
> And, in your experience, do any military projects still require Ada?
Java more than Ada, in my experience; but I wonder if Ada's niche isn't aviation and other real-time systems.
http://wiki.call-cc.org/chicken-projects/egg-index-4.html#ob...
Also, for a nice intro, try "chicken for programmers of <x>":
http://wiki.call-cc.org/chicken-for-programmers-of-other-lan...