Оптимизация / сокращение чистых функций с одинаковыми типами ввода / вывода, чтобы объединить их в более простую чистую функцию? - PullRequest
0 голосов
/ 03 января 2019

Отказ от ответственности: у меня почти нет математических представлений, поэтому этот вопрос может быть очень простым для некоторых из вас.

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

Предположим, у меня есть эти 3 метода с одинаковой сигнатурой:

addOne(param: number): number {
   return param + 1;
}

addTwo(param: number): number {
    return param + 2;
}

multiplyByThree(param: number): number  {
    return param * 3;
}

Теперь я знаю, что я 'Я всегда буду использовать эти функции в одном и том же порядке и с одним и тем же параметром.

Пример: я буду обрабатывать звук или изображение.

Я хочу избежать бесполезного применения коэффициента или смещений, которые могут быть вычислены вместе(оптимизация / регрессия).

Допустим, у меня есть эта воображаемая библиотека с методом computeOptimizedFunction, который применяет эту концепцию к моим функциям.Требуется любое количество функций с той же сигнатурой, что и для ввода.

var optimized = computeOptimizedFunction(addOne, addTwo, multiplyByThree);

Фактически равно:

var optimized = (param: number) => 3 * (param + 3);

Каждый, кто здесь, имеет представление о том, как называется эта концепция или шаблон, еслиэто существует?

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