[Haskell-cafe] Type-Level Programming
gcross at phys.washington.edu
Fri Jun 25 22:46:58 EDT 2010
Are any of those compatible with Haskell, so that we could mix code in
that language with Haskell code?
On 6/25/10 9:49 PM, wren ng thornton wrote:
> Jason Dagit wrote:
>> On Fri, Jun 25, 2010 at 2:26 PM, Walt Rorie-Baety
>> <black.meph at gmail.com>wrote:
>>> I've noticed over the - okay, over the months - that some folks
>>> enjoy the
>>> puzzle-like qualities of programming in the type system (poor Oleg,
>>> become #haskell's answer to the "Chuck Norris" meme commonly
>>> encountered in
>>> Anyway,... are there any languages out there whose term-level
>>> resembles Haskell type-level programming, and if so, would a deliberate
>>> effort to appeal to that resemblance be an advantage (leaving out
>>> for now
>>> the hair-pulling effort that such a change would entail)?
>> I'm not a prolog programmer, but I've heard that using type classes
>> to do
>> your computations leads to code that resembles prolog.
> Indeed. If you like the look of Haskell's type-level programming, you
> should look at logic programming languages based on Prolog. Datalog
> gives a well understood fragment of Prolog. ECLiPSe extends Prolog
> with constraint programming. Mercury, lambda-Prolog, and Dyna
> give a more modern take on the paradigm.
> If you're just a fan of logic variables and want something more
> Haskell-like, there is Curry. In a similar vein there's also
> AliceML which gives a nice futures/concurrency story to ML. AliceML
> started out on the same VM as Mozart/Oz, which has similar futures,
> though a different overall programming style.
> And, as Jason said, if you're just interested in having the same
> programming style at both term and type levels, then you should look
> into dependently typed languages. Agda is the most Haskell-like,
> Epigram draws heavily from the Haskell community, and Coq comes more
> from the ML tradition. There's a menagerie of others too, once you
> start looking.
>  http://eclipse-clp.org/ is currently down, but can be accessed at
>  http://www.mercury.csse.unimelb.edu.au/
>  http://www.lix.polytechnique.fr/~dale/lProlog/
>  http://www-ps.informatik.uni-kiel.de/currywiki/
>  http://www.ps.uni-saarland.de/alice/
>  http://www.mozart-oz.org/
More information about the Haskell-Cafe