Как мне назвать эту функцию композиции? - PullRequest
1 голос
/ 29 июня 2009

Как следует вызывать 'foo', учитывая следующее?

x.items - это набор, y.values ​​- это набор.

function a (key) возвращает упорядоченный списокиз x.items

функция b (x.item) возвращает единственное значение y.value

Define foo (a, b), которое возвращает функцию d, такую ​​что d (ключ)возвращает список значений y.value, определенных как: map (b, a (key)).

Это похоже на довольно распространенную и обобщенную композицию функций, но я не знаю, как ее вызвать.

Ответы [ 5 ]

2 голосов
/ 09 июля 2009
 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 голос
/ 10 июля 2009

Я бы назвал эту функцию permuted_values ​​

То, что вы делаете, эквивалентно итерации по хэш-карте с использованием перестановки на основе вашего ключа.

1 голос
/ 29 июня 2009

Я бы назвал это функция композитор или что-то в этом роде

0 голосов
/ 29 июня 2009

Вот примеры имен для a, b и foo, которые могут помочь (мне это не нравится, но они вроде как то, что я получаю):

items_by_key(key)

value_by_item(item)

values_by_key(items_by_key, value_by_item)
0 голосов
/ 29 июня 2009

Синергетический двигатель.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...