val Ġto I : Ġ( Î» ) Ġ-> ĠInt Ġget () Ġ= Ġ{ Ġf Ġ-> ĊĠĠĠ Ġf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠÎ» Ġ{ Ġx Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( x . v < Int >(). inc ()). Î» ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ)( ĊĠĠĠĠĠĠĠĠĠĠĠĠ 0 . Î» ĊĠĠĠ Ġ). v () Ċ } Ċ Ċ val Ġto B : Ġ( Î» ) Ġ-> ĠBoolean Ġ= Ġ{ ĠÎ» Ġ-> ĊĠĠĠ ĠÎ» ( true . Î» )( false . Î» ). v () Ċ } Ċ Ċ val Ġto A : Ġ( Î» ) Ġ-> ĠList < Î» > Ġ= Ġ{ ĊĠĠĠ ĠZ ( Î» Ġ{ Ġrecur Ġ-> ĊĠĠĠĠĠĠĠ ĠÎ» Ġ{ ĠÎ» Î» Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠÎ» Ġ{ Ġacc Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIf ( IsEmpty ( Î» Î» ))( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdefer Ġ{ Ġacc Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdefer Ġ{ Ġrecur ( Tail ( Î» Î» )) (( acc . v < List < Î» >>() Ġ+ ĠHead ( Î» Î» )). Î» ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġ)( it )( emptyList < Î» >(). Î» ). v () Ċ } Ċ Ċ val Ġfrom Int : Ġ( Int ) Ġ-> ĠÎ» Ġ= Ġ{ Ġn Ġ-> ĊĠĠĠ ĠPred Ġ Í º Ġ( 0 .. n ). fold ( Zero ) Ġ{ Ġa , Ġb Ġ-> ĠS ucc ( a ) Ġ} Ċ } Ċ Ċ val Ġfrom Boolean : Ġ( Boolean ) Ġ-> ĠÎ» Ġ= Ġ{ Ġbool Ġ-> ĊĠĠĠ ĠIs Zero ( from Int (( ! bool ). compareTo ( false ))) Ċ }