Я хотел бы перегрузить оператор (/) в F# для строк и сохранить значение для чисел.
/// Combines to path strings
let (/) path1 path2 = Path.Combine(path1,path2)
let x = 3 / 4 // doesn't compile
Если я попытаюсь сделать следующее, я получу сообщение «Предупреждение 29. Члены расширения не могут предоставлять перегрузки операторов. Вместо этого рассмотрите возможность определения оператора как части определения типа».
/// Combines to path strings
type System.String with
static member (/) (path1,path2) = Path.Combine(path1,path2)
Любые идеи?
С уважением, форки