>>19
Okay, so we have growable vectors (with 1/20th of Python's standard library though), streams and sequences look good enough (and yay, generators), for and company seem good enough (I knew about them), and there are real TCO and continuations. I somehow trust the Racket community a bit more, considering it's Scheme, it has the Sussman's seal of approval, it's backed by and used in Universities, and it's full of Satori, except that I don't think they'll manage to make Racket widespread and usable for bread-making (though I wish they did!).
BTW:
A growable vector (gvector) is a mutable sequence whose length can change over time. A gvector also acts as a dictionary (dict? from racket/dict), where the keys are zero-based indexes and the values are the elements of the gvector.
Sounds disturbingly similar to
PHP.
Just kidding.
The only point that makes sense is that you don't like Racket's syntax, but to me it is quite clean and easy to read compared to Clojure's ``explosion in an ASCII factory''.
I alt-tabbed to the Racket manual page I was reading, and saw this right in the middle of my screen:
((any/c) () #:rest list? . ->* . any/c)))
Also, I'd rather take a decent literal dictionary syntax like
{:k v :k2 v2} over
#hash((k . v) (k2 . v2)) .
I suppose I could write some reader macros. I also value generics and polymorphism, and need a powerful array and dictionary library that includes all sorts of operations from splicing multiple elements to scanr. I wonder how long it would take me to turn Racket into what I want over turning Clojure into what I want.