2009-12-01 4 views
6

コンピュータ・サイエンスでは、単語マップの2つの定義があります。 1つは連想配列で、あるタイプの値を別のタイプの値にマップするコンテナのタイプです。これの例はSTL mapです。 2番目の定義は関数型プログラミングからのもので、mapが適用されるのはリストと関数を取り、関数をリストのすべての要素に順番に適用し、結果のリストを返す関数です。コンピュータ・サイエンスの "地図"の由来

マップのさまざまな定義の元は何ですか?私は、第2の定義がmapcar function from McCarthy LISPから来たかもしれないと推測していますが、それが他の有用なものから派生したものかどうかはわかりません。最初の定義はわかりやすいですが、どこから来たのか分かりません。

+0

家の中にコンピュータ用語の語源がありますか? – TechZen

答えて

14

これらの構成はどちらも、数学的な意味でマップを定義します。つまり、あるセットから別のセットへの要素のマッピングです。

+12

これについて説明すると、最初の定義はマップを記述し、2番目の定義はマッピングのプロセスを記述します。考えてみましょう:関数マップを使用してリストを新しいリストにマップし、新しいリストと古いリストを並べて配置すると、マップ(連想配列)が作成されます。 – mquander

6

まあ、mapの数学的な意味があります。これは、あるセットから別のセットへの要素のペアです。