Cyanにおける変数の扱い
http://cadr.g.hatena.ne.jp/g000001/20081025にて、Cyanについて取り上げていただきました。ありがとうございます。
さて、記事において、Cyanのifがif-letのような動きをすることについて書かれていましたが、これはifの機能というより、Cyanの変数の扱い方に由来するものです。
Cyanはletによって変数を初期化する必要がありません。ブロックにローカルな変数を作るには、:=を使います。
x = 1 begin: x := 2 say(x) #=> 2 say(x) #=> 1
x := 2は、Perlにおけるmy $x = 2とほぼ同じです。
変数について私の説明が足りなかったことをお詫びします。