This sounds like a really interesting question. To save some people weeding through the thread and Jon Harrop's usual trolling garbage, here's a description of the problem: [quote] Here's [a]language to to interpret (where postfix * means tupling): Variables: x Integer literals: i Terms: t = Lambda x*. t | Apply t t* | Var(x) | Num(i) We assume usual operational semantics of lambda calculus (i.e. static scoping). The task is to write two interpreters, one with variables x being DeBruijn indices and one with them being names. You should go for maximal sharing, i.e. factor out commonalities into a common class/typeclass/functor/whatever, so that there remains no duplication of code in the two solutions. [/quote] On Mon, May 4, 2009 at 6:05 AM, Paolo Losi <paolo.losi@gmail.com> wrote:
Hi all,
I'm following an interesting thread on the scala mailing list:
http://www.nabble.com/-scala--usefulness-of-OOP-td23268250.html
Martin Odersky advocates the OO features of the scala language proposing an interesting problem where the OO approach seams valuable.
I would be very much interested in seeing an Haskell solution to that problem. Any haskell guru want to take a stub at it or give an opinion from a pure FP point of view?
Thanks Paolo
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe