$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: Re: [boost] De Bruijn Bind (alternate bind syntax) Interest?
From: Larry Evans (cppljevans_at_[hidden])
Date: 2010-09-02 13:24:37
On 09/02/10 10:57, David Sankel wrote:
> Hello all,
>
> I've been working on an alternate bind syntax based on De Bruijn indices[1].
> The syntax is very simple, yet the terms are very powerful.
>
> Here is an example of a function const that takes in an argument c and
> returns another function that, for all input, returns c:
>
> //λx.λy.x = λλ1 with De Bruijn indices.
> auto const_ = abs<1>( abs<1>( var<1,0>() ) );
>
> More examples, further explanation, and an implementation are available
> here[2].
>
> I'm thinking that this library could also be useful as a core for more
> syntax heavy bind variations.
>
> David
>
> [1] http://en.wikipedia.org/wiki/De_Bruijn_index
> [2] http://bitbucket.org/camior/de-bruijn-bind/
>
I would be very interested. I had been thinking along those
same lines. IIRC, I've also seen some haskell code that does
that. Here it is:
http://www.comlab.ox.ac.uk/richard.bird/online/BirdPaterson99DeBruijn.pdf
Might be interesting to try this using functors and monads and other
category theory tools.