Здравствуйте, WolfHound, Вы писали:
WH>Ну существующих? Да правда чтоли? WH>А компилируемость кода зависящая от порядка using'ов не проблема?
Если поправить макрос проблемы не будет.
VD>>Твоя тяга к обобщенным решениям чрезмерна. WH>А меня достала твоя тяга к костылям.
У меня нет тяги к костылям. Я просто реалист, а не идеалист. Проблема в общем решается в рамках Н2. Вот там и нужно прикладывать усилия. А тут нужно просто решить частную проблему (мелкую) и жить дальше.
VD>>По уму просто не надо было использовать тот же кейворд. WH>Не говори пользователям, что им делать, и они не скажут, куда тебе идти.
Давая я сам с ними пообщаюсь, а ты свою телепатию для более важных проблем оставишь.
VD>>Это не Н2, все же. WH>Я про него в первую очередь и говорю.
А чё про него говорить то? Его делать надо. В данной теме Н2 никого не интересует. Проблема в макросе немерла.
VD>>Там для всех остальных введены уникальные ключевые слова. А тут вдруг взяли и использовали такой же как стандартном макросе. WH>Там введены уникальные слова только из-за того что компилятор не позволил переопределить стандартные.
Вообще-то дело не в ключевых словах. Если грамматки будет отличаться, то совпадение ключевых слов проблем не создаст. Проблема в совпадающих грамматиках, и в том, что они не рассматриваются в контексте другой грамматики, а определятся отдельными макросами.
Но в общем, проблема есть. И что теперь? Все на свете имеет свои ограничения. Нужно учиться с ними жить. Великие всемогутеры бывают только в сказках.
Лучше ъподумай как убрать костыли из грамматики шарпа которую я написал. Наличие предикатов в операторах косяк ни чем не лучший. Это серьезно ограничит расширяемость грамматик.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Что там чинить то? Нужно просто проверить из этого макроса открыто ли пространство имен Nemerle.Imperative и если да, возвратить в своем выхлопе <[ Nemerle.Imperative.Return($e) ]>.
Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, Ziaw, Вы писали:
A>>>Если поменять порядок открытия пространст имен, то компилируется... Z>>А вот это как раз детская болезнь. WH>На самом деле починить это в общем случае очень сложно. WH>Но у меня есть мысли как это сделать. Может даже получится.
Можно аналог SFINAE сделать. Т.е. распарсить всеми возможными способами, потом отбросить варианты, приводящие к ошибке. Если после этого остался единственный вариант — его и использовать. Если больше одного — выводить ошибку про неоднозначноть.
PS Можно пофантазировать на тему указания приоритетов интерпретации выражений, чтобы, в случае неоднозначности, выбирался нужный вариант. Еще веселее было бы, если такие приоритеты могли задавать пользователи макросов (для каждого файла/проекта/...), а не хардкодились их авторами.
Здравствуйте, artelk, Вы писали:
A>Вот еще интересный случай:... A>Сложностей с ним не возникнет?
В рамках макроса comp конструкция return рассматривается не как макрос, а как синтаксическая конструкция, так что до его раскрытия не должно доходить.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Детские болезни N
От:
Аноним
Дата:
24.09.12 14:47
Оценка:
VD>Так же имеет смысл сделать импортирующее автодополнение для ключевых слов макросов (как оно есть сейчас для типов в VS 2010+).
да, это самое простое и полезное. using c Imperative по умолчанию. А>>потому что думать надо о реакциях человека, впервые чупающего язык
VD>Языку не так мало лет. За это время часто поднимался вопрос наличия var-, вместо mutable, но почти все кто немного привыкал к языку соглашались, то mutable лучше. С break и continue ты вроде бы первый обратился. Хотя может я просто позабыл что-то.
База пользователей слишком мала для статистической значимости. но надо думать наперед об удобстве, на то вы и генералы
Re[2]: Детские болезни N
От:
Аноним
Дата:
24.09.12 14:53
Оценка:
M>+100000000000!!!
во, не один я страдалец. тогда вот еще траблы для лечения:
-в дебагере отваливаются переменные участвующие в замыканиях
-генераторы нормально не дебажатся
а ведь для лечения нужно всего-то — не коверкать имена и объявить их public в классах-генераторах. уже писал. кто знает место коверкания — велкам.
Н-команде. баг фиксы эти нужны и для Н2 так что мол ждать не обязательно. отдельного человека на доработки уже сейчас надо (имеет смысл) подключить.
чтобы потом не нагонять как бы
Здравствуйте, hardcase, Вы писали:
H>Здравствуйте, Аноним, Вы писали:
А>>Учитывая, что N получил поддержку комерсов, было бы разумно избавить N от досадных косяков, присущих любительским продуктам. А>>К таким относится ошибки интеграции: А>>-IDE класс броузер показывает чистый лист, при отступном синтаксисе в подсказках к набираемому коду выскакивает только А>>окно "when, where, with" вместо подсказок членов класса. уже прибейте его, чем такие подсказки. А>>-абсолютно глючный winforms дизайнер
А>>Ошибки в логике: Nemerle.Imperative должен быть включен по умолчанию, потому что N рекламируется как смешанно-парадигмальный язык, А>>а не опционально императивный.
H>Бешенно плюсую Предлагаю помочь проекту не словами правильными, но делами праведными.
H>P.S. Nemerle.Imperative нужен раз в год по обещаниям, учитесь функциональной декомпозиции.
Еще вот очень мешают утечка памяти в студии + тормоза, когда она большая + полное зависание студии, когда циклится построение дерево типов.
Последнее нечасто, а вот первые два — всегда.
Re: Детские болезни N
От:
Аноним
Дата:
02.10.12 17:48
Оценка:
Здравствуйте, Аноним, Вы писали:
еще вот сильная дичь — option в виде класса. то, что должно бороться с null-проблемой, само ее усиливает.
Здравствуйте, Аноним, Вы писали:
А>еще вот сильная дичь — option в виде класса. то, что должно бороться с null-проблемой, само ее усиливает.
Есть экспериментальный ValueOption. Но иногда он вызывает проблемы.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Детские болезни N
От:
Аноним
Дата:
02.10.12 19:07
Оценка:
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Аноним, Вы писали:
А>>еще вот сильная дичь — option в виде класса. то, что должно бороться с null-проблемой, само ее усиливает.
VD>Есть экспериментальный ValueOption. Но иногда он вызывает проблемы.
а почему не сделать его option, пофиксив проблему?
_C_>Здравствуйте, hardcase, Вы писали:
H>>Здравствуйте, Аноним, Вы писали:
А>>>Учитывая, что N получил поддержку комерсов, было бы разумно избавить N от досадных косяков, присущих любительским продуктам. А>>>К таким относится ошибки интеграции: А>>>-IDE класс броузер показывает чистый лист, при отступном синтаксисе в подсказках к набираемому коду выскакивает только А>>>окно "when, where, with" вместо подсказок членов класса. уже прибейте его, чем такие подсказки. А>>>-абсолютно глючный winforms дизайнер
А>>>Ошибки в логике: Nemerle.Imperative должен быть включен по умолчанию, потому что N рекламируется как смешанно-парадигмальный язык, А>>>а не опционально императивный.
H>>Бешенно плюсую Предлагаю помочь проекту не словами правильными, но делами праведными.
H>>P.S. Nemerle.Imperative нужен раз в год по обещаниям, учитесь функциональной декомпозиции.
И что ты хотел сказать этим оверквотингом?
/* иЗвиНите зА неРовнЫй поЧерК */
Re[4]: Детские болезни N
От:
Аноним
Дата:
03.10.12 14:16
Оценка:
H>>>P.S. Nemerle.Imperative нужен раз в год по обещаниям, учитесь функциональной декомпозиции. H>[/cut] H>И что ты хотел сказать этим оверквотингом?
H>>>Бешенно плюсую Предлагаю помочь проекту не словами правильными, но делами праведными.
Я нормально помогаю тем чем могу на данном этапе — пользуюсь, нахожу баги и логические нарушения и докладываю вам.
делаю забесплатно. Делал бы больше, если не имел свой личный проект, по сложности не уступающей Н.
Вы теперь работаете за деньги, и должны понять, что еще до истечения тех двух лет, которые вам надо на твердую бету N2,
нужно, чтобы те, кто использует N, не офанарели и не разбежались. Для этого надо обеспечить рабочий базис, которому мешают баги, описанные в этой ветке.
Если же вы продолжите считать, что до N2 потерпят, то вы разочаруетесь, — Scala с макросами вот-вот вползет на Net и при сыром базисе народ плавно, прыжками
потечет туда. а оттуда выколупать обратно будет архисложно.
Re[5]: Детские болезни N
От:
Аноним
Дата:
03.10.12 17:23
Оценка:
Здравствуйте, Аноним, Вы писали:
описка:
Для этого надо обеспечить рабочий базис, которому мешают баги, описанные в этой ветке теме.
Здравствуйте, Аноним, Вы писали:
А>Вы теперь работаете за деньги, и должны понять, что еще до истечения тех двух лет, которые вам надо на твердую бету N2, А>нужно, чтобы те, кто использует N, не офанарели и не разбежались. Для этого надо обеспечить рабочий базис, которому мешают баги, описанные в этой ветке.
Мы работаем за деньги не на поддержке Nemerle. Поддержка Nemerle — это наша добрая воля и частично производственная необходимость.
А>Если же вы продолжите считать, что до N2 потерпят, то вы разочаруетесь, — Scala с макросами вот-вот вползет на Net и при сыром базисе народ плавно, прыжками А>потечет туда. а оттуда выколупать обратно будет архисложно.
Scala с макросами появится еще очень не скоро — вполне сопоставимо со сроками выхода на бету N2.
Здравствуйте, hardcase, Вы писали:
А>>Если же вы продолжите считать, что до N2 потерпят, то вы разочаруетесь, — Scala с макросами вот-вот вползет на Net и при сыром базисе народ плавно, прыжками А>>потечет туда. а оттуда выколупать обратно будет архисложно.
H>Scala с макросами появится еще очень не скоро — вполне сопоставимо со сроками выхода на бету N2.
А ты правда веришь, что как только Scala с макросами выйдет на .NET то народ прям всем колхозом на нее свалит?
Как бы не так — история как Nemerle, Boo и F# отлично демонстирует предпочтения этой публики. Если язык исходит не из Микрософта, или хотя бы не совместим на уровне исходников с C#, и для него отсутствует вменяемая поддержка в IDE (да, за IDE .NET-чики считают только VisualStudio, остальное — разновидности блокнотов), народ не переедет на него никогда.
H>>Scala с макросами появится еще очень не скоро — вполне сопоставимо со сроками выхода на бету N2.
дай бог. чтобы в этом я был неправ.
H>А ты правда веришь, что как только Scala с макросами выйдет на .NET то народ прям всем колхозом на нее свалит?
Для меня это очевидно. Универсальность, тулзо и либо развитость, + светлое будущее (см. тренд числа разработчиков) + известность + поддержка + по мелочи.
Сделай вы Scala-компилятор для Net (хоть на N хоть на N2), Вы бы реально были в шоколаде вместе с JB.
H>Как бы не так — история как Nemerle, Boo и F# отлично демонстирует предпочтения этой публики. Если язык исходит не из Микрософта, или хотя бы не совместим на уровне исходников с C#, и для него отсутствует вменяемая поддержка в IDE (да, за IDE .NET-чики считают только VisualStudio, остальное — разновидности блокнотов), народ не переедет на него никогда.
Майкрософт стремительно теряет вес. Ставить на его технологии, если есть выбор — глупость. на Net можно ставить, да и то, в варианте Mono.
Поэтому чем больше вы отвяжетесь от мс, тем сильнее будут ваши позиции.
P.S. N и Scala и синтаксически и семантически являются диалектами одного и того же. Это я бы на вашем месте попытался использовать в свою пользу.
Конкуренция навредит.
H>Мы работаем за деньги не на поддержке Nemerle. Поддержка Nemerle — это наша добрая воля и частично производственная необходимость.
У меня тоже отмазка есть: мои патчи слишком просто расширяют функциональность (10-15 строк), поэтому не добавляются. Даже несмотря на то, что нужный функционал нужен
30 % серьезных пользователей Н. (еще 2 прямо об этом здесь говорили). Но если иначе — сразу будет глупость обхода видна. поэтому когда и рад бы делом помочь, но все равно по-вашему не выходит.