Здравствуйте, dr.Chaos, Вы писали:
MM>>Задумался. А для чего мне писать "парсер среднего по сложности языка"?
DC>Ну например есть некикий сервер, который должен очень гибко конфигурироваться. Вот для таких конфигов волне может пригодится парсер.
А почему для этой задачи тот же питон не сгодится и чем дсл будет лучше питона ?
Помнится я раз пяццот говорил, что рекурсию и функциональщину надо объяснять 1 явно 2 очень подробно 3 начинать с тупой императивщины вроде цыклов.
И вроде бы именно ты и ambel-vlad спорили и доказывали что ничего этого не надо, дескать, студенты и так все освоят, и тут, на тебе — в МИТ именно так и объясняют — явно, подробно, начиная с императивщины
Кстати говоря, именно таких объяснений в сикп и не было. Там было примерно так — а давайте посчитаем квадратный корень вот таким методом
Мне, кстати, интересно — как этот объем материала укладывается в одну лекцию. У нас, помнится, только на ханойские башни уходился чуть не вся лекция
Короче — с тебя и AV по бутылке водки, за то что портили мне нервы.
Здравствуйте, Ikemefula, Вы писали:
I>А почему для этой задачи тот же питон не сгодится и чем дсл будет лучше питона ?
Вопрос вообще не о том, что лучше Nemerle или Python. Так что не надо подменять тему. А что будет лучше для конкретной задачи зависит очень от много. На чём крутиться сервер? Какого рода у него нагрузка? и т.п. и т.д.
Побеждающий других — силен,
Побеждающий себя — Могущественен.
Лао Цзы
Здравствуйте, dr.Chaos, Вы писали:
DC>Здравствуйте, Ikemefula, Вы писали:
I>>А почему для этой задачи тот же питон не сгодится и чем дсл будет лучше питона ?
DC>Вопрос вообще не о том, что лучше Nemerle или Python. Так что не надо подменять тему. А что будет лучше для конкретной задачи зависит очень от много. На чём крутиться сервер? Какого рода у него нагрузка? и т.п. и т.д.
Ах, да! Всегда ваш К.О.
Побеждающий других — силен,
Побеждающий себя — Могущественен.
Лао Цзы
Здравствуйте, dr.Chaos, Вы писали:
I>>А почему для этой задачи тот же питон не сгодится и чем дсл будет лучше питона ?
DC>Вопрос вообще не о том, что лучше Nemerle или Python. Так что не надо подменять тему. А что будет лучше для конкретной задачи зависит очень от много. На чём крутиться сервер? Какого рода у него нагрузка? и т.п. и т.д.
Т.е. в большинстве случаев на вопрос, а нужен ли ДСЛ, ответ — нет
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, dr.Chaos, Вы писали:
I>>>А почему для этой задачи тот же питон не сгодится и чем дсл будет лучше питона ?
DC>>Вопрос вообще не о том, что лучше Nemerle или Python. Так что не надо подменять тему. А что будет лучше для конкретной задачи зависит очень от много. На чём крутиться сервер? Какого рода у него нагрузка? и т.п. и т.д.
I>Т.е. в большинстве случаев на вопрос, а нужен ли ДСЛ, ответ — нет
DSL — это средство, а не цель, на Nemerle его реализовать проще чем на Питоне. Хороший DSL намного читабельнее. Но для конкретной задачи может существовать множество других ограничений. И опять! Всегда ваш К.О. Не отходите от экранов.
Если же вопрос в том, выбрать ли DSL на макрах ли или на системе типов или же решать задачу без них, то я выберу 1-е, и смогу обосновать это перед начальством.
Побеждающий других — силен,
Побеждающий себя — Могущественен.
Лао Цзы
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, samius, Вы писали:
S>>Он написал что для понимания семантики нужно понимать код и наоборот. То что это рекурсивная логика — это был оборот речи.
I>Я использовал "рекурсивная логика" для отсылки к контексту. Еще раз — для понимания кода семантики недостаточно.
По-моему ты использовал "рекурсивная логика" что бы упомянуть про мит и схему.
I>>>Потому ответ на вопрос, что делает код А или, скажем, можно ли код А заменить на эквивалентный код Б в общем случае дать невозможно, если известна только семантика.
S>>А причем тут схема и отказ от нее в МИТ-е?
I>При том, что в сикп исповедуется озвученый принцип "рекурсивная логика".
Можно узнать страницу, на котором озвученное исповедуется? I>Этот же принцип не работает в linq, чего я тебе и показал. Этот же принцип вообще нигде толком не работет. Потому от него отказались в мит, стенфорде. Не толко там, кстати говоря.
То что ты мне показал справедливо и для Stream.Write(byte[]) в том числе. Оказывается тут надо знать, что поддерживает Stream. Наверное уже сейчас МИТ отказывается от абстракции?
I>Влад предлагает макросы, т.е. будет некоторый фреймворк, достаточно сложный что бы решать конкретную задачу и заточеный под дсл, вызовы фреймворка будут делаться через дсл. Он же утверждает что достаточно будет только знаний семантики что бы освоить и применять дсл и решать задачи скажем майнтенанса. Я же утверждаю, что семантики недостаточно что бы освоить и применять дсл.
А я утверждаю что многие не знают что такое автоматы, но осваивают и применяют регекспы.
I>>>Что тебя смущает ? S>>я не вижу связи семантики, виртуальной машины и сикпа в контексте линка
I>Не понятно — задавай вопросы, ибо я не лектор.
Какая связь между семантикой и виртуальной машиной?
Какая связь между виртуальной машиной и линком?
Та связь что я вижу в контексте — для меня более чем чудна:
* Что бы понимать семантику, надо понимать код
=> от рекурсивной логики отказались в мите и стендфорде выкинув сикп
=> потому что в сикпе ничего нет о виртуальных машинах
Здравствуйте, Wissenschaftler, Вы писали:
VD>>Я же просил не превращать тему в помойку. Ведь очевидно, что если люди что-то делают, то они понимают, что и зачем делают. W>Мозолит глаза чужое мнение?
Да... очень... когда оно не по теме. Заведи отдельную тему и я тебе слова не скажу.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Wissenschaftler, Вы писали:
VD>>>Я же просил не превращать тему в помойку. Ведь очевидно, что если люди что-то делают, то они понимают, что и зачем делают. W>>Мозолит глаза чужое мнение?
VD>Да... очень... когда оно не по теме. Заведи отдельную тему и я тебе слова не скажу.
Хм. Ну дык по мнению многих форумчан топики про немерл не по теме общих форумов. И точно так же "мозолят глаза".
Здравствуйте, Wissenschaftler, Вы писали:
W>Хм. Ну дык по мнению многих форумчан топики про немерл не по теме общих форумов. И точно так же "мозолят глаза".
На то есть "бомбочка". Высказывайся и если мнение "многих форумчан" пересилит мнение остальных, то будет по твоему.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
UBA>>>На самом деле будь за плечами Немерла большая контора и ее пиар, он бы проник в массы со скоростью которая и не снилась никому.
UBA>>>или? VD>>Я не мечтаю, а констатирую факт. И ты его, между прочим, даже не оспорил. V>Это не факт. Это аргумент. Факт это событие которое произошло.
ОК, не факт. Но и не аргумент. Это предположение. Но все равно никто его не оспорил, потому, что понимает, что будь за Немерлом достойная контора, большая часть скептиков резко поменяла бы свое мнение.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, WolfHound, Вы писали:
WH>Я просто хренею дорогая редакция. WH>Приводить ДСЛ в качестве аргумента о том что ДСЛ не нужен.
Ты невнимательно читаешь, я не возражал против DSL, я на реплику Влада
Скажем я бьюсь об заклад, что прочитав мою статью очень многие из посетителей этого форума смогут написать парсер среднего по сложности языка с использованием макроса PegGrammar. И в то же время очень мало кто сможет создать такой же парсер вручную. А те кто сможет затратит на его создание в десятки раз больше времени.
Предложил проверить действительно ли PegGrammar из Немерле является вундервафе.
Ну и раз пошли такие вещи как поиски ДСЛ даже не в самом предложенном мной проектике а в примерах использования
библиотеки которой этот проектик пользуется похоже 500 строк точно не светят
I>Кстати говоря, про рекурсию.
I>Помнится я раз пяццот говорил, что рекурсию и функциональщину надо объяснять 1 явно 2 очень подробно 3 начинать с тупой императивщины вроде цыклов.
Бесполезно рекурсию объяснять подробно. Это пороговое квантованное знание, или понимаешь или нет.
Ты там такое мнение упустил:
Немерле вполне хороший и интересный язык, но религиозная пропаганда развернутая на RSDN принесла ему больше вреда чем пользы.
Ну и "религиозных" вещей в программировании более чем достаточно и без Немереле,
лисп, форт, C++ в свое время, функциональщина, "паттерны проектирования" и т. п. и т. д.
Здравствуйте, dr.Chaos, Вы писали:
MM>>Задумался. А для чего мне писать "парсер среднего по сложности языка"? DC>Ну например есть некикий сервер, который должен очень гибко конфигурироваться. Вот для таких конфигов волне может пригодится парсер.
Примеры, конечно, найти можно. Я пытался сказать несколько другое. В последнее время Немерлисты только и делают, что болтают про этот свой PEG и как с его помощью легко парсить код и ваять DSL. Но так ли часто возникает необходимость писать парсеры языков? У меня сложилось впечатление, что основные фичи Nemerle — это то, что нужно самой команде Nemerle. И этот парсер из той же оперы. Захотелось команде Nemerle написать такое — сделали. Вот только нужно ли это всем остальным — потенциальным потребителям языка — большой вопрос.