Re[3]: Какой полиморфизм используется в ФЯ?
От: VladD2 Российская Империя www.nemerle.org
Дата: 25.10.04 15:43
Оценка:
Здравствуйте, Nick_, Вы писали:

N_>Обьясните мне, что подразумевается под статическим полиморфизмом, а что под динамическим?


Статический когда выбор конкретного варианта осуществляется компилятором (перегрузка и т.п.) и динамический кодга конкретный вариант выбирается в рантайме на базе динамического выбора.

N_>Я знаю только ad-hoc и параметрический полиморфизмы.


Не думаю, что этот термин реально прижился. Не все из Википедии нужно брать на вооружении.

N_>ad-hoc — это перегрузка(overloading) и то, что обычно понимается под полиморфизмом в С++.

N_>parametric — это то, что в функциональных языках понимается под полиморфизмом.
N_>Шаблоны в С++ — это подобие параметрического полиморфизма.

Это все не типизация. Это общие разрозненные слова. Реально имет значение смысл полиморфизма: создание универсального кода (процедур, функций, методов) или типов, т.е. так чтобы код и типы можно было абстрагировать от конкретных используемых в них типов.

Ну, а дальше можно выделить два подкласса — это статический полиморфизм и динамический. Динамический требует выбора в рантайме, статический ведет к генерации множества вопложений полиморфного кода и типов.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.