2009-06-29 7 views
1

「foo」を呼び出すには、次のようなものが必要ですか?この関数の構成とは何ですか?

x.itemsはセット、y.valuesはセットです。

機能(キー)は

関数b(x.item)は単一y.valueを返し

定義FOOを(a、b)は、関数を返すx.itemsの順序付けられたリストを返します、d、d(key)はmap(b、a(key))で定義されたy.valuesのリストを返すようにします。

これはかなり一般的で一般的な機能の構成のように感じますが、私はそれを何と呼ぶべきか分かりません。

+0

x.itemsはセットですか?そして、(キー)はx.itemsの順序付けられたリストをあなたに与えますか?何に基づいて? 「キー」はx.items()のサブセットにどのようにマップされますか x.itemとy.valueのマッピングはどのように行われますか?セットはメンバーのポジションを持たないため、ポジションにすることはできません。 一般的で一般的かもしれませんが、意味がありません。 :) –

+0

関数 'a'と 'b'は任意のマッピング関数です。実際の実装では、設定ファイルと現在の時刻に基づいて生成されます。 x.itemsは(1,2,3)に設定でき、y.valuesは(4,5,6)に設定できます。例えば、a(100)= [1,2]、a(150)= [2,3]、a(200)= [1]。 (1)= 5、b(2)= 6、b(3)= 4.foo(a、b)(100)= [5、6] –

答えて

2
function a(key) returns an ordered list of x.items 
function b(x.item) returns a single y.value 

発注の場合を除き、a()は実際にはフィルタであり、つまり、キーに応じてx.itemsの項目を「フィルタリング」または「選択」します。 b()は法線マップまたは関数です。したがって、私は 'foo'の名前に "composeFilterWithMap"または "composeSelectorWithMap"または同様の名前を選択します。

1

私は機能コンポジまたはその

0

シナジーエンジンのようなもの、それを呼び出します。ここでの

+1

「Bob」はどうですか? – Dan

+1

しかし、あなたはTrebekが欲しいです。重要なのは、機能するのか? – Totty

0

は役立つかもしれない、B、およびfooの例の名前です(私はこれらを好きではないが、彼らはの私が取得していますどのようにソートしている):

 
items_by_key(key) 

value_by_item(item) 

values_by_key(items_by_key, value_by_item) 
+0

質問を編集して答えに入れるのではなく、質問に答えてください。 –

1

私は何をやっているpermuted_values

その関数を呼び出しますが、あなたのキーに基づいて並べ替えを使用してハッシュマップを反復処理と同等です。

関連する問題