[Haskell-cafe] Wikipedia on first-class object
jerzy.karczmarczuk at info.unicaen.fr
jerzy.karczmarczuk at info.unicaen.fr
Sun Jan 6 17:28:32 EST 2008
Derek Elkins writes:
> Jonathan Cast wrote:
>> I find the only
>> similarity between Haskell and Prolog to be that neither is imperative.
>
> Indeed, you've discovered it. The definition of "declarative" is often
> "not imperative."
I disagree. Practically. (I won't discuss doctrinal matter nor linguistic
hairsplitting).
The relational syntax of Prolog is more "universal" than the functional
notation, since you have logic variables and logical-non-determinism, and
- thus - the possibility of making predicates where the roles of input and
output parameters are not pre-assigned, -
- but there is a *strong* (meaning important) functional layer within,
and plenty of Prolog algorithms are expressed similarly in Lisp or in
Haskell.
Many non-deterministic ones have natural translation into the List monad.
Some "circular" definitions using laziness are related to ones with
non-instantiated logical variables.
If you don't want to see similarities, you won't. But I assure you that
I have profited enormously from tha *affinities* between functional and
logic approaches, and you won't convince me that "declarative" is without
substance.
Jerzy Karczmarczuk
More information about the Haskell-Cafe
mailing list