There's actually a silly little problem I am wondering about. What's the semantics of a list of type (?t => list t), or rather, list (?t => t). Is it: A, a list of values of an unknown type t, or B: a list of values each of unknown types. I need B, of course.
Meanwhile, I am writing also on the documentation generator which is supposed to be part of the compiler. I got it partly right, then wrong, now right in the last -cough- couple of years.