Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, bazis1, Вы писали:
B>>Ну тогда надо сравнивать код реализации итератора с кодом вашего вундер-компилятора
VD>Тебе пример и на шарпе написали. Подразумевается, что эта функция может вызваться последовательно для считывания отдельных строк из потока.
VD>Но вряд ли речь идет о чтении данных. Человек вам пытался пример показать. Но вы снова работаете мартышками. То к темени очки приложите, то к линк-у...
B>>Ты хочешь понять, почему у вас мало юзеров, или меня убедить что завтра все вдруг оценят ваш немерле и пойдут им пользоваться?
VD>У кого у нас? Мы сами юзеры. А вы мартышки из известной басни. И заняться вам не чем. Вот вы здесь и занимаетесь гоном на вещи которые понять не смогли.
Нет проблем. Добавил Nemerle в фильтр рядом с политикой. Больше беспокоить ваше царство не буду. Удачи.
Re[5]: Nemerle через 5 лет - выстрелит или скончается?
Я не могу понять, как и зачем люди в глубине ветки пытаются переписывать и рефакторить — это явно бесполезное занятие.
Давай, разберем тобой написанное: >Человек, не разбираясь, например в танцах или боевых исскуствах, может посмотреть как двигается исполнитель и оценить технику исполнения >ТекСтрока = null; >ТекСтрока = стр.Split( { ';' } ); >Вместо ветвлений if/else — линейный match.
с теми же самыми проблемами.
Я смотрю на технику исполнения, и не понимаю, почему этот пример кода вообще обсуждается в траде.
Тут в одном методе собрался весь ад, который люди пытаются устранить, используя концепции функционального программирования.
>protected override
Этому проектированию явно не хватает анемичности
>var стр = ПотокЧтения.ReadLine();
У этого кода избыток побочных эффектов (неявное IO)
>ТекСтрока = null;
У этого кода избыток побочных эффектов (мутабельный стейт)
>return ЧитатьСтрокуБезПроверок();
Надуманные глупости, ведь никто, пишущий в стиле "ТекСтрока = null" не станет звать рекурсию.
Резюмируя: нельзя вот так просто взять кусок неадекватного кода, "присахарить", и утверждать, что на Немерле такая ***ня пишется лучше.
Этот пример демонстрирует только проблемы Немерле: отсутствие не нуллабельных классов, отсутствие чистых функций, подверженность ООП-"декомпозиции".
BC>>>Каким образом программа на Немерле будет работать быстрее чем на Си ? _>>А если критическая важная часть будет компилироваться на CUDA или FPGA BC>Сколько кода уже скомпилировано в продакшин Немерле->CUDA\FPGA ?
В вопросах "сколько кода в продакшн" последние лет 40 всех заруливает Кобол. Главное, я так понимаю, вопрос "каким образом" с повестки дня уже снят?
BC>А что там курить ? Шарп\Немерле по сравнению с Си скриптовый язык.
И как же я в студии смотрю show disassembly в .NET отладчике? Есть идеи, как такое вообще возможно для языков которые ты называешь скриптовыми?
BC>Ты вот эту штучку покури, например как на Си написана обычное Trie, может BC>горячий пыл CUDA\FPGA\Генераторы Шмырыгаторы поутихнет. BC>http://judy.sourceforge.net/doc/shop_interm.pdf
Посмотрел. Показалось что там нет ничего относящегося к теме которую мы тут сейчас обсуждаем.
Re[34]: Nemerle через 5 лет - выстрелит или скончается?
Здравствуйте, BoobenCom, Вы писали:
BC>А что там курить ? Шарп\Немерле по сравнению с Си скриптовый язык.
Разве что с точки зрения полного дилетанта.
BC>Ты вот эту штучку покури, например как на Си написана обычное Trie, может BC>горячий пыл CUDA\FPGA\Генераторы Шмырыгаторы поутихнет. BC>http://judy.sourceforge.net/doc/shop_interm.pdf
Какая-то детская пенесометрия.
И глупая к тому же, так как если алгоритм параллелится на CUDA, то тягаться с ним способом битовыжимания на ЦП является полнейшим идиотизмом.
ЗЫ
Короче, уж пенесометрия тут точно офтоп. Завязывайте пока не поздно.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[10]: Nemerle через 5 лет - выстрелит или скончается?
Не смеши! Напиши DataReader без побочных эффектов. Без IO и без мутабельного стейта.
>>return ЧитатьСтрокуБезПроверок(); STD>Надуманные глупости, ведь никто, пишущий в стиле "ТекСтрока = null" не станет звать рекурсию.
STD>Резюмируя: нельзя вот так просто взять кусок неадекватного кода, "присахарить", и утверждать, что на Немерле такая ***ня пишется лучше.
STD>Этот пример демонстрирует только проблемы Немерле: отсутствие не нуллабельных классов, отсутствие чистых функций, подверженность ООП-"декомпозиции".
... << RSDN@Home (RF) 1.2.0 alpha 5 rev. 58>>
♠♠♥♠♠♦♥
Re[8]: Nemerle через 5 лет - выстрелит или скончается?
Здравствуйте, bazis1, Вы писали:
B>>>Если не надо читать весь файл сразу, то можно вместо ReadAllLines сделать свою версию на yield return. Издержки на создание итераторов все равно будут минимальными по сравнению с disk IO. DS>>Чиать надо построчно — реализация аналогична IDataReader. DS>>Ну а теперь приведи весь код с созданием итератора. И мы посмотрим на твою одну строку B>Ну тогда надо сравнивать код реализации итератора с кодом вашего вундер-компилятора
Съехал с темы. Слив засчитан.
Значит одной строчкой итератор не создать.
... << RSDN@Home (RF) 1.2.0 alpha 5 rev. 58>>
♠♠♥♠♠♦♥
Re[9]: Nemerle через 5 лет - выстрелит или скончается?
Здравствуйте, DarthSidius, Вы писали:
DS>Здравствуйте, bazis1, Вы писали:
B>>>>Если не надо читать весь файл сразу, то можно вместо ReadAllLines сделать свою версию на yield return. Издержки на создание итераторов все равно будут минимальными по сравнению с disk IO. DS>>>Чиать надо построчно — реализация аналогична IDataReader. DS>>>Ну а теперь приведи весь код с созданием итератора. И мы посмотрим на твою одну строку B>>Ну тогда надо сравнивать код реализации итератора с кодом вашего вундер-компилятора
DS>Съехал с темы. Слив засчитан. DS>Значит одной строчкой итератор не создать.
Ага, нужно ВНЕЗАПНО аж целых 3:
public static IEnumerable<string> ReadLineByLine(string fn)
{
using (var sr = File.OpenText(fn))
while (!sr.EndOfStream)
yield return sr.ReadLine();
}
Dispose() по выходу из foreach() вызывается, если что. Причем, этот код пищется один раз, запихивается в какой-нибудь внутренний AcmeUtilityLib и вызывается не сложнее File.ReadAllLines().
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, bazis1, Вы писали:
B>>Нет проблем. Добавил Nemerle в фильтр рядом с политикой. Больше беспокоить ваше царство не буду. Удачи.
VD>Удачно потрясти!
Продолжая аналогию, я-таки открыл для себя, что купить банан в магазине выходит дешевле, чем ехать на плантацию и трясти пальму самому и поэтому с удивлением смотрю на людей, порочащих всеобщее применение инновационной палке, позволяющей сбивать бананы в 2 раза быстрее...
Re[12]: Nemerle через 5 лет - выстрелит или скончается?
Здравствуйте, bazis1, Вы писали:
B>Продолжая аналогию, я-таки открыл для себя, что купить банан в магазине выходит дешевле, чем ехать на плантацию и трясти пальму самому и поэтому с удивлением смотрю на людей, порочащих всеобщее применение инновационной палке, позволяющей сбивать бананы в 2 раза быстрее...
Я сморю тебе с нами понравилось! Оставайся, только смени свой менторский тон на дружелюбный. Мы тебе много интересного можем рассказать.
Все же новые открытия в области компьютерной науки намного интереснее открытий в области добычи бананов.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[12]: Nemerle через 5 лет - выстрелит или скончается?
Здравствуйте, bazis1, Вы писали:
B>Продолжая аналогию, я-таки открыл для себя, что купить банан в магазине выходит дешевле, чем ехать на плантацию и трясти пальму самому и поэтому с удивлением смотрю на людей, порочащих всеобщее применение инновационной палке, позволяющей сбивать бананы в 2 раза быстрее...
Вот, уже аналогии более правильные...
Только банан купленный в магазине зеленный и невкусный — ни запаха, ни вкуса, ни витаминов. Один понос от него.
А банан с пальмы — ароматный, спелый, вкусный, полезный.
Какой банан выбираешь ты?
... << RSDN@Home (RF) 1.2.0 alpha 5 rev. 58>>
♠♠♥♠♠♦♥
Re[10]: Nemerle через 5 лет - выстрелит или скончается?
DS>>Значит одной строчкой итератор не создать. B>Ага, нужно ВНЕЗАПНО аж целых 3:
Так и там тоже 3 строчки. И все они перед глазами, все ясно, что и как.
Но вот до сих пор не пойму, речь шла о развесистых деревьях if/else vs match — на что я привел маааленький пример. Тут же нашлась куча критиков, но весь издаваемый ими шум не по теме:
— один сказал, что все одинаково
— другой сказал, что в глазах рябит от палочек и скобочек
— третий, что здесь надо делать итераторы и сувать их как можно глубже... в библиотеку
— четвертый, что: КАК-ТАК! Здесь же IO и код не анемичный
— пятый вообще спорит о том, что нельзя из жигулей сделать порш, потому что "фича" в его понимании это тюнингованный выхлоп
Ну и где конструктив?
... << RSDN@Home (RF) 1.2.0 alpha 5 rev. 58>>
♠♠♥♠♠♦♥
Re[7]: Nemerle через 5 лет - выстрелит или скончается?
Здравствуйте, VladD2, Вы писали:
D>Это еще одна фича языка — гарантированная оптимизация (переписывание в цикл) концевой рекурсии.
VD>Так что прибавь в этот пример еще цикл на шаре, так как в нем оптимизация концевой рекурсии не гарантируется.
А ну да, протупил, она ж концевая.
WBR, Igor Evgrafov
Re[3]: Nemerle через 5 лет - выстрелит или скончается?
Здравствуйте, VladD2, Вы писали:
VD>Лучше скажи, как может быть мертво то, чем пользуются люди?
Ты это про 2,5 энтузиастов + авторов компилятора? Люди пользуются Scala, Clojure и это понятно почему и дальше будет так же. Но вот в случае с Немерле народу не прибавится.
VD>Вот сколько у тебя продуктов на Расте написано? У меня на Немерле где-то 10 приложений. В том числе Нитра, которая уже по сложности переплюнула Немерл.
А причем тут Раст? Я на него, по сравнению с твоими затратами ресурсов на Немерле, времени вообще не трачу. Взлетит – хорошо, уже в курсе что это, не взлетит – так C++17 очень прикольно выглядит
Но в случае с Немерле наблюдается что-то странное, даже более жесткое чем движения вокруг D.
Относится к теме напрямую.
Выше тип проекта который можно написать только на Си.
На Шарпе или Немерле его писать или невозможно или не имеет смысла.
А вот как найти тип проекта, который имеет смысл писать только на Немерле и невозможно написать на Шарп и Си — вот в этом вопрос
Если Вы сможете найти такие типы проектов — то легко получите свою долю рынка
Re[36]: Nemerle через 5 лет - выстрелит или скончается?
Здравствуйте, BoobenCom, Вы писали:
BC>А вот как найти тип проекта, который имеет смысл писать только на Немерле и невозможно написать на Шарп и Си — вот в этом вопрос
Это такой же глупый вопрос, как найти дорогу, где жигули проедет, а запорожец — нет. ОБЕ машины могут преодолеть любые дороги, но на одной из них это можно сделать гораздо быстрее и комфортнее. Зачем тогда гемороить жизнь?
Кроме того, разработка — это не просто студенческое "написал-забыл" — ещё есть СОПРОВОЖДЕНИЕ. И чем проще и высокоуровневее программа, тем легче потом в неё вникать. Немерля/Нитра тем и хороши, что выводят программинг на новый уровень: от тупого кодирования на ЯОН к миру выразительных DSL!
Re[17]: Nemerle через 5 лет - выстрелит или скончается?
Здравствуйте, btn1, Вы писали:
B>Это такой же глупый вопрос, как найти дорогу, где жигули проедет, а запорожец — нет. ОБЕ машины могут преодолеть любые дороги, но на одной из них это можно сделать гораздо быстрее и комфортнее. Зачем тогда гемороить жизнь?
Так в том то и суть, что люди не видят разницу между жигулями и запорожцем и нихотят "платить больше", в смысле переучиватся.
Дайте людям Уазик и скажите, что ваше жигули в пролете на снежных дорогах и люди купят Уазики, даже если в гараже будет стоять сразу две машины.
Re[4]: Nemerle через 5 лет - выстрелит или скончается?
Здравствуйте, kaa.python, Вы писали:
KP>Ты это про 2,5 энтузиастов + авторов компилятора?
А ты ведешь учет пользователей?
KP>Люди пользуются Scala, Clojure и это понятно почему и дальше будет так же. Но вот в случае с Немерле народу не прибавится.
Ты это про 2.5 пользователя? Я вот ни одного человека не знаю кто писал бы на Клозьре. Ну, и Клозюр — это язык с 50-летней историей, а не новояз.
Из тех кто пишет на скале я знаю ровно одного человека. Как-то не густо для популярного языка.
Вот явщиков и шарпщиков хоть отбавляй.
Так что не выдумывай.
KP>А причем тут Раст? Я на него, по сравнению с твоими затратами ресурсов на Немерле, времени вообще не трачу. Взлетит – хорошо, уже в курсе что это, не взлетит – так C++17 очень прикольно выглядит
При том, что ты тут пиаришь куда более дохлый язык и ходишь по глумиться над языком который успешно используется и развивается уже много лет.
KP>Но в случае с Немерле наблюдается что-то странное, даже более жесткое чем движения вокруг D.
Со всеми языками наблюдается одно и то же. Без пиара и бабла они продвигаются очень тяжело. Просто лучшего языка явно не достаточно.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.