Re[25]: LINQ только для РСУБД!
От: Lloyd Россия  
Дата: 23.11.09 23:13
Оценка:
Здравствуйте, Gaperton, Вы писали:

Y>>З.З.Ы. С того времени как я сказал, что мне общаться с тобой не интересно ничего не поменялось...


G>Не интересно — не общайся, в чем проблема-то? Ты спрашивал вариант с циклом — я привел. Два варианта, в одном из которых показал влияние на результат функции Filter. Что ты так расстроился-то? Ты решив задачу через линк, никакого подвига не совершил — все что ты сделал, это записал цикл необычным образом. От этого в самом деле никакого выигрыша нет .


Мне вот что инетерсно: ты считаешь, что все, кто использует Linq-to-Objects, делают это не по причине удобства, а по какой-то другой причине? Или ты считаешь, что никто Linq-to-Objects не использует?
Re[27]: LINQ только для РСУБД!
От: VladD2 Российская Империя www.nemerle.org
Дата: 23.11.09 23:33
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>Ну, мне остается только процитировать тебя же (извини, если не точно): человек либо понимает, либо нет.


Тут другой случай. Человек приципиально не хочет понимать и рисует у себя в мозгу картины которые ему же хочется видеть. В общем, полный отрыв от реальности.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[24]: LINQ только для РСУБД!
От: IT Россия linq2db.com
Дата: 23.11.09 23:34
Оценка: +4
Здравствуйте, Gaperton, Вы писали:

G>Ну, короче, подводя промежуточные итоги. Ну, установили мы факт, что записываются циклы при помощи линка через жопу. Ну дальше-то что?


Я бы не стал судить о технологии на основании примеров, которые подбирались специально, чтобы посмотреть на неё в сценариях с нецелевым использованием.
Если нам не помогут, то мы тоже никого не пощадим.
Re[26]: LINQ только для РСУБД!
От: VladD2 Российская Империя www.nemerle.org
Дата: 23.11.09 23:58
Оценка:
Здравствуйте, Gaperton, Вы писали:

VD>>Linq — это копия хаскелевского прилю.


G>О! Это все меняет


Ой, и правда... Что может это изменить если ты уже зачислил Линк в средства доступа к РСУБД.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[25]: LINQ только для РСУБД!
От: Gaperton http://gaperton.livejournal.com
Дата: 24.11.09 00:54
Оценка:
Здравствуйте, IT, Вы писали:

G>>Ну, короче, подводя промежуточные итоги. Ну, установили мы факт, что записываются циклы при помощи линка через жопу. Ну дальше-то что?


IT>Я бы не стал судить о технологии на основании примеров, которые подбирались специально, чтобы посмотреть на неё в сценариях с нецелевым использованием.


А и не сужу о технологии. Я характеризую ровно то, что вижу, и не более того.

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

Я спрашиваю: "дальше что", то есть, ты-то что думаешь об этих примерах сам? Вот честно? Например, ты можешь сказать что-то вроде "да, действительно, вы подобрали поганые примеры, эти примеры не раскрывают силу технологии, она сильна в другом". И показать другой короткий пример, который наоборот, сильный. С реляционной БД поработай, там. Шутка, шутка. Вэлкам, дружище. Мне пока нравится, как мы друг другу код демонстрируем. Движуха какая-то. Прикольно.
Re[26]: LINQ только для РСУБД!
От: Gaperton http://gaperton.livejournal.com
Дата: 24.11.09 00:59
Оценка: +3
Здравствуйте, Lloyd, Вы писали:

L>Мне вот что инетерсно:

Интересно — отвечаем.

L>ты считаешь, что все, кто использует Linq-to-Objects, делают это не по причине удобства, а по какой-то другой причине?


Я считаю, что приведенные примеры не показывают силу Linq-to-Objects. Она, по всей видимости, проявляется на каких-то других задачах.

И второе — да, я таки считаю, что отчасти линк используют на ровном месте просто "потому, что это круто". Я наблюдал подобную мотивацию и поведение у многих программистов на С++, когда они применяют шаблоны. И за некоторыми из которых вычищал от шаблонов а-ля Александреску код. Я думаю, частично подобная мотивация присутствует и у некоторых программистов на линк.

L> Или ты считаешь, что никто Linq-to-Objects не использует?


Нет, я так не считаю.
Re[27]: LINQ только для РСУБД!
От: Lloyd Россия  
Дата: 24.11.09 01:19
Оценка:
Здравствуйте, Gaperton, Вы писали:

L>>ты считаешь, что все, кто использует Linq-to-Objects, делают это не по причине удобства, а по какой-то другой причине?


G>Я считаю, что приведенные примеры не показывают силу Linq-to-Objects. Она, по всей видимости, проявляется на каких-то других задачах.


G>И второе — да, я таки считаю, что отчасти линк используют на ровном месте просто "потому, что это круто".


Но при этом, судя по твоим постам, linq ты почти не знаешь и в практике не использовал. Но те, кто его знают, использовал и продолжает использовать, по твоему мнению используют его просто "потому, что это круто".

Теперь посмотри на это со стороны. Не находишь картинку несколькой странной и наталкивающей на размышления?
Re[33]: LINQ только для РСУБД!
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 24.11.09 01:44
Оценка:
Здравствуйте, Gaperton, Вы писали:

ГВ>>Да нет, я как раз именно протягивание состояния имею в виду. А в случае Go, кстати, состояние неплохо заворачивается в горутину. Что ты думаешь, я тут крыльями машу?

G>Ну, если ты поэтому машешь крыльями, то тебе стоит обратить внимание на Эрланг.

Скажем так — не в последнюю очередь.

G>Там заворачивание состояния в процесс (==goroutine) ходовая техника, ибо по другому мутабельное состояние заворачивать не то, что-бы низя. А неидеоматично. То есть, в Эрланге практика проектирования такова, что вместо объектов массово применяются процессы.


Спасибо, я в курсе более или менее. Только вот к Эрлангу бы добавить ещё C-подобную семантику и синтаксис (да-да, чтобы он был императивным по сути), и сопоставимое c С быстродействие...
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[25]: LINQ только для РСУБД!
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 24.11.09 01:48
Оценка: -1
Здравствуйте, IT, Вы писали:

G>>Ну, короче, подводя промежуточные итоги. Ну, установили мы факт, что записываются циклы при помощи линка через жопу. Ну дальше-то что?

IT>Я бы не стал судить о технологии на основании примеров, которые подбирались специально, чтобы посмотреть на неё в сценариях с нецелевым использованием.

В десятку! Значит — есть некое целевое использование? Последовательности — нецелевое, иерархии — нецелевое, а где ж тогда целевое?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[28]: LINQ только для РСУБД!
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 24.11.09 01:53
Оценка:
Здравствуйте, Lloyd, Вы писали:

G>>Я считаю, что приведенные примеры не показывают силу Linq-to-Objects. Она, по всей видимости, проявляется на каких-то других задачах.

G>>И второе — да, я таки считаю, что отчасти линк используют на ровном месте просто "потому, что это круто".
L>Но при этом, судя по твоим постам, linq ты почти не знаешь и в практике не использовал. Но те, кто его знают, использовал и продолжает использовать, по твоему мнению используют его просто "потому, что это круто".

Не надо обобщать. Речь о части применений. Какой именно части — вопрос, на который никто не ответит.

L>Теперь посмотри на это со стороны. Не находишь картинку несколькой странной и наталкивающей на размышления?


Угу. Раньше вместо LINQ-еров отгавкивались C++-ники.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[22]: Я всё ж таки вот, о чём думаю
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 24.11.09 01:54
Оценка:
Здравствуйте, IT, Вы писали:

IT>В общем, всё это уже становится не интересным. Где не работает Linq я тебе и сам могу сказать. Linq не работает на деревьях и иерархиях, там, где для обработки требуются рекурсивные алгоритмы.


Ну — упс, приехали. А как же Linq2XML?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[25]: LINQ только для РСУБД!
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 24.11.09 01:56
Оценка:
Здравствуйте, Lloyd, Вы писали:

G>>Ну, короче, подводя промежуточные итоги. Ну, установили мы факт, что записываются циклы при помощи линка через жопу. Ну дальше-то что?


L>По-моему, все, что ты доказал — это то, что в go с помощью костылей можно съимитировать то, что на linq-е делается просто и красиво.


Что-то больше похоже на обратную ситуацию: что таки не всякий цикл по данным должен реализовываться LINQ-ом.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[23]: Я всё ж таки вот, о чём думаю
От: Lloyd Россия  
Дата: 24.11.09 02:00
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

IT>>В общем, всё это уже становится не интересным. Где не работает Linq я тебе и сам могу сказать. Linq не работает на деревьях и иерархиях, там, где для обработки требуются рекурсивные алгоритмы.


ГВ>Ну — упс, приехали. А как же Linq2XML?


А где там работа с деревьями?
Re[24]: Я всё ж таки вот, о чём думаю
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 24.11.09 02:05
Оценка:
Здравствуйте, Lloyd, Вы писали:

IT>>>В общем, всё это уже становится не интересным. Где не работает Linq я тебе и сам могу сказать. Linq не работает на деревьях и иерархиях, там, где для обработки требуются рекурсивные алгоритмы.

ГВ>>Ну — упс, приехали. А как же Linq2XML?
L>А где там работа с деревьями?

Неужто XML деревом быть перестал? Сильное колдунство!
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[25]: Я всё ж таки вот, о чём думаю
От: Lloyd Россия  
Дата: 24.11.09 02:27
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>>>Ну — упс, приехали. А как же Linq2XML?

L>>А где там работа с деревьями?

ГВ>Неужто XML деревом быть перестал? Сильное колдунство!


xml-вполне себе дерево, да вот только Linq2Xml (в части linq) не дает никаких средств для работы с xml-ем как с деревом.
Re[25]: LINQ только для РСУБД!
От: no4  
Дата: 24.11.09 04:23
Оценка: +1 :)
Здравствуйте, IT, Вы писали:

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


G>>Ну, короче, подводя промежуточные итоги. Ну, установили мы факт, что записываются циклы при помощи линка через жопу. Ну дальше-то что?


IT>Я бы не стал судить о технологии на основании примеров, которые подбирались специально, чтобы посмотреть на неё в сценариях с нецелевым использованием.


И еще — не доказывают ли примеры, что lisp comprehensions в haskell были созданы для работы с РСУБД, но по какой-то странной ошибке природы они с ними работать не умеют?
Re[26]: Я всё ж таки вот, о чём думаю
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 24.11.09 04:30
Оценка:
Здравствуйте, Lloyd, Вы писали:

ГВ>>>>Ну — упс, приехали. А как же Linq2XML?

L>>>А где там работа с деревьями?
ГВ>>Неужто XML деревом быть перестал? Сильное колдунство!
L>xml-вполне себе дерево, да вот только Linq2Xml (в части linq) не дает никаких средств для работы с xml-ем как с деревом.

Упс №2... И ведь верно.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[26]: LINQ только для РСУБД!
От: IT Россия linq2db.com
Дата: 24.11.09 05:27
Оценка: +3 :))
Здравствуйте, Gaperton, Вы писали:

IT>>Я бы не стал судить о технологии на основании примеров, которые подбирались специально, чтобы посмотреть на неё в сценариях с нецелевым использованием.

G>А и не сужу о технологии. Я характеризую ровно то, что вижу, и не более того.

G>Давай я обойдусь без эмоциональных характеристик, это, наверное было неправильно с моей стороны (хоть и весело — ведь правда циклы и правда через, гхм...). Хорошо. Я вижу на этих примерах, что обычные циклы можно записать необычным способом, ничего по сути не наиграв. И все. То есть, в данном классе задач преимущество не наблюдается. Выводов обо всей технологии на их основании я не делаю, это действительно глупо.


Я очень рад это слышать.

G>Я спрашиваю: "дальше что", то есть, ты-то что думаешь об этих примерах сам? Вот честно? Например, ты можешь сказать что-то вроде "да, действительно, вы подобрали поганые примеры, эти примеры не раскрывают силу технологии, она сильна в другом".


Я думаю, что примеры подобраны правильно, чтобы продемонстрировать нецелевое использование предмета обсуждения. Мы, в свою очередь, пытались доказать не то, что "Linq is the best of the best of the best", а показать, что с помощью Linq можно решать и такие задачи. Если бы ГВ спросил меня как бы я решал подобную задачу в реальности, а не в сферичности, то я бы ответил, что скорее всего обошёлся бы банальным циклом, т.к. для меня важнее простота и гибкость кода. С другой стороны твои комментарии вроде "Так держать" свидетельствуют о желании найти любой недостаток, в который можно было бы ткнуть пальцем как в том анекдоте:

Вышли из леса суровые русские мужики и увидели японскую бензопилу.
— А-а, б**! — сказали суровые русские мужики и засунули в пилу щепку.
— Вжик! — сказала пила и распилила щепку.
— У-у, б**! — сказали суровые русские мужики и засунули в пилу доску.
— Вжжик! — сказала пила и распилила доску.
— У-у, б**! — сказали суровые русские мужики и засунули в пилу бревно.
— Вжжжжик! — сказала пила и распилила бревно.
— У-у, б**!!! — сказали суровые русские мужики и засунули в пилу рельс.
— Хррр-дзинь — сказала пила и сломалась.
— А-а, б**... — сказали суровые русские мужики и пошли валить лес топорами.

Если нам не помогут, то мы тоже никого не пощадим.
Re[26]: LINQ только для РСУБД!
От: IT Россия linq2db.com
Дата: 24.11.09 05:36
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

G>>>Ну, короче, подводя промежуточные итоги. Ну, установили мы факт, что записываются циклы при помощи линка через жопу. Ну дальше-то что?

IT>>Я бы не стал судить о технологии на основании примеров, которые подбирались специально, чтобы посмотреть на неё в сценариях с нецелевым использованием.

ГВ>В десятку! Значит — есть некое целевое использование? Последовательности — нецелевое, иерархии — нецелевое, а где ж тогда целевое?


Последовательности как раз целевое. Для последовательностей, кстати, в C# добавлен foreach и yield с сотоварищами. Но в них работа с состоянием и индексами выглядит столь же нелепо как и в Linq. Тем не менее ты сам подобными решениями, как я понял, не брезгуешь.

Иерархии подразумевают принципиальной другой способ обработки данных, который в C# пока вообще нельзя выразить лаконично. Для этого нужно добавлять в язык локальные функции.
Если нам не помогут, то мы тоже никого не пощадим.
Re[29]: LINQ только для РСУБД!
От: IT Россия linq2db.com
Дата: 24.11.09 05:38
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Угу. Раньше вместо LINQ-еров отгавкивались C++-ники.


Первое китайсое.
Если нам не помогут, то мы тоже никого не пощадим.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.