Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2013.07.28;
Скачать: [xml.tar.bz2];

Вниз

Почему в дельфи не шаблоны, а дженерики?   Найти похожие ветки 

 
jack128_   (2013-03-05 22:37) [0]

Сабж


 
Pit   (2013-03-05 22:39) [1]

Удалено модератором


 
Kerk ©   (2013-03-05 23:06) [2]

Потом что дженерики - это хорошо, а шаблоны (ты про сишные темплиты?) - дикий костыль.


 
Rouse_ ©   (2013-03-05 23:35) [3]

Удалено модератором


 
jack128_   (2013-03-06 00:02) [4]

в чем костыльность шаблонов по сравнению дженереками дельфи?
2розыч, завтра утром посмотрим ;-)


 
Rouse_ ©   (2013-03-06 00:26) [5]

Удалено модератором


 
Kerk ©   (2013-03-06 00:38) [6]


> jack128_   (06.03.13 00:02) [4]
>
> в чем костыльность шаблонов по сравнению дженереками дельфи?

Смотря как смотреть :)
С точки зрения C++ может и не костыль. Там традиционно с типизацией не все хорошо и они гордятся этим :)


 
Vegeta   (2013-03-06 00:44) [7]

Всё это средства обобщённого программирования.


 
Германн ©   (2013-03-06 01:46) [8]

Удалено модератором


 
Ega23 ©   (2013-03-06 08:17) [9]

Удалено модератором


 
брат Птибурдукова   (2013-03-06 08:41) [10]

Удалено модератором


 
jack128_   (2013-03-06 08:59) [11]


> С точки зрения C++ может и не костыль. Там традиционно с
> типизацией не все хорошо и они гордятся этим :)

в чем проблемы с типизацией у шаблонов??


 
Kerk ©   (2013-03-06 10:13) [12]

Ну duck typing же ну.


 
jack128_   (2013-03-06 11:09) [13]

ну и что? ИМХО это не проблема. к тому же - это не обязательно. вполне можно прикрутить ограничение на типы для шаблонов.


 
Dimka Maslov ©   (2013-03-06 11:20) [14]

Потому-что в С++ шаблоны работают нормально, а дженерики в дельфи, мягко выражаясь, не очень.


 
знайка   (2013-03-06 11:50) [15]


> а дженерики в дельфи, мягко выражаясь, не очень.
это как? определил с типом А, а может выйти В? :)


 
DVM ©   (2013-03-06 11:56) [16]


> а дженерики в дельфи, мягко выражаясь, не очень.

я не сталкивался пока с проблемами, в последнее время все больше и больше использую, жаль только что оформление их отличается в Delphi и FreePascal.


 
Kerk ©   (2013-03-06 11:57) [17]


> jack128_   (06.03.13 11:09) [13]
> ну и что? ИМХО это не проблема.

Ну я ж сразу сказал. С какой стороны смотреть.
Для сишников, ниразу не слышавших о строгой типизации, все что угодно не проблема :)


 
jack128_   (2013-03-06 11:57) [18]


> это как? определил с типом А, а может выйти В? :)

internal error на каждом шагу. В D2010. В 2009 я вообще ни одного своего кода с  дженериками не смог скомпилировать.

Ну и возможности у них куцие. (ко/контра)вариантности нет, вот так http://qc.embarcadero.com/wc/qcmain.aspx?d=96623 нельзя.


 
jack128_   (2013-03-06 11:57) [19]


> это как? определил с типом А, а может выйти В? :)

internal error на каждом шагу. В D2010. В 2009 я вообще ни одного своего кода с  дженериками не смог скомпилировать.

Ну и возможности у них куцие. (ко/контра)вариантности нет, вот так http://qc.embarcadero.com/wc/qcmain.aspx?d=96623 нельзя.


 
brother ©   (2013-03-06 11:58) [20]

а для пхпешников?)


 
jack128_   (2013-03-06 11:59) [21]


> Для сишников, ниразу не слышавших о строгой типизации, все
> что угодно не проблема :)

еще раз, в чем проблема ввести констрейнты для шаблонов??


 
брат Птибурдукова   (2013-03-06 12:01) [22]


> internal error на каждом шагу
В ХЕ2 не наблюдается.


 
DVM ©   (2013-03-06 12:03) [23]


> internal error на каждом шагу. В D2010. В 2009

ну сколько воды с тех пор утекло, про то, что ошибки на каждом шагу не верю.


 
jack128_   (2013-03-06 12:04) [24]

к кому же duck typing - это совсем не отсутствие типизации. Она столько строгая как и номинальная. Просто совместимость типов определяется по другому критерию.


 
jack128_   (2013-03-06 12:09) [25]


> В ХЕ2 не наблюдается.

возможно. вывод, любую фичу от эмбаркадеро можно юзать только через 5 релизов после её(фичи) появления.


> что ошибки на каждом шагу не верю.

с вопросами веры в церковь нужно ходить.
а на момент выхода 2009ой дельфи эмбаркадеро(коджир?) даже TList<T>.ToArray: TArray<T>  не смогли реализовать из-за багов компилятора


> это как? определил с типом А, а может выйти В? :)

кста, вспомнил
http://qc.embarcadero.com/wc/qcmain.aspx?d=69859


 
DVM ©   (2013-03-06 12:18) [26]


> jack128_   (06.03.13 12:09) [25]


> с вопросами веры в церковь нужно ходить.

подтверждать заявления нужно примерами, причем желательно из современных версий Delphi, а не древних. А то получается, что заявляем про ошибки на каждом шагу о дженериках вообще, а на поверку речь оказывается идет о D2009.


 
Дмитрий С ©   (2013-03-06 12:20) [27]


> а для пхпешников?)

У этих еще кручее:)

http://php.net/manual/ru/language.oop5.traits.php


 
Romkin ©   (2013-03-06 12:38) [28]


> еще раз, в чем проблема ввести констрейнты для шаблонов?
> ?

В C++? А они там есть? Сишники не так давно плакались.
Отличать надо принцип дженериков и конкретную реализацию. В Delphi их содрали с C#, что не слишком удачно.
Не надо подразумевать, указывая на ошибки в конкретной реализации, что это недостатки самой технологии!


 
Romkin ©   (2013-03-06 12:42) [29]

И, кстати, при наличии утиной типизации ни шаблоны ни дженерики не требуются.


 
bems ©   (2013-03-06 13:54) [30]

Генерики в дельфи и далеко не лучшая реализация генериков, конечно же. И сносно работает только начиная с ХЕ. Но люди, хвалящие темплейты из плюсиков вызывают у меня недоумение. Вы вообще сообщения об ошибках читать пробовали? Всё что угодно лучше, чем этот кал.


 
картман ©   (2013-03-06 15:28) [31]


> jack128_   (06.03.13 12:09) [25]
> а на момент выхода 2009ой дельфи эмбаркадеро(коджир?) даже TList<T>.ToArray: TArray<T>  не смогли реализовать из-за багов компилятора


опаньки, наши поделки уже года два с ошибками работают, надо срочно переделать


 
jack128_   (2013-03-06 16:01) [32]


> Генерики в дельфи и далеко не лучшая реализация генериков,
>  конечно же. И сносно работает только начиная с ХЕ. Но люди,
>  хвалящие темплейты из плюсиков вызывают у меня недоумение.
>  Вы вообще сообщения об ошибках читать пробовали? Всё что
> угодно лучше, чем этот кал.

под clang - побывал. вполне жизнеспособно. Студийный компилятор действительно далек от совершенства.


> опаньки, наши поделки уже года два с ошибками работают,
> надо срочно переделать

я не в курсе, что там у вас за поделки и как они работают, но вот что написано в Generics.Collections
   // function ToArray: TArray<T>; // pending compiler support
Я так подозреваю, что URW1111 им мешал, самая частая ошибка во всем, касающемся дженериков.


 
DVM ©   (2013-03-06 16:08) [33]


> jack128_   (06.03.13 16:01) [32]

я не в курсе, что там у вас за поделки и как они работают, но вот что написано в Generics.Collections
  // function ToArray: TArray<T>; // pending compiler support

Сейчас там все нормально, по крайней мере в XE2/XE3, но не понятно, как оно могло вызывать internal error на каждом шагу, если было закомментировано изначально.


 
картман ©   (2013-03-06 16:11) [34]

> jack128_   (06.03.13 16:01) [32]

в моем Generics.Collections не написано))

ps. куды "цитировать" сховали?


 
RWolf ©   (2013-03-06 16:15) [35]


> куды "цитировать" сховали?

в кнопку > справа от поля ввода.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2013.07.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.52 MB
Время: 0.003 c
15-1362398967
Kerk
2013-03-04 16:09
2013.07.28
Обход графа


15-1362429004
Юрий
2013-03-05 00:30
2013.07.28
С днем рождения ! 5 марта 2013 вторник


15-1362341410
Хыхы
2013-03-04 00:10
2013.07.28
Singleton в Delphi


2-1354195227
ankazh
2012-11-29 17:20
2013.07.28
RichEdit и БД


2-1353496539
Xmen
2012-11-21 15:15
2013.07.28
Работа с потоком как организовать?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский