Re: [Haskell-cafe] Haskell type system and Barendregt's Lambda Cube classification

2009-12-26 Thread Vladimir Ivanov
Thanks for the thorough answer, Dan. That's exactly what I was looking for. During further search, I stumbled on an excellent introductory description of recursive types in a draft of Robert Harper's book Programming Languages: Theory and Practice http://www.cs.cmu.edu/~rwh/plbook/book.pdf -- vi

[Haskell-cafe] Haskell type system and Barendregt's Lambda Cube classification

2009-12-25 Thread Vladimir Ivanov
Dear All, Recently, I've been playing with self-application and fixed-point combinators definition in Haskell. It is possible to type them in Haskell using recursive types. I took Y U combinators: newtype Rec a = In { out :: Rec a - a } u :: Rec a - a u x = out x x y :: (a - a) - a y f

[Haskell-cafe] Haskell type system and Barendregt's Lambda Cube classification

2009-12-25 Thread Vladimir Ivanov
Dear All, Recently, I've been playing with self-application and fixed-point combinators definition in Haskell. It is possible to type them in Haskell using recursive types. I took Y U combinators: newtype Rec a = In { out :: Rec a - a } u :: Rec a - a u x = out x x y :: (a - a) - a y f

Re: [Haskell-cafe] Haskell type system and Barendregt's Lambda Cube classification

2009-12-25 Thread Dan Doel
On Friday 25 December 2009 11:35:38 am Vladimir Ivanov wrote: Dear All, Recently, I've been playing with self-application and fixed-point combinators definition in Haskell. It is possible to type them in Haskell using recursive types. I took Y U combinators: newtype Rec a = In { out

Re: [Haskell-cafe] Haskell type system and the lambda cube

2009-05-25 Thread Brent Yorgey
On Sun, May 24, 2009 at 10:39:50AM +0200, Petr Pudlak wrote: On Sun, May 24, 2009 at 12:18:40PM +0400, Eugene Kirpichov wrote: Haskell has terms depending on types (polymorphic terms) and types depending on types (type families?), but no dependent types. But how about undecidability? I'd

Re: [Haskell-cafe] Haskell type system and the lambda cube

2009-05-25 Thread Lennart Augustsson
Type checking is decidable for all of the lambda cube, but not type inference. Haskell 98 is a subset of Fw, Haskell with extensions is an superset of Fw. -- Lennart On Mon, May 25, 2009 at 12:59 PM, Brent Yorgey byor...@seas.upenn.edu wrote: On Sun, May 24, 2009 at 10:39:50AM +0200, Petr

Re: [Haskell-cafe] Haskell type system and the lambda cube

2009-05-25 Thread wren ng thornton
vo...@tcs.inf.tu-dresden.de wrote: 2009/5/24 Petr Pudlak d...@pudlak.name: If all Haskell had would be HM, it would be System F. That cannot be quite right, can it? System F has more powerful polymorphism than HM. As I recall HM is along the edge to \lambda^2. Haskell 98 is typically

[Haskell-cafe] Haskell type system and the lambda cube

2009-05-24 Thread Petr Pudlak
Hi, I'm trying to get some better understanding of the theoretical foundations behind Haskell. I wonder, where exactly does Haskell type system fit within the lambda cube? http://en.wikipedia.org/wiki/Lambda_cube I guess it could also vary depending on what extensions are turned on. Thanks,

Re: [Haskell-cafe] Haskell type system and the lambda cube

2009-05-24 Thread Eugene Kirpichov
Haskell has terms depending on types (polymorphic terms) and types depending on types (type families?), but no dependent types. 2009/5/24 Petr Pudlak d...@pudlak.name: Hi, I'm trying to get some better understanding of the theoretical foundations behind Haskell. I wonder, where exactly does

Re: [Haskell-cafe] Haskell type system and the lambda cube

2009-05-24 Thread Petr Pudlak
On Sun, May 24, 2009 at 12:18:40PM +0400, Eugene Kirpichov wrote: Haskell has terms depending on types (polymorphic terms) and types depending on types (type families?), but no dependent types. But how about undecidability? I'd say that lambda2 or lambda-omega have undecidable type checking,

Re: [Haskell-cafe] Haskell type system and the lambda cube

2009-05-24 Thread Eugene Kirpichov
2009/5/24 Petr Pudlak d...@pudlak.name: On Sun, May 24, 2009 at 12:18:40PM +0400, Eugene Kirpichov wrote: Haskell has terms depending on types (polymorphic terms) and types depending on types (type families?), but no dependent types. But how about undecidability? I'd say that lambda2 or

Re: [Haskell-cafe] Haskell type system and the lambda cube

2009-05-24 Thread voigt
2009/5/24 Petr Pudlak d...@pudlak.name: If all Haskell had would be HM, it would be System F. That cannot be quite right, can it? System F has more powerful polymorphism than HM. Ciao, Janis. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org