[Haskell-cafe] Is Curry alive?
wren ng thornton
wren at freegeek.org
Thu Nov 4 01:07:44 EDT 2010
On 11/3/10 12:34 AM, Gregory Crosswhite wrote:
> On 11/2/10 8:37 PM, wren ng thornton wrote:
>> Though I would suggest you look at the LogicT library instead of using
>> actual lists... Also, you may be interested in reading the LogicT
>> paper or this paper about search combinators in Haskell. Both
>> offer a number of optimizations you should be aware of.
> I considered it, but wasn't there discussion recently about how LogicT
> is a lot slower than the list monad?
In my experience it's always been faster. Though, of course, it will
depend on the shape of your programs. If you need things like fair
interleaving, do note that it's quite hard to get right and LogicT has
already done the work for you--- both for Logic/LogicT and , so even
if you do use lists you may still want to use the logict package.
Besides, it's simple enough to just use the MonadLogic class and switch
between concrete types, if you need to test performance.
More information about the Haskell-Cafe