Здравствуйте, Evgeny.Panasyuk, Вы писали:
EP>Здравствуйте, koodeer, Вы писали:
K>>Когда в теме сошлись такие дотнетчики, как gandjustas, и плюсисты, как Evgeny.Panasyuk и alex_public, мне стало ясно, как будет идти их общение. Крестоносцы будут говорить, что в плюсах можно сделать всё (и даже больше!), а шарписты требовать: ты покажи именно то, что я написал!
EP>Тут всё же дискуссия не о том как сделать LINQ в C++, а о том что этот самый LINQ в большинстве случаев может быть/(мог бы быть) более оптимальным, даже в том же C#.
Но вот примеров чего угодно с возможностями linq для построения запросов к базе мы не увидели. То что некоторые примеры на примитивных случаях работают быстрее не имеет никакой практической пользы.
EP>В рамках C++ это возможно, но с заморочками, так ещё нет встроенного compile-time reflection. В рамках D и Nemerle это тоже возможно, но намного проще чем в C++. А вот в C#, насколько я вижу, это невозможно, но вполне реализуемо в качестве внешнего инструмента.
Я вроде писал тебе про compiled query. В статическом случае все запросы прогоняются через него. А "с заморочками" вполне можно написать плагин компилятора, который эту операцию автоматизирует. То есть все статические запросы (определенные целиком внуnри метода без ветвлений), можно превратить в статические поля, которые созданы с помощью compiled query. И будут нулевые затраты.
Но это даст такой мизер, что имеет смысл заниматься минимум при масштабе StackOverflow.