Я не думаю, что это возможно в F #, основываясь на чтении документации по перегрузке .
Вместо этого я бы предложил вам создать собственную функцию, которая выглядит как /
, но это не так. Что-то вроде:
let (</>) path1 path2 = Path.Combine (path1,path2)
Это, вероятно, будет менее раздражающим в долгосрочной перспективе, потому что это не портит неявный вывод типа, который выполняет читатель-человек - /
означает, что результат является плавающей точкой, и помня, что иногда строка - это бремя *. Но после того, как читатель впервые видит </>
, легко вспомнить, что он делает что-то, связанное с символом, встроенным в середину.
* Я думаю, единственная причина, по которой +
выглядит так, что строки выглядят нормально, это чрезмерная экспозиция. После длительного использования Haskell или Caml первые несколько минут после переключения на другой язык "foo" + "bar"
выглядят крайне плохо.