> The first definition is just a complicated way to write the second one.

Huh. Looks like you're right: 
    
    
    proc test(T: typedesc): proc(x: T) =
      (proc(x: T) = echo x)
    
    test(string)("foo")
    

Never occurred to me that you can use it this way.

> I find consistency far more important (Haskell changed my mind quite a bit).

Then you should be disturbed by the fact that Haskell's type system corresponds 
to an inconsistent logic. ;^)

Reply via email to