FooBar: module { PATH: con "/dis/lib/foobar.dis"; PATH1: con "foobar.dis"; Foo: adt { kick: fn(me: ref Foo); }; Bar: adt[T] { butt: T; kick: fn[U](me: ref Bar[U]) for { U => kick: fn(me: U); }; }; };