Я пытаюсь создать встроенный язык в Haskell, и, если возможно, я хотел бы дать настраиваемое значение для сопоставления, которое обычно обозначает приложение функции. Или, почти эквивалентно, я хотел бы определить оператор пробела, который имеет нормальный определяемый приоритет оператора.Есть ли способ перегрузить сопоставление в ghc?
Что-то вроде
() x y = x * y
, который позволит затем записать умножение 3 * 4
в 3 4
.
Есть ли какой-либо способ в GHC (с использованием любого расширения) для его реализации?
Это было бы хорошо, но как бы вы применили обычные функции? –
Он должен быть перегружен только для определенных типов, например (в моем примере) два числа. –
Он не будет работать вместе с типом вывода. –