Hello, Le 22 mars 2012 10:51, Roberto Di Cosmo a écrit : > val length : ('a1, 'b) l -> int = > > Why do we get 'a1, and not 'a, in the type? > > Well, probably, since 'a is instantiated to int during > type checking, it may be the case that 'a, as type name, is > still marked as taken during the type output, so we get ('a1,'b) > > The type is perfectly sound... it is just 'surprising' for > a regular user... do you think this should be considered a bug? > IMHO it is not a bug (as you said, the type is sound), but you could write a feature request like "generate variable name as best as possible"... -- Julien