| > do { a <- getChar
| > ; rec { b <- f c
| > ; c <- g b }
| > ; putChar c
| > ; return b }
| This last point notwithstanding,
| I find the scoping rules very unintuitive!
| (b and c appear to escape their apparently nested scope.)
well you are happy with
do { z <- getChar
; let { b = f c
; c = g b }
; putChar c
; return b }
It's just the same! Perhaps I should mention this in the user manual.
(In haskell 'let' means 'letrec' of course.)
Simon
_______________________________________________
Glasgow-haskell-users mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users