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

Jonathan Cast jonathanccast at fastmail.fm
Wed Jan 14 14:14:50 EST 2009


On Wed, 2009-01-14 at 11:06 -0800, Max Rabkin wrote:
> 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).

Thanks!  When you *know* there's a good reason people say something, and
can't find a good example of *why*, it's a tremendous relief when when
you find one.  Sort of restores your faith in humanity :)

jcc




More information about the Haskell-Cafe mailing list