Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.192] |
|
|
Правила раздела:
| Страницы: (495) « Первая ... 430 431 [432] 433 434 ... 494 495 ( Перейти к последнему сообщению ) |
Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
|
Сообщ.
#6466
,
|
|
|
|
|
Сообщ.
#6467
,
|
|
|
|
Цитата D_KEY @ ![]() ![]() instance ScalarProduct a => ScalarProduct (Cons a) where scalarProduct (Cons n1 a1) (Cons n2 a2) = n1 * n2 + scalarProduct a1 a2 Во что, согласно твоему подходу, должен быть скомпилирован такой инстанс? в что-то вроде ![]() ![]() compiler.instances[ScalarProduct, Cons] = new Instance { scalarProduct = new Function (c1, c2) { // compile body } } |
|
Сообщ.
#6468
,
|
|
|
|
Что-то меня на этой неделе переклинило, я взял себя в руки и допилил-таки почти до конца свои мультиметоды. Дореализовано:Оптимизирована внутренняя кухня. Теперь параметры с восстановленными типами не накапливаются в кортежах, которых в результате создавалось столько, сколько параметров у мультиметода. Вместо этого используется исходный кортеж, ссылка на который и трансмитится вплоть до конкретного диспетчера, и только там выполняются все касты. Там что передача по значению тяжёлых раннесвязываемых объектов теперь имеет ту же сложность, что и при обычном вызове функции - одно копирование. Так же реализован поиск самого базового класса в списке типов по методу Рана Шарони. Так что порядок классов в списке может быть совсем произвольный, не требуется последним вставлять базовый для всех.
Из недостатков.Осталось только причесать, покоментить, очень сильно потестировать и можно в буст . Добавлено Да, сложность осталась прежней - два виртуальных вызова на каждый позднесвязываемый параметр. Всё остальное обрабатывается в статике, весьма хорошо оптимизируется, поэтому основным оверхедом будут вызовы конструкторов копии для объектов, передаваемых по значению. |
|
Сообщ.
#6469
,
|
|
|
|
Qraizer
линк?.. |
|
Сообщ.
#6470
,
|
|
|
|
Ну, ещё причёсывается.
Вообще вот думаю, куда выложить. Сюда можно, тут где-то был предыдущий релиз. Можно в C++ Общие, но тема как бы не для обсуждения проблемы. Можно в FAQ, но на часто задаваемый вопрос вроде не тянет. В Наших Проектах вроде самое то, но как-то мелковато. |
|
Сообщ.
#6471
,
|
|
|
|
Цитата Qraizer @ Сюда можно, тут где-то был предыдущий релиз Ну, если хочешь пообсуждать свое изделие в холиварах, будь готов к холивар-стайл-обсуждению и вопросам с моей стороны |
|
Сообщ.
#6472
,
|
|
|
|
Та пообсуждать-то всегда пожалуйста, нет разницы где выкладывать. Но тут вряд ли имеет смысл как раз по этой причине. Холивары - не лучшее место для размещения кода, претендующего на объективный сравнительный анализ.
Добавлено Вроде причесал. Счас ещё хоть чуток тестов напишу. Нормальных, а не тех, что родились в процессе процесса. Что б можно было как примеры использования показывать. |
|
Сообщ.
#6473
,
|
|
|
|
может Github или Bitbucket?
|
|
Сообщ.
#6474
,
|
|
|
|
Не-не-не. Первая публикация будет исключительно на Сорсах. А дальше хоть в CodeProject, хоть в буст, хоть куда.
|
|
Сообщ.
#6475
,
|
|
|
|
Цитата Qraizer @ Не-не-не. Первая публикация будет исключительно на Сорсах. Why? |
|
Сообщ.
#6476
,
|
|
|
|
Qraizer, у нас вообще-то раздел есть для таких вещей: Наши Исходники
|
|
Сообщ.
#6477
,
|
|
|
|
Кстати, когда они уже будут?
|
|
Сообщ.
#6478
,
|
|
|
|
Этот процесс называется "начал писать программу-будильник и не заметил, как написал свою ОС". Как только начал тестить, заметил, чде что подпраивть и улучшить можно. Теперь не остановлюсь всё никак.
|
|
Сообщ.
#6479
,
|
|
|
|
Цитата Qraizer @ Этот процесс называется "начал писать программу-будильник и не заметил, как написал свою ОС". Как только начал тестить, заметил, чде что подпраивть и улучшить можно. Теперь не остановлюсь всё никак. Для этого исходники и открывают, чтобы увеличить количество участников и, как следствие, рабочего времени над исходниками. Конечно, если чувство собственника велико, то этот путь не подходит |
|
Сообщ.
#6480
,
|
|
|
|
А здесь что сравнивают: возможности самих языков или же их реализаций (компиляторов в среде запуска)?
|