Общая функция
- Универсальная функция в компьютерном программировании – это функция, определенная для полиморфизма.
- В статически типизированных языках универсальные функции относятся к механизму полиморфизма во время компиляции.
- В объектной системе Common Lisp универсальная функция – это объект, состоящий из всех методов с одинаковым именем.
- Универсальные функции являются как функциями, которые могут вызываться с аргументами, так и обычными объектами.
- В книге “Искусство протокола метаобъектов” подробно описывается реализация и использование общих функций CLOS.
- Отдельные реализации сообщения называются методами.
- Универсальные функции примерно соответствуют тому, что Smalltalk называет методами, за исключением того, что в Smalltalk класс получателя является единственным фактором, определяющим, какой фрагмент кода вызывается.
- В языке программирования с множественной диспетчеризацией при вызове универсальной функции диспетчеризация метода происходит на основе всех аргументов, а не только одного.
- В JavaScript универсальная функция – это функция, которая может работать со значениями разных типов.
Полный текст статьи: