Я не совсем уверен, как искать этот вопрос.Расширение функциональности массива int в OCaml
Скажем, я использую кучу функций на int array
s, например, вычитая два из них покомпонентно (если они имеют одинаковую длину) и так далее. Есть ли идиоматический способ справиться с этим? Как мне поднять операции на int
s (или какой-либо другой тип) на операции на int array
s (или массивы какого-либо другого типа)? Должен ли я использовать функтор или использовать другой подход?
Редактировать: Я хочу, чтобы иметь возможность поднимать арифметические операции с числовыми типами, такими как int
s или float
s с единицами на их соответствующих массивах. Должен ли я просто написать функции?
Да, я полагался на сам писать эти функции, но мне также нужно поднять арифметические операции для типов, отличных от 'int', поэтому делать это вручную становится утомительным. Есть идеи? – Dimitrios
Полиморфизм - это ключ, не так ли? Вы можете использовать 'array_map2 (+): int array -> int array -> int array' например. –
Функция 'array_map2', данная @Sheeft, работает для всех типов, а не только для ints. –