On Jan 31, 2008, at 7:40 AM, Ed Watkeys wrote:
A couple candidates:
* Collections are functions.
* Automatic composition and negation of functions.
E.g. foo:~bar ==> (fn (x) (foo (no (bar x))))
* Really? It's not just an eval hack?
I haven't looked yet, but I assumed arc's eval just did something like:
...
(cond
((string? (car form)) (string-ref (car form) (cadr form)))
((list? (car form)) (list-ref (car form) (cadr form))) ...
arc> (type '(1 2 3)) => cons
arc> (type "1 2 3")) => string
Slicing doesn't appear to work. i.e. you can't say ("andrew" 1 3) and expect to get back "ndr", or even "nd" if the second argument isn't a count...
* It's pretty sweet, but it may be strengthening the Perl argument.
It may be a bit too much magic, though I really have to say, it's
a rad idea.
Can't wait to see the first non-mzscheme requiring arc interpreter. I give it a few days.