2
OCamlにList.appendがあることは知っていますが、Haskellの++
のような演算子がありますか?リストではOCamlにはHaskellの++のような構文がありますか?
OCamlにList.appendがあることは知っていますが、Haskellの++
のような演算子がありますか?リストではOCamlにはHaskellの++のような構文がありますか?
:
弦楽のため# (@);;
- : 'a list -> 'a list -> 'a list = <fun>
# [1;2;3] @ [4;5;6];;
- : int list = [1; 2; 3; 4; 5; 6]
:
# (^);;
- : string -> string -> string = <fun>
# "abc"^"def";;
- : string = "abcdef"
また、あなただけの自分自身に
let (@) = List.append
または
let (++) = List.append
を言うことができます
まだ標準ライブラリであなたのためにそれをしていない場合。
グリル。 OCamlだけがcharリストとして文字列を実装した場合... – mcandre
このような決定には多くの微妙な点があります。ハスケルはパフォーマンス上のペナルティを支払う。 Lennart Augustssonは、この決定はハスケルの間違いであるとのコメントをしました(彼のCUFP 2011の話)。 –
HaskellだけがMonoidsに 'mappend'の代わりに' ++ 'という名前を使用していたとします。そして、 'Monoid'のインスタンスである' Data.Text'でも同様に動作し、charリストよりもはるかに効率的です;) –