generated at
Standard ML

オンラインの実行環境
左上の「Edior」から試すことができる
なんかでかそうなので、インスコしたくない気持ちになったmrsekut

拡張子は、 .sml
.smi というファイルもコンパイル時に必要?

文法
ml
(* 変数定義 *) val x = 42; (* `=`は等価比較演算子でもある *) x = 42; (* local変数 *) let val x = 42 in 2 * x end; (* 関数定義と呼び出し *) fun hello name = print ("Hello " ^ name ^ "!\n"); hello "World"; (* リストと要素追加 *) val y = [1,2,3]; 0::y; (* 例外はhandleで捕捉 *) 1 div 0 handle Div => 100; (* 型作成 *) datatype week = Sun | Mon | Tue | Wed | Thu | Fri | Sat datatype person = Person of string * int (* パターンマッチ *) fun isWeekend w = case w of Sun => true | Sat => true | other => false