Re[159]: Тормознутость и кривость linq. Compile-time EDSL DB
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 09.07.16 06:29
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>Здравствуйте, Serginio1, Вы писали:


EP>>>>>И где тут хотя бы что-то из подчёркнутого? Хотя бы отдалённо напоминающее? Споришь с собственным воображением?

S>>>> Достаточно. То есть С++ значительно лаконичнее линка, ибо это пишут монстры от Сшарп. Твои слова.
EP>>>Причём тут LINQ вообще? Речь шла про реализацию алгоритма поиска минимального элемента
S>> Во во. Там как раз было расширение для Linq . Казалось бы причем тут Linq?

EP>Не причём — речь про раздутую реализацию. Что же там снаружи рояли не играет.

EP>То есть из того что я сказал что реализация алгоритма раздутая, ты пришёл к выводу "C++ лучший язык для работы с БД"

Твоя полная цитата, без твоих обрезок:


По алгоритмической выразительности среди мэйнстрима C++ сейчас впереди всех.
Для сравнения C#, свежий пример
— на C++ десять строк (+ может несколько wrapper'ов, это максимум десятки строк), на C# — несколько сотен строк кода (è1 + è2) причём включая кодогенетратор, который генерирует èнесколько тысяч строк, а алгоритм-то совсем пустяковый.

Ещё ДО отрабатывания T4, кода на C# больше, и его труднее поддерживать, ибо это склейка кода как текста.


Ты утверждаешь, что на C# нужно писать больше кода. Если бы ты сказал, что можно на C# сделать код значительно компактнее
то я бы понял, что данная реализация неоправданно раздута.
Ты же делаешь вывод по данному коду, что

По алгоритмической выразительности среди мэйнстрима C++ сейчас впереди всех

Или я опять, что то выдернул. Я тебе показал, что на Linq это будет лаконичнее чем на C++
https://rsdn.ru/forum/philosophy/6489108.1
Автор: Evgeny.Panasyuk
Дата: 02.07.16


Отличия минимальные — auto, return и скобочки.


То есть про утверждение, "По алгоритмической выразительности среди мэйнстрима C++ сейчас впереди всех" сильно преувеличено?
S>>>>А Линк применяется и для БД, а значит и С++ лучший язык и для БД. Он же самый выразительный.
EP>>>Ещё раз, приведи пруфлинки на подчёркнутое. То есть "быстрее в 2 раза" и "C++ лучший язык для работы с БД".
S>> То есть С++ медленне? Тогда прошу прощения?

EP>С логикой беда? Я прошу привести пруфлинк на то что я говорил "быстрее в 2 раза", всё.

Мне лень искать, значит C# быстрее? Молчание знак согласия? И я зря просил прощения?

S>>При этом ты приводишь ассемблерный код? Дать пруф?


EP>Я действительно приводил ассемблерный код, вот только мне нужен пруф на "быстрее в 2 раза", а не на ассемблерный код

Ну тогда во сколько? Или я на порядки ошибся?
S>> Но я тебе про тот алгоритм показал, что он будет короче на C# чем на С++. И ты с эти согласился.

https://rsdn.ru/forum/philosophy/6489092.1
Автор: Evgeny.Panasyuk
Дата: 02.07.16

Вот здесь ты приводишь ссылку на AWK где говрится про тормознутость компараторов, которые как на простых типах тормозят в 2 раза за счет неилайнового вызова метода.
То есть ты прямо не говорил, но привел пример почему C# тормознутее С++.
И так за каков поря док мне перед тобой извиниться?

EP>Алгоритм не короче, а намного длиннее.

EP>Короче лямбда, у которой меньше скобочек, нет auto и return — но это всё ортогонально реализации алгоритма

То есть про утверждение, "По алгоритмической выразительности среди мэйнстрима C++ сейчас впереди всех" сильно преувеличено?


S>>А вот признать свои слова ошибочными по отношению выразительности C# это ты не можешь.


EP>Сколько строк для min/max item в CodeJam? (до генерации)

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

"По алгоритмической выразительности среди мэйнстрима C++ сейчас впереди всех"

Или я опять, что то придумал?
Опять же про Expression Trees . В ваш спор про динамические запросы, и про динамическую инициализацию провайдера.
Тобой и Алексом было выдвинуто решение о том, что на этапе компиляции зашиваются все возможные реализации, а затем свичем выбираются нужные
провайдеры и динамическая склейка запроса? То есть, то что в .Net делается через динамическую компиляцию и ET.

То есть еще это еще один довод о
"По алгоритмической выразительности среди мэйнстрима C++ сейчас впереди всех"?
То есть алгоритмически лучше зашивать все возможные варианты, нежели использовать динамическую компиляцию и Expression Trees ?
и солнце б утром не вставало, когда бы не было меня
Отредактировано 09.07.2016 7:42 Serginio1 . Предыдущая версия . Еще …
Отредактировано 09.07.2016 6:36 Serginio1 . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.