fun Ġ(@ [ a ] ĠT < T >. ( A < B >) Ġ-> ĠUnit ). foo () Ċ fun Ġ(@ [ a ] ĠT < T >. ( A < B >) Ġ-> Ġ ĠC < D , ĠE >). foo (); Ċ fun Ġ@ [ a ] Ġ(@ [ a ] ĠT < T >. ( A < B >) Ġ-> ĠR ). foo () Ġ{} Ċ fun Ġ< A , ĠB > Ġ@ [ a ] Ġ(( B .( A Ġ-> B )) Ġ-> ĠUnit ). foo () Ċ fun Ġ< A , ĠB > Ġ@ [ a ] Ġ(( A , ĠB ) Ġ-> ĠUnit ). foo () Ċ fun Ġ(( T ) Ġ-> ĠG )?. foo () Ċ fun Ġ(( T ) Ġ-> ĠG )? ?. foo () Ċ Ċ // -------------- Ċ fun Ġ< T > Ġf () Ċ a . b Ġclass ĠC