for non-built in it would be nicer to have that func f int -> any.. unfolds to func f int -> list any and that the compiler wraps calls to f 1 a b c to f 1 [a, b, c].
an extra goody could be a type anyt that expands to pair string any and where the string component is filled in by the compiler with the type of the argument as known at compile time. Maybe one would prefer an actual ast so that list int is presented as tapp (tconst "list") (tconst "int") or tapp "list" [tapp "int" []].
for non-built in it would be nicer to have that
func f int -> any..unfolds tofunc f int -> list anyand that the compiler wraps calls tof 1 a b ctof 1 [a, b, c].an extra goody could be a type
anytthat expands topair string anyand where the string component is filled in by the compiler with the type of the argument as known at compile time. Maybe one would prefer an actual ast so thatlist intis presented astapp (tconst "list") (tconst "int")ortapp "list" [tapp "int" []].