You are shadowing a definition, but the old definition doesn't "go away," it 
just becomes impossible to reference.

Do you agree that this is completely unreadable

    fn a = a + 1

    xxx ... = ... many uses of fn ...

         ... and ever more uses of fn...

    fn a = a * 2

    yyy ... = ... many uses of fn ...

         ... and ever more uses of fn...

while this is perfectly ok

    xxx ... = let fn a = a + 1 in ... uses of fn ...

    yyy ... = let fn a = a + 1 in ... uses of fn ...

and this is ever better

    xxx = .... uses of fn
        where
        ... more uses of fn
        fn a = a + 1
        ... ever more uses of fn

    yyy = .... uses of fn
        where
        ... more uses of fn
        fn a = a + 1
        ... ever more uses of fn

?

Vag.

_______________________________________________
Ur mailing list
[email protected]
http://www.impredicative.com/cgi-bin/mailman/listinfo/ur

Reply via email to