OCaml第四回メモ
環境から何かを探してくるときのことです。
# let x = "test" ;; val x : string = "test" # let y = "test" ;; val y : string = "test" # x == y ;; - : bool = false
僕はこれでハマりました(適当にstring==stringをやっても型エラーでなかったので、==でちゃんと文字列比較してくれるものだと思っていた) ちゃんとString.compareを使いましょう ちなみにmatch文でもうまく出来ませんでした(やり方があるのかもしれません)
-
MLでは
==
ではなく=
を使うだけでいいような。Schemeでのeq?
が==
に、equal?
が=
に相当するはず。-- grafi 2013-05-03 15:37:06- http://www.i.kyushu-u.ac.jp/~bannai/ocaml-intro/traps.html
- http://caml.inria.fr/pub/docs/manual-ocaml-4.00/libref/Pervasives.html
- letの中に出てくる束縛の導入に用いる=と、比較演算子としての=はセマンティクスの上で全く違うし、パーサーも別個に処理しているんだと思う。
-
!すごい!たしかにそうですね -- やぎた 2013-05-03 17:57:21