Оглавление
Единый синтаксис вызова функции
-
Унифицированный синтаксис вызова функций (UFCS)
- UFCS позволяет вызывать функции, используя синтаксис методов в языках D, Nim, Koka и Effekt.
- Техника UFCS аналогична “нотации ООП” в AviSynth.
- UFCS полезен для цепочечных вызовов функций и может выполнять роль методов расширения в других языках.
-
Преимущества UFCS
- IDE с системами завершения могут сужать список функций на основе типа аргумента.
- UFCS упрощает обнаружение функций и способствует уменьшению неоднозначности в выборе между свободными функциями и функциями-членами.
-
История и предложения по UFCS
- Обсуждение унифицированного синтаксиса вызова началось с C++, где Глассбороу предложил его в 2004 году.
- Бьярне Страуструп и Херб Саттер предложили добавить UFCS в C++ в 2016 году для упрощения написания шаблонного кода.
- Саттер в 2023 году предложил использовать UFCS для уменьшения связи между классами.
-
Ржавое использование термина UFCS
- До 2018 года термин UFCS использовался для обозначения уточненного/явного пути в синтаксисе с полным указанием пути.
- Термин UFCS некорректен для описания функций-членов, которые могут использоваться как свободные функции.
-
Связанные концепции
- В статье упоминаются черты характера, интерфейсы, язык программирования Go и другие концепции, связанные с UFCS.
Полный текст статьи: