Обсуждение:Обобщённое программирование (KQvr';yuny&KQkQp~uuky hjkijgbbnjkfguny)

Перейти к навигации Перейти к поиску

Удаление страницы

[править код]

Есть у меня сомнения на счёт удаления страницы. Мнения? --Obersachse 15:15, 18 сентября 2006 (UTC)[ответить]

Одна из основных парадигм программирования, важный аспект информационных технологий. Удалению не подлежит. Заношу ее в проект КТ Ivan the Knight 14:35, 16 февраля 2010 (UTC)[ответить]

Конкретно по "Способам реализации" - возможная оригинальность потенциально м.б. снята, если основываться на "Концепциях и принципах ЯП" В.Ш. Кауфмана: ISBN 9785940746225. В частности, на п. 4.8, где обсуждается, видимо, как способ первого рода настройка родовых сегментов на Аде. Но нужно квалифицированно посмотреть - более, чем могу, думаю - поэтому править не стал.--VladZharinov 09:19, 20 мая 2012 (UTC)[ответить]

Собственно, будет ли нечто являться ОРИСС, если просто перечислить способы реализации, найденные в различных источниках, но не заявлять, что их мол только два. Например, выявится какой-нибудь язык, скажем Haskell, в котором есть третий путь? В Haskell, например, весьма обобщенные функции и некоторые вещи могут подойти под определение ОП, но из-за присущего языку параметрического полиморфизма, а не из-за каких-то шаблонов. Этот самый параметрический полиморфизм реализуется и шаблонами C++. Поэтому в "Способах реализации" нужно писать не про шаблоны и плюсы-минусы, а в более общем виде - о параметрическом полиморфизме. И разумеется на основе авторитетного источника. Этот абзац - просто мои спекуляции, которые позволяют мне однако сомневаться в надежности данной в "Способам реализации" информации в нынешнем виде. РоманСузи 17:11, 22 июля 2012 (UTC)[ответить]

Конкретно предлагаю: 1. раздел "Способы реализации" убрать за неимением источников, либо cделать обозримым и понятным, если найдется хороший АИ. 2. на основании источников по конкретным языкам программирования описать способы реализации ОП в них, указывая каждый раз, что чему соответствует, и не утверждая, что только они и возможны. РоманСузи 17:56, 22 июля 2012 (UTC)[ответить]

Предлагаю другое определение

[править код]

В книге Джереми Сик, Лай-Кван Ли, Эндрю Ламсдэйн. C++ Boost Graph Library. — Питер, 2006. — 304 с. — ISBN 5-469-00352-3. выглядит так:

Обобщенное программирование - методология проектирования и реализации программ, которая разделяет структуры данных и алгоритмы через использование абстрактных спецификаций требований.

Там же говорится о расширении абстрактного типа данных, а набор требований называется концепцией (concept).

Мне такое определение кажется более конкретным, так как сущности названы и определены их взаимоотношения. Кстати, в указанном источнике, к которому Степанов сделал интересное предисловие, целая глава посвящена ОП в C++. (занимался переводом этой книги, поэтому когда сейчас наткнулся на обсуждаемую статью, то вспомнил, что было более точное определение) РоманСузи 16:48, 22 июля 2012 (UTC)[ответить]

Кстати, в английской версии ОП не называется парадигмой (а стилем), а описание включает динамические языки. РоманСузи 17:20, 22 июля 2012 (UTC)[ответить]

Еще раз перечитал свои рассуждения. Я не имею в виду заменить определение, а раскрыть подводные течения понятия. Скажем, у того же Reis и Järvi говорится о двух школах: Dehnert and Stepanov против формализма Bird–Meertens. В английской вики говорится "In this article we distinguish the high-level programming paradigms of generic programming, above, from the lower-level programming language genericity mechanisms used to implement them". И дальше уже говорят только о low-level в разных ЯП. Если нет возражений, я могу подготовить описание ОП по указанному источнику, касающееся hi-level. РоманСузи 18:55, 22 июля 2012 (UTC)[ответить]