For that matter I'm not even sure
proc prc2(T: type): T = echo otherParam
Run
is supposed to compile. Your supposed to pass types to procs with the [] syntax
if you want to use them in your parameter list or as a return type. Luckily if
you declare the proc like:
proc prc[A](T: type[A]): A = echo otherParam
Run
you can still call it like
prc(int)
Run
as the A parameter contained within [] will be inferred. One of the nim
developers could probably clear up whether your way of declaring the proc is
supposed to work.