'type' declarations

Iavor Diatchki iavor.diatchki at gmail.com
Wed Feb 16 20:27:03 EST 2005


hello,
ghc seems to be having trouble with 'type' declarations.
while compiling (i guess kind checking is the correct word here) 
the following program for a very long time, ghc (6.2) runs out of 300Mb of heap.

module Test where

type S          = Maybe
type S2 n       = S  (S  n)
type S4 n       = S2 (S2 n)
type S8 n       = S4 (S4 n)
type S16 n      = S8 (S8 n)
type S32 n      = S16 (S16 n)

type N64 n      = S32 (S32 n)

type N64'       =
  S ( S ( S ( S ( S ( S ( S ( S (
  S ( S ( S ( S ( S ( S ( S ( S (
  S ( S ( S ( S ( S ( S ( S ( S (
  S ( S ( S ( S ( S ( S ( S ( S (
  S ( S ( S ( S ( S ( S ( S ( S (
  S ( S ( S ( S ( S ( S ( S ( S (
  S ( S ( S ( S ( S ( S ( S ( S (
  S ( S ( S ( S ( S ( S ( S ( S (
  Int
  ))))))))
  ))))))))
  ))))))))
  ))))))))
  ))))))))
  ))))))))
  ))))))))
  ))))))))

if i remove the N64 definition things work.  i guess something
exponential is happening
(substitution?).

-iavor



More information about the Glasgow-haskell-bugs mailing list