use "basic_models.g"; fun apply where { Regular } ((fun(U)->T@) f, T x) -> T@ { return f(x); } fun three(T x) -> int@ { return 3; } fun main() -> int@ { return apply(three, 0) - 3; }