「MLの基礎(3)」の編集履歴(バックアップ)一覧はこちら

MLの基礎(3)」(2007/03/06 (火) 23:48:29) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

・変数関係の補足 val pi=3.14 は、いわゆる、変数への代入ではない。 MLでは、static bindingといって、piという変数に3.14という値をbind 結びつけている。 MLは、一度、bindするとその値は変わることがない。 しかし、 val pi=0.0; とすると、piは0.0と評価される。 実は、piの再定義によって、古いpiのbindingがきえたわけではなく、隠されただけという。 例えば、 val pi=3.14; val area=pi*3.0*3.0; (-> 28.26) val pi=0.0; area; (-> 28.26)(0とはならない) 変数名とそれにbindされている値の組み合わせの集合を環境(environment)という。 areaの環境ではpi=3.14であり、その外でpiの値を再定義しても、 areaの環境には影響がない。static binding 関数の場合も同様である。 val y=20; fun f x = x + y; f 3 ; (->23) val y =99; f 3 ;(->23)(102とはならない) #comment()

表示オプション

横に並べて表示:
変化行の前後のみ表示: