Re[32]: Языки общего назначения не имеют смысла!
От: vdimas Россия  
Дата: 19.05.12 11:35
Оценка:
Здравствуйте, Sinclair, Вы писали:

V>>Я не считаю таковым JS и не согласен приравнивать его к C++. JS ничем не лучше Logo в своей ограниченности, идущей изкаробки. Поэтому на JS можно делать свои DSL, которые заведомо будут specific.

S>И всё же в самом С++ нет никаких LoadLibrary и GetProcAddress.

А ему и не надо. Нам были нужны произвольные внешние библиотеки, чтобы из безопасного DSL сделать опасный язык общего назначения. С++ — это как раз тот язык, на котором эти опасные DLL общего назначения можно писать, т.е. ему для этого не нужны дополнительные ср-ва. Могу 100-й раз напомнить про CRT. С этого CRT взлетает весь современный нейтив, большего и не надо.
Re[56]: Языки общего назначения не имеют смысла!
От: WolfHound  
Дата: 19.05.12 11:54
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Не смотрел, потому и не видел.

Смотрел. Все ужасны.

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

Verilog, VHDL,...
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[39]: Не понял
От: Wolverrum Ниоткуда  
Дата: 19.05.12 13:53
Оценка:
WH>Неверный посыл.
WH>ДСЛ нужен для решения конкретной задачи.

Один вопрос: "Зачем нужен?"
Я вижу, разработку ДСЛ лишь если (ВремяРазработкиТестированияДСЛ+ВремяРешенияКонкретнойЗадачиВТерминахДСЛ) << (ВремяРешенияКонкретнойЗадачи)
Мой опыт подсказывает, что вот это неравенство — не в пользу разработки/нужности ДСЛ для конкретных задач в подавляющем большинстве случаев (ergo — ...) Нет, если под конкретным задачами подразумевается ДСЛи вида "аналог синтаксиса params" или там "with", то вопрос снимается.
Re[40]: Не понял
От: WolfHound  
Дата: 19.05.12 14:03
Оценка:
Здравствуйте, Wolverrum, Вы писали:

W>Я вижу, разработку ДСЛ лишь если (ВремяРазработкиТестированияДСЛ+ВремяРешенияКонкретнойЗадачиВТерминахДСЛ) << (ВремяРешенияКонкретнойЗадачи)

И почему <<?
Даже при == создание ДСЛ имеет смысл.
Ибо поддержка потом будет намного проще.

А это все задачи, которые чуть сложнее хелловорлд.

W>Мой опыт подсказывает, что вот это неравенство — не в пользу разработки/нужности ДСЛ для конкретных задач в подавляющем большинстве случаев (ergo — ...)

И что же за опыт у тебя такой?
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[5]: Есть просьба
От: Wolverrum Ниоткуда  
Дата: 19.05.12 14:06
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>Благодаря тому, что все будет на ДСЛях по ним будет сгенерирован не только компилятор, но и ИДЕ. Это дело техники.

WH>Так же для ИДЕ понадобятся специальные ДСЛ для описания рефакторингов и форматирования.
WH>С другой стороны ИДЕ не будет использовать трансформации кода.

Осильте сперва документацию хоть под какой-нибудь Немерле, а потом удже расписывайте про воздушные замки. Меня лазить по плохо комментированным исходникам N совершенно не прёт — время для меня стало сильно дороже сакрального знания.
Я про этот теракосяк проекта давно говорил, говорю и буду говорить. Мало того — мое предложение по документирования осталось неуслышанным, и в репозиторий я так и не был допущен.
Re[6]: Есть просьба
От: WolfHound  
Дата: 19.05.12 14:15
Оценка:
Здравствуйте, Wolverrum, Вы писали:

W>Осильте сперва документацию хоть под какой-нибудь Немерле, а потом удже расписывайте про воздушные замки.

Документации достаточно.
http://rsdn.ru/summary/3766.xml

W>Меня лазить по плохо комментированным исходникам N совершенно не прёт — время для меня стало сильно дороже сакрального знания.

Меня Н1 не волнует. Совсем.
Я правлю Н1 только если натыкаюсь на ограничения которые мне мешают.
А это случается очень редко.

W>Я про этот теракосяк проекта давно говорил, говорю и буду говорить. Мало того — мое предложение по документирования осталось неуслышанным, и в репозиторий я так и не был допущен.

Разговаривай с Владом.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[41]: Не понял
От: Wolverrum Ниоткуда  
Дата: 19.05.12 14:20
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


W>>Я вижу, разработку ДСЛ лишь если (ВремяРазработкиТестированияДСЛ+ВремяРешенияКонкретнойЗадачиВТерминахДСЛ) << (ВремяРешенияКонкретнойЗадачи)

WH>И почему <<?
WH>Даже при == создание ДСЛ имеет смысл.
WH>Ибо поддержка потом будет намного проще.

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

При == может иметь смысл, если разработчик/команда уже знает и умеет. Иначе — появляется слагаемое ВремяНаИзучениеПарадигмыИСоответствующихСредств — снова не в пользу ДСЛ "во все дыры для конкретных задач чуть сложнее хелловорлд"

W>>Мой опыт подсказывает, что вот это неравенство — не в пользу разработки/нужности ДСЛ для конкретных задач в подавляющем большинстве случаев (ergo — ...)

WH>И что же за опыт у тебя такой?
Ну какой есть, читай ветку — я тут примерно месяц назад отписывался уже.
Re[42]: Не понял
От: WolfHound  
Дата: 19.05.12 14:33
Оценка:
Здравствуйте, Wolverrum, Вы писали:

W>Ну какой есть, читай ветку — я тут примерно месяц назад отписывался уже.

Пролистал. Там ты тоже юлишь и уходишь от ответов.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[7]: Есть просьба
От: Wolverrum Ниоткуда  
Дата: 19.05.12 14:40
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>Документации достаточно.

WH>http://rsdn.ru/summary/3766.xml
Ну так и как из этой документации понять как сваять макрос для генерации множества производных System.Delegate? Год назад фокус не прошел. С тех пор что-то кардинально поменялось
Автор: _d_m_
Дата: 01.04.12
?

WH>Разговаривай с Владом.

Снова?..
Re[43]: Не понял
От: Wolverrum Ниоткуда  
Дата: 19.05.12 15:05
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


W>>Ну какой есть, читай ветку — я тут примерно месяц назад отписывался уже.

WH>Пролистал. Там ты тоже юлишь и уходишь от ответов.
Хм, в этой ветке мне и вопросов-то не было задано ранее — одни лишь оправдания.
И вообще я ошибся — оказывается, я отписывался в другую тему — Влада про "мысли о ДСЛ"
Автор: Wolverrum
Дата: 17.04.12
но и там не сказать, что я как-то юлил и уходил.
Re: Языки общего назначения не имеют смысла!
От: batu Украина  
Дата: 19.05.12 15:16
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


VE>>А как бы стоило сделать на твой взгляд?

WH>Никак. Языки общего назначения не имеют смысла.
WH>Чем больше изучаю, тем сильнее утверждаюсь в этом мнении.


WH>56 страниц сильно оптимизированного кода на жабе (год разработки) против 17 строк на ДСЛ (год разработки компилятора).

WH>ДСЛ работал в 2 раза быстрее. Плюс на этом ДСЛ еще кучу кода, потом понаписали. Как следствие сэкономили десятилетия работы.
WH>Про то, что код на ДСЛ проще понять, поддерживать, развивать и там намного меньше багов я думаю можно даже не заикаться.

Я здесь вижу два опрометчивых момента.
1. Не мудро говорить обо всем. На сегодняшний момент да, но мало ли что ждет нас в будущем.
2. А почему обязательно противоречие или язык общего назначения или DSL? Может это временный недостаток или языков называемых общего назначения или конструкторов языков DSL.
Re[41]: Не понял
От: Mamut Швеция http://dmitriid.com
Дата: 19.05.12 15:25
Оценка:
WH>Даже при == создание ДСЛ имеет смысл.
WH>Ибо поддержка потом будет намного проще.

Мне интересно, откуда этот миф про легкую поддержку взялся.


dmitriid.comGitHubLinkedIn
Re[42]: Не понял
От: WolfHound  
Дата: 19.05.12 15:33
Оценка:
Здравствуйте, Mamut, Вы писали:

WH>>Даже при == создание ДСЛ имеет смысл.

WH>>Ибо поддержка потом будет намного проще.
M>Мне интересно, откуда этот миф про легкую поддержку взялся.
Это не миф. Это опыт поддержки нескольких ДСЛ.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[44]: Не понял
От: WolfHound  
Дата: 19.05.12 15:37
Оценка:
Здравствуйте, Wolverrum, Вы писали:

W>Хм, в этой ветке мне и вопросов-то не было задано ранее — одни лишь оправдания.

W>И вообще я ошибся — оказывается, я отписывался в другую тему — Влада про "мысли о ДСЛ"
Автор: Wolverrum
Дата: 17.04.12
но и там не сказать, что я как-то юлил и уходил.

Так тебе был задан прямой вопрос как ты ДСЛ делал?
На него ты не ответил.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[8]: Есть просьба
От: WolfHound  
Дата: 19.05.12 15:43
Оценка:
Здравствуйте, Wolverrum, Вы писали:

W>Ну так и как из этой документации понять как сваять макрос для генерации множества производных System.Delegate?

Очевидно также как и любой другой член класса.
<[decl: public delegate Bar(asd : string) : int; ]>;

W>Год назад фокус не прошел. С тех пор что-то кардинально поменялось
Автор: _d_m_
Дата: 01.04.12
?

Это как относится к твоему предыдущему вопросу?

WH>>Разговаривай с Владом.

W>Снова?..
Немерлом занимается Влад.
Я немерлом не занимаюсь.
Ну и почему ты говоришь со мной?
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[43]: Не понял
От: Mamut Швеция http://dmitriid.com
Дата: 19.05.12 15:44
Оценка: :)
WH>>>Даже при == создание ДСЛ имеет смысл.
WH>>>Ибо поддержка потом будет намного проще.
M>>Мне интересно, откуда этот миф про легкую поддержку взялся.
WH>Это не миф. Это опыт поддержки нескольких ДСЛ.

А. Ну так и думал. Один человек свой личный опыт обобщает до всех. Где-то я это видел уже. Скучно и предсказуемо.


dmitriid.comGitHubLinkedIn
Re[2]: Языки общего назначения не имеют смысла!
От: WolfHound  
Дата: 19.05.12 15:48
Оценка: +1
Здравствуйте, batu, Вы писали:

B>1. Не мудро говорить обо всем. На сегодняшний момент да, но мало ли что ждет нас в будущем.

Других вариантов не будет.
Достичь большей выразительности, чем язык, на котором задача описывается напрямую в терминах предметной области невозможно теоритически.

B>2. А почему обязательно противоречие или язык общего назначения или DSL? Может это временный недостаток или языков называемых общего назначения или конструкторов языков DSL.

Это не временный недостаток.
Это фундаментально.
Просто по тому, что ЯОНы имеют вычислительную модель чуть менее чем всегда не имеющую ничего общего с предметной областью.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[44]: Не понял
От: WolfHound  
Дата: 19.05.12 15:52
Оценка:
Здравствуйте, Mamut, Вы писали:

M>А. Ну так и думал. Один человек свой личный опыт обобщает до всех. Где-то я это видел уже. Скучно и предсказуемо.

Когда в 100% случаев получается один и тот же результат...
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[45]: Не понял
От: Wolverrum Ниоткуда  
Дата: 19.05.12 16:04
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>Так тебе был задан прямой вопрос как ты ДСЛ делал?

А вот так:
1. Собрал начальные требования
2. Происследовал форму представления (разработали синтаксис удобный и понятный для конечного пользователя)
3. Закодировал реализацию (разбор, семантика)
4. Покрыл тестами
5. Задокументировал (язык, правила обработки, нюансы)

Как-то так делал. Подозреваю, есть непонятный нюанс. Раскрою его. "Задокументировал" — понятным языком описал сам ДСЛ, утилиты для удобного его ипользования, командные строки, особенности работы с внешними системами (БД, планировщики, веб-сайты, и т.п.), и своевременно обновляю документацию, чтобы не возникало лишних вопросов по поводу "А как там сделать так, чтобы...?"
Re[45]: Не понял
От: Mamut Швеция http://dmitriid.com
Дата: 19.05.12 16:06
Оценка:
M>>А. Ну так и думал. Один человек свой личный опыт обобщает до всех. Где-то я это видел уже. Скучно и предсказуемо.
WH>Когда в 100% случаев получается один и тот же результат...

Это все равно ничего не значит.

Потому что, например: http://www.cis.uab.edu/courses/managed/cs593/spring2004/DSLAnnotatedBib.pdf

The disadvantages of the use of a DSL are:
— The costs of designing, implementing and maintaining a DSL.


Но да. У нас есть Wolfhound, его личный экспириенс === экспириенс бога, и не обсуждается, а принимается на веру


dmitriid.comGitHubLinkedIn
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.