Function template arguments of non-type sort

Run Settings
LanguageATS
Language Version
Run Command
#include "share/atspre_staload.hats" datasort tlist = tnil | tcons of (t0ype, tlist) extern fun {t:tlist} foo(): void extern fun {a:t0ype} foo$fopr(): void implement foo<tnil>() = () implement(a,ts) foo<tcons(a,ts)>() = { val () = foo$fopr<a>() val () = foo<ts>() val () = ignoret (1) } implement main0 () = let implement foo$fopr<int>() = println!("int") implement foo$fopr<string>() = println!("string") implement foo$fopr<bool>() = println!("bool") val () = println!("test 1: should print int, string") val () = foo<tcons(int, tcons(string, tnil))>() val () = println!("test 2: should print bool, int") val () = foo<tcons(bool, tcons(int, tnil))>() in end
Editor Settings
Theme
Key bindings
Full width
Lines