Concurrent Clean : for-notation : 脱出パターン
次のようなプログラムを
proc f = for f ?1 True,i <- freadi fwritei i return Just i except1 _ _ return Nothing
次のように変換する。
proc f = case f of for = case freadi for of (True,i,for) # for = fwritei i for = (Just i,for) (for`0,for`1,for) = except1 for`0 for`1 for with except1 _ _ for = (Nothing, for)