[Haskell-cafe] some ideas for Haskell', from Python

Max Rabkin max.rabkin at gmail.com
Wed Jan 14 14:06:26 EST 2009


On Wed, Jan 14, 2009 at 10:48 AM, Jonathan Cast
<jonathanccast at fastmail.fm> wrote:
> Do you have an example of
> a macro that can't be replaced by higher-order functions and laziness?

I believe I do: one macro I found useful when writing a web app in
Lisp was something I called hash-bind, which binds variables to the
values in a hashtable, with the variable names as keys. For example:

(hash-bind (a b) hashtable body)
==
(let
    ((a (lookup hashtable "a"))
     (b (lookup hashtable "b"))
    body)

I found this very useful in places where I was given URL request
parameters in a hashtable and wanted to extract some variables from
it. I don't believe it can be replaced by a higher order function
(though I may be wrong).

--Max


More information about the Haskell-Cafe mailing list