たまたま、goで書かれた物をperlへ移植しようとしていたらsplitの挙動の差が出てきまして、他の言語の場合どうなるんだろうとぱっと思いついた言語で実行して見ました。以下の文字列を言語標準でついている文字列のsplitを実行した結果となります。
"/path/to/hoge/"
言語 | 結果 | 参照先 | |
---|---|---|---|
perl(5.12) | ['','path','to','hoge'] | http://perldoc.perl.org/functions/split.html | |
golang(1.5) | ["" "paht" "to" "hoge" ""] | https://golang.org/pkg/strings/#Split | |
ruby(2.1) | ["", "path", "to", "hoge"] | http://docs.ruby-lang.org/ja/search/query:split/ | |
ptyhon(2.7.8) | ['', 'paht', 'to', 'hoge', ''] | http://docs.python.jp/2/library/stdtypes.html | |
js | [ '', 'path', 'to', 'hoge', '' ] | https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/String/split | |
perl6 | ("", "path", "to", "hoge", "") | ? (perl6-m -e 'say "/path/to/hoge/".split("/").perl') | |
clojure(1.4.0) | ["" "path" "to" "hoge"] | http://clojure.github.io/clojure/clojure.string-api.html#clojure.string/split |
言語の樹形図を遡っていけばなんか分かるのですかね。
http://gigazine.net/news/20070126_computer_languages_history/