On 2/24/06, Bulat Ziganshin <[EMAIL PROTECTED]> wrote: > Hello Lemmih, > > Friday, February 24, 2006, 1:15:51 PM, you wrote: > > >> clean differs from Haskell in support of unique types and strictness > >> annotations. the last is slowly migrates into GHC in form of shebang > >> patters, but i think that it is a half-solution. i mentioned in > >> original letter my proposals to add strictness annotations to > >> function types declarations and to declare strict datastructures, such > >> as "![Int]" > > L> As I've understood it, Clean's strictness annotations are a bit of a > L> hack which only works on certain built-in types. Am I mistaking here? > > i don't know Clean very well, although i've seen rumors that it > supports strict datastructures. after all, this don't need changes in > language itself, it's just a syntax sugar: > > data [a] = [] | a:[a] > x :: ![Int] > > translates to the > > data StrictList a = Nil | Cons a !(StrictList a) > x :: !(StrictList a)
Let's try this: x :: ![Int] -> Int It would translate to something like this: mkStrictList :: [a] -> StrictList a x = xStrict . mkStrictList xStrict = ... Wouldn't it be very expensive to strictify the list? -- Friendly, Lemmih _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users