アカウント名:
パスワード:
AWKのAはAhoのAだとはじめて知った。「Aho Wa Koitsu」じゃなかったんだ
今でもgawk使ってるよファイルはgawk.exeひとつだけ、1Mbyteにも満たないサイズで面倒なインストールの手間も不要fatなスクリプト言語なんて使わなくても出来ることは多い
awk使ったことないわ。構文覚えるの面倒とかあるけど、sedで事足りるってのがでかい。
お前はC/C++プログラマではないな!?awkはC/C++を簡易言語化したような感じなので、C/C++使ってる人間には便利連想配列のおかげで助かることもある
sedもC++も使っているが、awkは合わなかったので Perlに行った。連想配列? Perlでも使えますが何か?
どうでもいいけど、
Perl:ハッシュPython:ディクショナリJava:マップ
呼び名統一してほしい。
出自の文化圏の違いからなのかなぁ。
Perl:ハッシュ → 古き良きLisp文化圏からPython:ディクショナリ → Amoeba/ABC文化圏の「わかりやすさ」からJava:マップ → C/C++文化圏の呼称をそのまま継承
あまり詳しくないので正しいかどうかわからんけど、wikipediaだとハッシュと呼び始めたのはPerlから [wikipedia.org]と書かれているな。
ハッシュは連想配列を作るアルゴリズムからで、マップは数学用語からで、ディクショナリはどちらかというと日常的な単語から。連想配列の実装のもう1つの定番アルゴリズムは木で、JavaのMapには、TreeMapとHashMapが別々に存在して好きな方を選んで使える。
C++には、「あらゆるオブジェクトのハッシュ値が必要に応じて計算できて、上手い具合にキャッシュされて何度も再計算されるような無駄が無い」という仕組みが備わっていないのでハッシュテーブルを実装するのは敷居が高くて最初は木を使ったMapしかなかった。後にハッシュテーブルを使ったunorderd_mapが追加された。
関係ないけどついでにPythonのリストは、リスト構造とは別物で誤解を受けやすいのがよろしくない…。偉大なるLispから採りました、というとマサカリが飛んできそうなので、日常的な単語から取りました、って事になってるのかな。知らんけど。
>日常的な単語から取りました
「ディクショナリ」と同じく、おそらくこれでしょう。
「これ」が何を指してるのかわからんです。
「ハッシュ」のことなら、単語自体は日常的だけど連想配列の「機能」ではなくそれを実現する「手法」を指したネーミングというのが、なんか引っかかるというか納得いかない
生きづらい性格で大変ですね。
> 生きづらい性格で大変ですね。(#4007758)が言葉足らずなのは(#4007807)のせいではないだろ。「これ」が何か考えて「リスト」のことだろうと予想はしたが、予想でしかない。
言葉に窮して人格批判
> 敷居が高くて難易度が高いと言いたいのでしょうが。言語システムに、オブジェクトのハッシュ値を計算する仕組みがあること、実装難易度は関係がないです。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
私はプログラマです。1040 formに私の職業としてそう書いています -- Ken Thompson
AWK (スコア:0)
AWKのAはAhoのAだとはじめて知った。
「Aho Wa Koitsu」じゃなかったんだ
Re: (スコア:0)
今でもgawk使ってるよ
ファイルはgawk.exeひとつだけ、1Mbyteにも満たないサイズで面倒なインストールの手間も不要
fatなスクリプト言語なんて使わなくても出来ることは多い
Re: (スコア:0)
awk使ったことないわ。
構文覚えるの面倒とかあるけど、sedで事足りるってのがでかい。
Re: (スコア:0)
お前はC/C++プログラマではないな!?
awkはC/C++を簡易言語化したような感じなので、C/C++使ってる人間には便利
連想配列のおかげで助かることもある
Re: (スコア:0)
sedもC++も使っているが、awkは合わなかったので Perlに行った。
連想配列? Perlでも使えますが何か?
Re:AWK (スコア:1)
どうでもいいけど、
Perl:ハッシュ
Python:ディクショナリ
Java:マップ
呼び名統一してほしい。
Re: (スコア:0)
出自の文化圏の違いからなのかなぁ。
Perl:ハッシュ → 古き良きLisp文化圏から
Python:ディクショナリ → Amoeba/ABC文化圏の「わかりやすさ」から
Java:マップ → C/C++文化圏の呼称をそのまま継承
Re: (スコア:0)
あまり詳しくないので正しいかどうかわからんけど、wikipediaだとハッシュと呼び始めたのはPerlから [wikipedia.org]と書かれているな。
Re:AWK (スコア:1)
ハッシュは連想配列を作るアルゴリズムからで、マップは数学用語からで、ディクショナリはどちらかというと日常的な単語から。
連想配列の実装のもう1つの定番アルゴリズムは木で、JavaのMapには、TreeMapとHashMapが別々に存在して好きな方を選んで使える。
C++には、「あらゆるオブジェクトのハッシュ値が必要に応じて計算できて、上手い具合にキャッシュされて何度も再計算されるような無駄が無い」という仕組みが備わっていないのでハッシュテーブルを実装するのは敷居が高くて最初は木を使ったMapしかなかった。後にハッシュテーブルを使ったunorderd_mapが追加された。
関係ないけどついでにPythonのリストは、リスト構造とは別物で誤解を受けやすいのがよろしくない…。偉大なるLispから採りました、というとマサカリが飛んできそうなので、日常的な単語から取りました、って事になってるのかな。知らんけど。
Re: (スコア:0)
>日常的な単語から取りました
「ディクショナリ」と同じく、おそらくこれでしょう。
Re: (スコア:0)
「これ」が何を指してるのかわからんです。
「ハッシュ」のことなら、単語自体は日常的だけど連想配列の「機能」ではなくそれを実現する「手法」を指したネーミングというのが、なんか引っかかるというか納得いかない
Re: (スコア:0)
生きづらい性格で大変ですね。
Re: (スコア:0)
> 生きづらい性格で大変ですね。
(#4007758)が言葉足らずなのは(#4007807)のせいではないだろ。
「これ」が何か考えて「リスト」のことだろうと予想はしたが、予想でしかない。
Re: (スコア:0)
言葉に窮して人格批判
Re: (スコア:0)
> 敷居が高くて
難易度が高いと言いたいのでしょうが。
言語システムに、オブジェクトのハッシュ値を計算する仕組みがあること、実装難易度は関係がないです。