This is fantastic, Alan; I haven't gotten around to LoL yet, but maybe
I should.
Quoth Alan Malloy on Setting Orange, the 43rd of The Aftermath:
> LoL lets you write:
>
> (with-cxrs
> (blah (foo (bar (cadddar x)
>
> ie, it looks in your source, sees what you need defined, and makes a
> let
Alan Malloy writes:
Hi Alan,
> LoL lets you write:
>
> (with-cxrs
> (blah (foo (bar (cadddar x)
>
> ie, it looks in your source, sees what you need defined, and makes a
> letfn.
Ah, even better. Or well, not better, if you have too many x-es. There
I'd prefer to give shorter names to my
(btw I threw this together just before bed, so it's not perfect. One
thing that's wrong is it assumes (name x) can be called on any x; but
it can't be called on lots of things, like numbers. So you'd need to
filter those out, and also fix a couple other bugs.
On Dec 1, 2:12 am, Alan Malloy wrote:
LoL lets you write:
(with-cxrs
(blah (foo (bar (cadddar x)
ie, it looks in your source, sees what you need defined, and makes a
letfn.
This looked fun, so I banged out an implementation:
(defn cxr-impl [name]
(when-let [op (second (re-matches #"c([ad]+)r" name))]
`(comp ~@(map {\a `
Peter Danenberg writes:
Hi Peter,
> Try as I might, I can't purge these anachronisms; so here are `car' to
> `cr' in all their glory:
>
> http://clojars.org/cadr
Nice. :-)
> This implementation uses a Kleene-closure around the alphabet {a, d}
> to generate the names; and a macro to defin
Try as I might, I can't purge these anachronisms; so here are `car' to
`cr' in all their glory:
http://clojars.org/cadr
This implementation uses a Kleene-closure around the alphabet {a, d}
to generate the names; and a macro to define them:
https://github.com/klutometis/cadr/blob/master/s