[Haskell-cafe] Re: What makes Haskell difficult as .NET?

John Creighton johns243a at gmail.com
Sat May 15 15:38:23 EDT 2010


> IIRC .Net interfaces cannot be added outside assembly (I may be wrong).
> On the other hand Haskell does not have inheritance.
>
> Generally
>         Haskell: newtype/data specify data (and type) while classes provides
> basic abstract operations on it.
>         C#/Java/...: Classes specify data AND how to operate on it (including
> non-basic operators) and interfaces abstract operations.
>
> - It is not that it can occur once:
>
> class Abc x where
>         abc :: x -> [x]
>
> is roughly:
>
> interface Abc<in T> {
>         public IList<T> abc();
>
> }
>
> - It seems that it is not possible to have default implementations in
> interfaces.

To understand the extend haskell supports object oriented behavior
such as inheritance it is worth reading:
http://homepages.cwi.nl/~ralf/OOHaskell/paper.pdf

Perhaps, I should start a new discussion on this.


More information about the Haskell-Cafe mailing list