Re[12]: EntityFramework - тормоз
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 14.04.15 21:15
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

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


G>>Ну ок, возьми не C#, а любой другой статически типизированный язык. В любом языке все придет к формированию деревьев выражений на основе конструкций языка, которые потом надо будет отобразить на метаданные классов и на базе этого построить SQL. Так что накладные расходы также будут присутствовать.


EP>Вот конкретный пример: compile-time template engine
Автор: Evgeny.Panasyuk
Дата: 12.10.14

EP>В compile-time делается анализ строки, и на основе этого генерируется определённая последовательность вызовов, результирующий ASM код получается идентичным тому, который соответствует полностью ручному оптимальному коду.
А при чем тут Linq? Он как раз может не имея целого запроса в одном месте собрать его по кускам. Обратная задача не нужна.

EP>Причём формирование деревьев выражений на основе конструкций языка это более простая задача чем анализ строк — и в C++ это было доступно аж с первой версии стандарта C++98. И на основе этого (compile-time обход деревьев выражений на основе конструкций языка) создано уже много разных EDSL (Embedded Domain Specific Language) библиотек.

Давай уже работающий пример (аналог Linq, не уступающий по мощности и с типизацией) в студию. То что в теории все хорошо — я верю, на практике ничего пока не видно.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.