Re[8]: В английской Wikipedia про Nemerle выставили на удале
От: VladD2 Российская Империя www.nemerle.org
Дата: 16.02.11 20:21
Оценка:
Здравствуйте, Ziaw, Вы писали:

VD>>Опять я? Я еще должен "Язык Немерле" дописать.


Z>Я думаю тут лучше всего напишет создатель этого компилятора, hardcase, ау.


Я предлагал. Но результат тот же что и с создателем НРельсов .

Может напишите по статейки об своих продуктах? Тогда глядишь и вопрос нотобилити сам собой снимется.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: Подводя итоги...
От: WolfHound  
Дата: 16.02.11 21:42
Оценка:
Здравствуйте, Honeyman, Вы писали:

H>По истечении первых десяти лет XXI-го века, при существовании и всё бо?льшем распространении LLVM и,

LLVM бесполезное фуфло созданное для низкоуровневых языков типа С/С++.
Там даже нормальную поддержку GC сделать не могут. Shadow stack это не нормальная поддержка. Она сразу означает тормоза.

H>скажем, Parsec

Ой не смеши мои тапочки.
Комбинаторные парсеры не применимы для создания языков для широкого использования.

H>(даже не говоря уже про очевидный Lisp),

Что лисп?
В лиспе уже есть синтакс?
Или статическая типизация с выводом типов?

H>на 27-ой год существования SICP (который с той поры побывал официальным учебником в MIT)

Это вообще не в тему.

H>и на 34-ый (и на третье издание) — Dragon Book-а,

Ох. У меня иногда чешутся руки написать статью с весьма тролящим названием "dragon book considered harmful".
Я еще не разбирался с тем что там написано по поводу кодогенерации но все что там есть по поводу разбора текстов абсолютно не адекватно.
На досуге выясни как люди компиляторы для широкого использования пишут... а я тебе скажу: Генерируют лексер, а дальше в рукопашную.
И даже терминология там кривая. Синтакс с семантикой путают.

H>я вовсе не склонен считать создание собственного ЯП с компилятором или, тем более, хотя бы с интерпретатором (а уж тем более компилятора или интерпретатора к имеющемуся языку), чем-то безумно сложным и неприподъёмным.

А ты сколько компиляторов написал?
А сколько видел языков с поддержкой ИДЕ на уровне не ниже немерла?
Что? Кроме C# и Java ничего в голову не приходит?

H>(после одного из них мне, например, противно писать на чистом C как на очень опасном, ненадёжном и неудобном языке, при том что этот язык был ровно на уровне C по уровню абстракции),

Ссылку в студию!

H>Так что... если считать "законченные и рабочие компиляторы" notable по умолчанию... вот вам задачка, Berp — он как, notable для википедии? Где-нибудь в середине первой страницы результатов гугла вы его найдёте

Если ты про https://github.com/bjpop/berp/wiki/using-berp
То почему бы и нет?
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[9]: Подводя итоги...
От: Honeyman  
Дата: 16.02.11 22:40
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>LLVM бесполезное фуфло созданное для низкоуровневых языков типа С/С++.

Жаль, создатели LLVM-бэкенда к Haskell этого не знают. И это не учитывая того, что тот же GHC транслирует высокоуровневый язык Haskell в низкоуровневый язык C, который, кхм...

H>>скажем, Parsec

WH>Ой не смеши мои тапочки.
WH>Комбинаторные парсеры не применимы для создания языков для широкого использования.
Да я особо и не спорю. Впрочем, для написания Scheme его вполне хватит. За 48 часов, хе-хе. А надо функциональнее — так есть механизмы и функциональнее, типа того же yacc^WHappy.

H>>(даже не говоря уже про очевидный Lisp),

WH>Что лисп?
WH>В лиспе уже есть синтакс?
WH>Или статическая типизация с выводом типов?
А лисп — это хороший пример стирания граней между окружением, языком, программой и данными. Начиная с какого-то уровня, любую программу на лиспе можно считать новым языком. Разве нет ?

H>>я вовсе не склонен считать создание собственного ЯП с компилятором или, тем более, хотя бы с интерпретатором (а уж тем более компилятора или интерпретатора к имеющемуся языку), чем-то безумно сложным и неприподъёмным.

WH>А ты сколько компиляторов написал?
WH>А сколько видел языков с поддержкой ИДЕ на уровне не ниже немерла?
WH>Что? Кроме C# и Java ничего в голову не приходит?
"Сперва добейся", угу ?
А поддержка IDE — это вообще... интересный... аргумент. Для человека, который перешёл с редактора в Far Manager-е на Emacs.

H>>(после одного из них мне, например, противно писать на чистом C как на очень опасном, ненадёжном и неудобном языке, при том что этот язык был ровно на уровне C по уровню абстракции),

WH>Ссылку в студию!
Я же вроде приводил их в пример как not notable... в общем, в интернете я доступных описаний этого языка так и не нашёл. Уж больно стар, уж больно закрыт и нишев. Впрочем, он поддерживал модульность, был statically/strongly typed, type-safe и memory-safe, и (вкупе с окружением) задолго до того же Erlang-а позволял динамическое обновление кода (на уровне целого модуля). Я думаю, этого достаточно, чтобы оценить причины, по которым C для переходящего на него с этого языка выглядит слегка устарелым. А уж мелочей-то сколько было, типа явного управления побитовым выравниванием в структурах, строго типизированных enum-ов и числовых диапазонов (которые могли служить индексом для массива, тем самым добавляя ему memory safety — сравните, например, с fcntl(), который в простейшем случаев в качестве аргументов принимает 2 любых числа), или, скажем подсказок для branch prediction, которые можно было ставить на ветки кода/условий, целые функции или просто на отдельные значения enum-ов...

H>>Так что... если считать "законченные и рабочие компиляторы" notable по умолчанию... вот вам задачка, Berp — он как, notable для википедии? Где-нибудь в середине первой страницы результатов гугла вы его найдёте

WH>Если ты про https://github.com/bjpop/berp/wiki/using-berp
WH>То почему бы и нет?
Потому что это пока откровенно экспериментальная поделка без каких-либо претензий. Про неё фактически никто не знает, за пределами узкого круга хаскелевского комьюнити и приближённых к ним. Возможно, перспективная, да, но пока уж больно зачаточная.
Re[9]: Подводя итоги...
От: Honeyman  
Дата: 16.02.11 22:53
Оценка: 1 (1)
Здравствуйте, VladD2, Вы писали:

H>>"Игнорирования одного из самых популярных русскоязычных IT-журналов" не было. По ранее описанным причинам, напоминаю, было разве что "игнорирование статей одного автора в одном из самых популярных русскоязычных IT-журналов", как, предположительно, ангажированных.

VD>А где же то самое правило о предположении добрых намерений?
Ну уж никак не в противоречии к правилу о наличии third-party sources.

VD>Потом я что-то не понимаю может быть? Зачем писать о чем-то, если это что-то не нравитя и не приносит денег? А раз пишут за деньги или по интересу, то значит все авторы априори ангажированы?


Потенциальная ангажированность — это так причина, по которой википедия так требует, чтобы источники были third party.

А деньги могут прийти разными способами. Обычно всё-таки журналисты пишут не за деньги лиц, заинтересованных в предмете статьи, а за деньги редакции.

VD>Почему на вопрос о Буу был дан ответ "есть книга"? Чем эта книга отличается от моих статей? Почему автор книги не ангажирован?

Представления не имею. Может, и ангажирован. Я в AfD по Boo не участвовал, и никто при мне связей между автором и разработчиками не находил.

Впрочем, мне так кажется, что этот вопрос, вместе с вопросом по notability, уже успешно закрыт

H>>Я там приводил очень живой пример с Forbes Russia/Афиша-Еда и рестораном Ragout Бумажный self-promotion, тот спам по сути — он ничем не лучше электронного, только деревья больше страдают.

VD>Я не понял этих намеков. У вас есть подозрения, что мы публикуем спам?
Нет. Это опять же объяснение требования к тому, чтобы источники были third party. Вот, например, прилагать в качестве доказательства notability к статье про «ресторан Ragout» те самые статьи в форбсе от его (предположительно) создателя было бы весьма некорректно, не?

VD>И зря. Как раз 20000 упоминаний, если это не чистый спам (что, кстатит делали D-ишники в начале раскрутки D) — это хороший показатель того, что язык известен. А вот две статьи могут быть и инсперированы.

Ой, нынче SEO такие SEO... Потому в википедии на числа в гугле уже давно не смотрят.
Re[10]: Подводя итоги...
От: WolfHound  
Дата: 16.02.11 23:29
Оценка:
Здравствуйте, Honeyman, Вы писали:

H>Жаль, создатели LLVM-бэкенда к Haskell этого не знают. И это не учитывая того, что тот же GHC транслирует высокоуровневый язык Haskell в низкоуровневый язык C, который, кхм...

Хорошь заниматься художественной резьбой по цитатам.
Я написал почему.
А учитывая что хаскель сам по себе тормоз то хуже ему от этого не станет.

H>Да я особо и не спорю. Впрочем, для написания Scheme его вполне хватит.

Парсер схемы я тебе без всяких тулзов за несколько часов на чем угодно (кроме "брейнфаков") напишу.

H>За 48 часов, хе-хе. А надо функциональнее — так есть механизмы и функциональнее, типа того же yacc^WHappy.

Автоматные парсеры не адекватны.
Есле нужно парсить что-то кроме поделки синтакс которой затачивался на разбор автоматным парсером.
Скажем C# ты автоматным парсером без кучи присяданий не разберешь.
А ПЕГ сожрал и не подавился. Кстати о нем в "книге дракона" ни слова.
Про парсер Пратта тоже.

H>А лисп — это хороший пример стирания граней между окружением, языком, программой и данными. Начиная с какого-то уровня, любую программу на лиспе можно считать новым языком. Разве нет ?

Любую программу на любом языке при использовании библиотек можно считать программой написанной на ДСЛ.
Вопрос лишь в качестве этого ДСЛ.

H>"Сперва добейся", угу ?

Я тебя не прошу написать ИДЕ. Я тебя прошу показать хоть одну ИДЕ сравнимую с немерловой.

H>А поддержка IDE — это вообще... интересный... аргумент. Для человека, который перешёл с редактора в Far Manager-е на Emacs.

То что тебе ИДЕ не нужна не значит что она не нужна никому.

H>Я же вроде приводил их в пример как not notable...

Ну на немерле я тебе могу много ссылок дать. Но что-то их все записали в not notable...
Так что кто тебя знает.

H>в общем, в интернете я доступных описаний этого языка так и не нашёл. Уж больно стар, уж больно закрыт и нишев. Впрочем, он поддерживал модульность, был statically/strongly typed, type-safe и memory-safe, и (вкупе с окружением) задолго до того же Erlang-а позволял динамическое обновление кода (на уровне целого модуля).

Это крайне интересно.
Как минимум для анализа того что сделано хорошо, а что нет.
Это вообще очень актуальная тема. И если все так как ты говоришь язык безусловно заслужил известность.

H>Потому что это пока откровенно экспериментальная поделка без каких-либо претензий. Про неё фактически никто не знает, за пределами узкого круга хаскелевского комьюнити и приближённых к ним. Возможно, перспективная, да, но пока уж больно зачаточная.

А не важно на самом деле.
Если это поделка то нужно вставить плашку "поделка".
Авось кого то эта поделка заинтересует и ее доведут до состояния "не поделка".
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[10]: Подводя итоги...
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.02.11 03:00
Оценка:
Здравствуйте, Honeyman, Вы писали:

WH>>LLVM бесполезное фуфло созданное для низкоуровневых языков типа С/С++.

H>Жаль, создатели LLVM-бэкенда к Haskell этого не знают. И это не учитывая того, что тот же GHC транслирует высокоуровневый язык Haskell в низкоуровневый язык C, который, кхм...

Дык в хаскеле исходно был написан свой GC. Уверен, что чувак его просто не писал. А вот создание GC с нуля, да еще не для ФЯ где все побочные эффекты выделены, а для общего случая — это задача на много лет. И результат при этом не гарантирован. В Моно до сих пор GC слабенький.

Потом если речь об этом, то это очередная студенческая поделка. Скорее всего использовать на практике ее будет нельзя. А до ума ее скорее всего не доведут. Задача же бакалавра защитить, а не компилятор хаскеля улучшить.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[10]: Подводя итоги...
От: vdimas Россия  
Дата: 17.02.11 09:19
Оценка:
Здравствуйте, Honeyman, Вы писали:

WH>>Комбинаторные парсеры не применимы для создания языков для широкого использования.

H>Да я особо и не спорю. Впрочем, для написания Scheme его вполне хватит. За 48 часов, хе-хе.

Вообще-то парсер Схемы пишется часа за 2 максимум, и никакой особый построитель парсера там не нужен, ибо там достаточен LL(1) по наипростейшей грамматике. Применять комбинаторный парсер для случая, где сойдет LL(1) — это надо быть ну очень далеко от предмета. Ну и плюс использование ленивости там, где принципиально не требуются откаты — это, мягко говоря, безграмотно.

В принцип, за неделю накатать Схему целиком по готовому, разжеванному для "домохозяек" R5RS, можно на любом языке, где есть GC. Только тут ничего интересного, ибо интерпретатор можно и побыстрее написать, просто автор половину времени экспериментировал с эффективной математикой на big-integer.


H>А лисп — это хороший пример стирания граней между окружением, языком, программой и данными. Начиная с какого-то уровня, любую программу на лиспе можно считать новым языком. Разве нет ?


Нет. Про Форт, например, такую околесицу никто не несет. Хотя возможностей по метапрограммированию не меньше, а скорее наоборот.


WH>>Что? Кроме C# и Java ничего в голову не приходит?

H>"Сперва добейся", угу ?

Разве у оппонента награды или грамоты? Речь о результатах труда, которые каждый может пощупать.


H>А поддержка IDE — это вообще... интересный... аргумент. Для человека, который перешёл с редактора в Far Manager-е на Emacs.


А ну да. И проекты по 10-100 тыс строк максимум. Действительно, тут аргументы не нужны.


H>Я же вроде приводил их в пример как not notable... в общем, в интернете я доступных описаний этого языка так и не нашёл. Уж больно стар, уж больно закрыт и нишев. Впрочем, он поддерживал модульность, был statically/strongly typed, type-safe и memory-safe, и (вкупе с окружением) задолго до того же Erlang-а позволял динамическое обновление кода (на уровне целого модуля). Я думаю, этого достаточно, чтобы оценить причины, по которым C для переходящего на него с этого языка выглядит слегка устарелым.


H>А уж мелочей-то сколько было, типа явного управления побитовым выравниванием в структурах


есть #pragma

H>строго типизированных enum-ов


Дык, у тебя не было возможности за последние 20 лет посмотреть на С++?

H>и числовых диапазонов (которые могли служить индексом для массива, тем самым добавляя ему memory safety — сравните, например, с fcntl(), который в простейшем случаев в качестве аргументов принимает 2 любых числа),



Вопрос про С++ в силе.

H>или, скажем подсказок для branch prediction, которые можно было ставить на ветки кода/условий, целые функции или просто на отдельные значения enum-ов...


У-у, как все запущено. Как насчет освежить познания по суперкомпиляции в современных компиляторах С++?
Re[8]: Подводя итоги...
От: Klatu  
Дата: 17.02.11 10:29
Оценка:
Здравствуйте, Honeyman, Вы писали:

H>после одного из них мне, например, противно писать на чистом C как на очень опасном, ненадёжном и неудобном языке, при том что этот язык был ровно на уровне C по уровню абстракции


А что из себя представляет этот язык, если не секрет, и почему он not notable enough?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[11]: Подводя итоги...
От: Honeyman  
Дата: 17.02.11 12:05
Оценка:
Здравствуйте, vdimas, Вы писали:

H>>А поддержка IDE — это вообще... интересный... аргумент. Для человека, который перешёл с редактора в Far Manager-е на Emacs.

V>А ну да. И проекты по 10-100 тыс строк максимум. Действительно, тут аргументы не нужны.
IDE — это хорошо, даже прекрасно, в случае, когда посвящаешь себя одному языку программирования (ну, или, в случае Nemerle/Visual Studio, одной платформе). Если же в жизни случается разнообразие, то зачастую бывает комфортнее иметь что-то лёгкое и общее (типа Emacs-а) и для Makefile-ов, и для кода на двух-трёх используемых языках, и для шаблонов для кодогенератора. К тому же, даже в случае IDE, выбор самого IDE часто неоднозначен. Так что наличие хоть какого IDE для языка — это хорошо, но, на мой взгляд, не самоцель; вот популярность его настолько, что комьюнити добавило его поддержку в самые распространённые платформы, от Vim/Emacs до MonoDevelop, Eclipse и Xcode...

H>А уж мелочей-то сколько было, типа явного управления побитовым выравниванием в структурах

V>есть #pragma
Таки уже есть? Я детально С не занимался уже давно — можно там указать, что "вот этот enum в двухбайтовой структуре должен занять 4 бита, после него вот этот — 2 бита, потом пойдёт 6-битовый тип, который перейдёт границу байта, но должен, для резерва на будущее, захватить 8 битов, а последние 2 бита ничем не заняты"?

H>>строго типизированных enum-ов

V>Дык, у тебя не было возможности за последние 20 лет посмотреть на С++?

H>>и числовых диапазонов (которые могли служить индексом для массива, тем самым добавляя ему memory safety — сравните, например, с fcntl(), который в простейшем случаев в качестве аргументов принимает 2 любых числа),

V>
V>Вопрос про С++ в силе.
Я нисколько не удивлён, что за 20 (хотя сейчас уже, похоже, ближе к 30) лет хоть что-то из этого языка потянули в другие, в тот же C++. Шаблонами в С++ это всё наверняка можно сделать, оно даже выглядеть будет не более чем на десятичный порядок более громоздко (а без шаблонов я возможности сделать массив, индексированный enum-ом или ограниченным числовым диапазоном, я что-то ни в C++0x, ни в C1X не заметил). Просто я вроде бы явно подчеркнул, что этот язык по степени абстракции находился не на уровне C++, а где-то на уровне C. Метапрограммирования там не было нувообще, а классы были в каком-то зачаточном состоянии, ими почти не пользовались (потому что и без них было хорошо — лет за 6 писанины на этой штуковине я написал, точно помню, ровно один класс, и то только для того, чтобы при любом завершении доступа к какому-то ресурсу деструктор гарантированно закрывал доступ), но, когда пользовались, то они даже вписывались в упомянутую возможность динамического обновления кода.

H>>или, скажем подсказок для branch prediction, которые можно было ставить на ветки кода/условий, целые функции или просто на отдельные значения enum-ов...

V>У-у, как все запущено. Как насчет освежить познания по суперкомпиляции в современных компиляторах С++?
Ну вижу я __builtin_expect в GCC, что примерно соответствует одному из упомянутых кейсов (в компиляторе 20-30-летней давности, ага ). Только до уровня
enum error_codes {
  ok <usual>, 
  file_not_found, 
  invalid_permissions, 
  wrong_structure <rare>
}

(синтаксис приблизительный) оно таки не дошло по функционалу, а до
switch (op){
  case Forward:<usual> go_forward(); 
  case Left, Right: turn(); 
  case Backward:<rare> reverse()
}
(опять-таки, синтаксис приблизительный) — по наглядности и простоте. А профили — это подход к проблеме со слишком другого, эмпирического, конца.

В общем, я вижу, ряду людей на RSDN-е это интересно. Как-нибудь постараюсь, поищу источники, может, статья в википедии и получится. Язык интересный, да, но, будучи внутренним языком крупного разработчика для telco-индустрии, он особо в СМИ не попадал. Поэтому проблемы будут не только в доказательстве notability, но и просто в подтверждении материала хоть какими-то сторонними источниками.
Re[14]: Подводя итоги...
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 17.02.11 12:15
Оценка:
Здравствуйте, vdimas, Вы писали:

ГВ>>Напротив, возникает вопрос: почему на языке международного общения так мало написано про Nemerle, что не удалось заткнуть каких-то там модераторов "жёлтой газетёнки"?

V>Достаточно, например перевод статей RSDN. Я же говорю, целый источник был выкинут из рассмотрения по необъективным причинам.

Да, действительно
Автор: kochetkov.vladimir
Дата: 16.02.11
, достаточно. Тогда мои доводы снимаются.

P.S.: Для меня всё равно остаётся загадкой такое внимание к статьям в википедии, но это вопрос для другого форума.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[11]: Подводя итоги...
От: Nikkk2010  
Дата: 17.02.11 13:52
Оценка:
Здравствуйте, vdimas, Вы писали:
V>Как насчет освежить познания по суперкомпиляции в современных компиляторах С++?
Что это за зверь — суперкомпиляция в современных компиляторах С++?
I do all my own stunts
Re[12]: Подводя итоги...
От: Klatu  
Дата: 17.02.11 14:37
Оценка:
Здравствуйте, Honeyman, Вы писали:

H>Язык интересный, да, но, будучи внутренним языком крупного разработчика для telco-индустрии, он особо в СМИ не попадал.


Секретный или просто не рекламируется?

H>Поэтому проблемы будут не только в доказательстве notability, но и просто в подтверждении материала хоть какими-то сторонними источниками.


Но хоть какие-то источники есть?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[12]: Подводя итоги...
От: WolfHound  
Дата: 17.02.11 19:39
Оценка:
Здравствуйте, Honeyman, Вы писали:

H>В общем, я вижу, ряду людей на RSDN-е это интересно. Как-нибудь постараюсь, поищу источники, может, статья в википедии и получится. Язык интересный, да, но, будучи внутренним языком крупного разработчика для telco-индустрии, он особо в СМИ не попадал. Поэтому проблемы будут не только в доказательстве notability, но и просто в подтверждении материала хоть какими-то сторонними источниками.

Мне не нужны источники. Я материал на вшивость сам проанализировать могу.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[9]: Подводя итоги...
От: Аноним  
Дата: 18.02.11 09:03
Оценка:
Здравствуйте, WolfHound, Вы писали:

H>>и на 34-ый (и на третье издание) — Dragon Book-а,

WH>Ох. У меня иногда чешутся руки написать статью с весьма тролящим названием "dragon book considered harmful".
WH>Я еще не разбирался с тем что там написано по поводу кодогенерации но все что там есть по поводу разбора текстов абсолютно не адекватно.
WH>На досуге выясни как люди компиляторы для широкого использования пишут... а я тебе скажу: Генерируют лексер, а дальше в рукопашную.
WH>И даже терминология там кривая. Синтакс с семантикой путают.

А напиши. Если PEG и правда так крут, как вы тут намекаете, статья может получиться интересная. Опять же, будет пример чего-то практического, написанного на немерле.
Re[10]: Подводя итоги...
От: Mumitroller Беларусь  
Дата: 18.02.11 11:51
Оценка:
Здравствуйте, <Anonymous>, Вы писали:

A>Если PEG и правда так крут, как вы тут намекаете, статья может получиться интересная. Опять же, будет пример чего-то практического, написанного на немерле.


Вот это не подойдет?

Mumitroller
... << RSDN@Home 1.2.0 alpha 4 rev. 0>>
Re[10]: Подводя итоги...
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.02.11 15:24
Оценка: +1
Здравствуйте, Аноним, Вы писали:

А>А напиши. Если PEG и правда так крут, как вы тут намекаете, статья может получиться интересная. Опять же, будет пример чего-то практического, написанного на немерле.


Я одного не понимаю зачем разным прохожим с улицы какие-то новые технологии? Вы же все равно их использвать не будете.

Статьи есть. Кто хочет, то пользуется гуглем. Например, вот
Автор(ы): Чистяков Владислав Юрьевич
Дата: 07.06.2011
Макрос PegGrammar – это макрос Nemerle, позволяющий добавлять в приложения парсеры, описываемые в нотации PEG.
или вот. Чтобы убедиться в крутости не надо даже статей читать. Качаешь инсталлятор и тратишь пол часа на эксперименты.

Но ведь уже по тону ясно что тебе ведь ничего на самом деле не интересно.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: Подводя итоги...
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.02.11 05:24
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>За всех не могу сказать, но по моей практике — и две недели на реализацию DSL не оказывают существенного влияния (коль скоро речь в проекте вообще зашла о развитии DSL).


Две не дели на хитрый ДСЛ — это не так уж и много. Вот когда на это начинают уходить месяцы, а то и годы. И потом еще постоянно тратится много сил на развитие и поддержку, вот тут и начинаются проблемы. Многие боятся ДСЛ-ей именно в следствии своей негативной практики. А практика зачастую связана с выбором не подходящего инструмента и плохого дизайна ДСЛ-я.

ГВ>А вот на устаканивание множества термов языка, на построение их взаимосвязей, может уйти несопоставимо больше времени. Плюс-минус неделя здесь — да никакой разницы.


Что за устаканивание? Если у тебя качественный инструмент, то несогласованность сразу должна вылезти.

ГВ>Да, согласен, инфраструктура (IDE, отладчик) — очень полезная штука, не спорю. Но понимаешь ли... DSL разрабатываются не только для использования в среде .Net. А вне .Net Nemerle не слишком рулит.


Это не проблем немерла или дотнета. Это проблема остальных. Надо не искать фатальные недостатки в немерле, а делать аналоги для других окружений.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: Подводя итоги...
От: Аноним  
Дата: 19.02.11 13:18
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, Аноним, Вы писали:


А>>А напиши. Если PEG и правда так крут, как вы тут намекаете, статья может получиться интересная. Опять же, будет пример чего-то практического, написанного на немерле.


VD>Статьи есть. Кто хочет, то пользуется гуглем. Например, вот
Автор(ы): Чистяков Владислав Юрьевич
Дата: 07.06.2011
Макрос PegGrammar – это макрос Nemerle, позволяющий добавлять в приложения парсеры, описываемые в нотации PEG.
или вот. Чтобы убедиться в крутости не надо даже статей читать. Качаешь инсталлятор и тратишь пол часа на эксперименты.

За ссылки спасибо, прочитал. Ничего революционного не увидел. Еще один антлр, только другой и на Н. На "... considered harmful" не тянет. А жаль.

VD>Я одного не понимаю зачем разным прохожим с улицы ...

RSDN я читаю не первый год, и твой хамский тон не удивляет.

VD> ... какие-то новые технологии? Вы же все равно их использвать не будете.

Только потому, что они новые? Нет, не будем.
Re[12]: Подводя итоги...
От: Rival Таиланд
Дата: 19.02.11 14:11
Оценка: :)
Здравствуйте, Аноним, Вы писали:

VD>>Я одного не понимаю зачем разным прохожим с улицы ...

А>RSDN я читаю не первый год, и твой хамский тон не удивляет.

А, критиковать из под анонимуса, сидя "не первый год"(sic!), это, конечно, не хамство.
Здорово, "прохожий с улицы" уже считается хамством.

Я тебе больше скажу, Влад слишком толерантен, ты — малолетний дурачок.
«История жизни – это, по существу, развитие сознания, которое завуалировано морфологией.» Пьер Тейяр де Шарден
Re[12]: Подводя итоги...
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 19.02.11 15:23
Оценка:
Здравствуйте, VladD2, Вы писали:

ГВ>>За всех не могу сказать, но по моей практике — и две недели на реализацию DSL не оказывают существенного влияния (коль скоро речь в проекте вообще зашла о развитии DSL).

VD>Две не дели на хитрый ДСЛ — это не так уж и много. Вот когда на это начинают уходить месяцы, а то и годы. И потом еще постоянно тратится много сил на развитие и поддержку, вот тут и начинаются проблемы. Многие боятся ДСЛ-ей именно в следствии своей негативной практики. А практика зачастую связана с выбором не подходящего инструмента и плохого дизайна ДСЛ-я.

+1. Правда, в той реплике, на которую я отвечал, речь шла о "паре дней". Я с трудом представляю, что за DSL можно довести до модели за пару дней. Разве что, какой-нибудь язык регэкспов.

И ещё одно: DSL-ей "боятся" не больше, чем любой другой работы с неясной целью. Короче говоря, если нет ясности в ответе на вопрос "зачем?", то бояться будут лишнего параметра в API, не то, что DSL. Кстати, этот "страх" совершенно обоснован: смутное "зачем" приводит нас к мутным ответам, то есть, по сути, решение становится средством доопределения задачи — а это ни что иное, как банальная постановка вещей с ног на голову, только и всего. Premature ... is a root of evil.

ГВ>>А вот на устаканивание множества термов языка, на построение их взаимосвязей, может уйти несопоставимо больше времени. Плюс-минус неделя здесь — да никакой разницы.

VD>Что за устаканивание? Если у тебя качественный инструмент, то несогласованность сразу должна вылезти.

Грубо говоря, вопрос ставится так: каков набор терминов предметной области, какие из них должны стать "ключевыми словами" DSL, какие — будут производными, а какие — вообще не нужны в DSL. Ну а дальше — определение необходимых/разрешённых комбинаций и т.п. Короче говоря — Domain Specifics. Соответственно, вытягивание такого языка на уровень языка общего назначения — это, зачастую, мягко говоря, избыточная задача. Ну и парсер тут, как ты понимаешь — далеко не самая большая проблема.

ГВ>>Да, согласен, инфраструктура (IDE, отладчик) — очень полезная штука, не спорю. Но понимаешь ли... DSL разрабатываются не только для использования в среде .Net. А вне .Net Nemerle не слишком рулит.

VD>Это не проблем немерла или дотнета. Это проблема остальных. Надо не искать фатальные недостатки в немерле, а делать аналоги для других окружений.

Я имел в виду, что в некоторых случаях Nemerle + .Net + VS не получится использовать по объективным причинам. Чья это проблема — не знаю, зависит от предпочтений.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.