// Ġ! LANGUAGE : Ġ+ New Inference Ċ // ĠIG NORE _ BACKEND : ĠJS , ĠJS _ IR , ĠJVM _ IR Ċ Ċ fun Ġfoo ( x : ĠInt , Ġvar arg Ġy : ĠString Ġ= ĠarrayOf (" A aa ")) : ĠString Ġ= ĊĠĠĠĠĠĠĠ Ġif Ġ( y [ 0 ]. length Ġ== Ġx ) Ġ" OK " Ġelse Ġ" Fail " Ċ Ċ fun Ġuse 0 ( f : Ġ( Int ) Ġ-> ĠString ): ĠString Ġ= Ġf ( 3 ) Ċ fun Ġuse 1 ( f : Ġ( Int , ĠString ) Ġ-> ĠString ): ĠString Ġ= Ġf ( 5 , Ġ" B bbbb ") Ċ Ċ fun Ġbox (): ĠString Ġ{ ĊĠĠĠ Ġif Ġ( use 0 (:: foo ) Ġ!= Ġ" OK ") Ġreturn Ġ" Fail " ĊĠĠĠ Ġreturn Ġuse 1 (:: foo ) Ċ } Ċ