Re[27]: Недостатки Nemerle
От: VladD2 Российская Империя www.nemerle.org
Дата: 15.07.12 23:58
Оценка: +1
Здравствуйте, VoidEx, Вы писали:

VE>Весёлый ты парень, "поменяй-ка грамматику языка без метапрограмминга, что не можешь?"


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

VE>Однако исходники Агда-компилятора открыты, если что.


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

VE>Так что могу.




VE>Правда почему-то менять компилятор напрямую некомильфо, а писать под него плагины — мегакрутая суперпупер технология.


Потому что ты не меняешь язык. Ты создаешь библиотеку которая используется в локальном контексте и никому не мешает.

VE>А ты ленивость реализуй, не куцую Lazy, а полноценную.


В Н2 — не вопрос.

Только ты опять ушел в свои заблуждения. Не нужна никому ленивость в общем случае. Те языки которые мы сейчас создаем вообще не имеют понятия "последовательность вычислений". Есть абстрактная модель, а модель вычислений подбирается такая какая нужна для проекта.

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


Пойми же. На макросах и напрямую — это одно и то же. Я просто делаю язык и необходимую для него модель вычислений. Нужно будет повторить Агду 1 в 1 сделаем и это. Только вот не надо, так как Агда — это еще один универсальный язык (ЯОН). Причем кода на нем для решения задачи получается больше чем на языке без зависимых типов. А это уже серьезный симптом. Мы же хотим писать минимум кода.

VE>Забабахать систему, для которой идеально подходит Erlang.


И чем тебе в этом поможет Агда? А на макроса это как раз можно сделать.

VE>Это только в мире эльфов на языке программирования пишут код, который нужен только для языка программирования.


В мире эльфов пишут говнокод на Яве, а по вечерам ахают и прутся от крутости системы типов Агды.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[23]: Недостатки Nemerle
От: VladD2 Российская Империя www.nemerle.org
Дата: 16.07.12 00:07
Оценка:
Здравствуйте, VoidEx, Вы писали:

VE> Кстати макросы высшего порядка есть?


Это бессмысленный вопрос вызванный непониманием сути макросов. Им не надо быть высшего порядка. Они всего лишь вход в мир вычислений во время компиляции. А там дступен весь основной язык с ФВП, ПМ, ООП и прочей ересью.

Праметром макроса является код. Как ты его там будешь интерпретировать и обрабатывать — это проблемы твоей фантазии.

VE>Мне кажется, что такие вещи должны решаться в несколько строк на нормальных макросах. В общем-то, в N2 мб так и будет.


В 2 строки можно решать только те задачи для которых уже готово обобщенное решение. Но в общем, да — Н2 будет предоставлять возможность описывать свои системы типов и никто не помешает тебе сделать решения которые можно будет переиспользовать.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[19]: Недостатки Nemerle
От: VladD2 Российская Империя www.nemerle.org
Дата: 16.07.12 00:09
Оценка:
Здравствуйте, VoidEx, Вы писали:

VE>Ну вот в agda это просто оператор if_then_else_. Красиво? А я ещё могу в if проверить непустоту списка, а в ветке then использовать функцию head (голова списка), так как в then-ветке известно, что список не пуст и head можно применить. Никаких макросов, просто функции.

VE>Так что не макросами едиными.

Ну, дык никто не спорит, что в язык можно захардкодить то, что можно сделать на макросах . Это я к тому, что в Немерле можно тоже самое и сделано это в макросах, а не захардкоджено в компилятор.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[18]: Недостатки Nemerle
От: VladD2 Российская Империя www.nemerle.org
Дата: 16.07.12 00:11
Оценка:
Здравствуйте, STDray, Вы писали:

WH>>Н2 вообще будет построен на создании собственных систем типов заточенных под задачу.

STD>В рамках N2 описываются полноценные языки, со своими компиляторами. Макросами их назвать сложно.

Правильно будет называть их ДСЛ-ями. Н2 и делается с тем чтобы упростить создание ДЛС до предела и предоставить хост-языки в которые эти ДСЛ можно будет вставлять.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[28]: Недостатки Nemerle
От: Аноним  
Дата: 16.07.12 06:44
Оценка:
Здравствуйте, VladD2, Вы писали:

Agda дает доказательность. Из за этого объем текста и больше. Система типов Agda обеспечивает множество проверок, а чем больше средств обеспечения корректности кода тем больше текста и тем меньше надо делать тестов.

Н2 этого не обеспечивает да Н2 это особо и не надо. Макросы такого тоже не обеспечивают.

Н2 это язык переписывания термов. Причем довольно сильно специализированный.

Например мне до сих пор не понятно как например на Н2 будет устраняться хвостовая рекурсия (в язках написанных на Н2).
как будет решаться проблема неоднозначности синтаксисов. например я из одной библиотеки получил оператор +++!! имеющий приоритет 2 а из другой +++!! имеющий приоритет 6. Или например множественность for из разных библиотек. Как я понимаю Н2 не сможет обеспечить доказательную корректность кода.
Re[24]: Недостатки Nemerle
От: _Claus_  
Дата: 16.07.12 08:27
Оценка: :)
Здравствуйте, VladD2, Вы писали:

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


VE>> Кстати макросы высшего порядка есть?


VD>Это бессмысленный вопрос вызванный непониманием сути макросов.


это не надо! макросы — это не только то, что вы о них думаете, но и многое другое. Например макротипы, которые являются более совершенной концепцией макросов,
не только могут, но и будут иметь функции, принимающие себя в качестве аргументов. Промолчу о нашумевших здесь "метасвязках Анонима" — и так понятно, что это МП надсущности.
Re[29]: Недостатки Nemerle
От: WolfHound  
Дата: 16.07.12 08:38
Оценка: +1
Здравствуйте, <Аноним>, Вы писали:

А>Agda дает доказательность. Из за этого объем текста и больше. Система типов Agda обеспечивает множество проверок, а чем больше средств обеспечения корректности кода тем больше текста и тем меньше надо делать тестов.

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

А>Н2 этого не обеспечивает да Н2 это особо и не надо. Макросы такого тоже не обеспечивают.

Н2 может круче.
На Н2 можно задать предметно ориентированную систему типов.
И ловить ошибки предметной области без тонны кода построенного на побочных эффектах.

А>Н2 это язык переписывания термов. Причем довольно сильно специализированный.

Слышал звон.

А>Например мне до сих пор не понятно как например на Н2 будет устраняться хвостовая рекурсия (в язках написанных на Н2).

Будет. Там еще много чего будет.

А>как будет решаться проблема неоднозначности синтаксисов.

На практике нет такой проблемы.
Она надумана.
А если учесть то что Н2 может менять грамматику в любой момент и мы можем в разных ветках if разный синтаксис...

А>Как я понимаю Н2 не сможет обеспечить доказательную корректность кода.

Ты говоришь, так как будто есть языки, которые могут.
Агда не может. Всё что она может это доказать определенные свойства кода.
Н2 сможет сделать это как минимум не хуже. И уж точно намного проще.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[25]: Недостатки Nemerle
От: WolfHound  
Дата: 16.07.12 08:42
Оценка:
Здравствуйте, _Claus_, Вы писали:

_C_>это не надо! макросы — это не только то, что вы о них думаете, но и многое другое. Например макротипы, которые являются более совершенной концепцией макросов,

_C_>не только могут, но и будут иметь функции, принимающие себя в качестве аргументов.
То что ты написал это полнейший примитив по сравнению с тем что будет в Н2.

_C_>Промолчу о нашумевших здесь "метасвязках Анонима" — и так понятно, что это МП надсущности.

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

_C_>Тото думаю Влад с WH ругаются, а оно вона чо

Ругаемся мы от того что ты с умным видом что-то говоришь. Но ссылок на научные работы не даешь.
И как следствие все твои слова выглядят как "бла-бла-бла".
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[26]: Недостатки Nemerle
От: _Claus_  
Дата: 16.07.12 08:51
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


_C_>>это не надо! макросы — это не только то, что вы о них думаете, но и многое другое. Например макротипы, которые являются более совершенной концепцией макросов,

_C_>>не только могут, но и будут иметь функции, принимающие себя в качестве аргументов.
WH>То что ты написал это полнейший примитив по сравнению с тем что будет в Н2.

когда будет N2 тогда и поговорим. я тоже можем Бэтменом стану. без шуток.

_C_>>Промолчу о нашумевших здесь "метасвязках Анонима" — и так понятно, что это МП надсущности.

WH>Ты лучше ссылку дай.
WH>А то пара человек с умным видом говорят, что это круто.
WH>Но ссылок на работы не дают.

это Аноним не дает. я бы дал.
Re[27]: Недостатки Nemerle
От: WolfHound  
Дата: 16.07.12 09:49
Оценка:
Здравствуйте, _Claus_, Вы писали:

WH>>Ты лучше ссылку дай.

WH>>А то пара человек с умным видом говорят, что это круто.
WH>>Но ссылок на работы не дают.
_C_>это Аноним не дает. я бы дал.
Ты говоришь, что метасвязки это круто.
Значит, ты про них читал.
Значит, у тебя должны быть ссылки.
Где они?
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[28]: Недостатки Nemerle
От: _Claus_  
Дата: 16.07.12 09:56
Оценка: :))) :))
Здравствуйте, WolfHound, Вы писали:

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


WH>>>Ты лучше ссылку дай.

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

а ты ругаться не будешь, если отвечу?
я просто прикинул, что это может значить. на основе своих знаний семиотики и структурной лингвистики.
если ты возьмешь за труд и разберешься как работают вместе и конструируются понятия естественного языка,
то поймешь больше Анонима и его метасвязок
Re[28]: Недостатки Nemerle
От: VoidEx  
Дата: 16.07.12 12:29
Оценка:
Здравствуйте, VladD2, Вы писали:

VE>>Это только в мире эльфов на языке программирования пишут код, который нужен только для языка программирования.


VD>В мире эльфов пишут говнокод на Яве, а по вечерам ахают и прутся от крутости системы типов Агды.


В твоём да. В моём мире я пишу говнокод на Хаскеле, а по вечерам занимаюсь тем, что интересно за пределами программинга.
Re[28]: Недостатки Nemerle
От: VoidEx  
Дата: 16.07.12 12:59
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


VE>>Однако исходники Агда-компилятора открыты, если что. Так что могу. Правда почему-то менять компилятор напрямую некомильфо, а писать под него плагины — мегакрутая суперпупер технология.

WH>Это твои фантазии.
WH>С моей точки зрения это строго одно и то же.

Ок, если так.

WH>Но если сделать ДСЛ для того чтобы описывать языки это будет намного проще чем пилить код на ЯОН.


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

WH>Это только в мире эльфов языки общего назначения идеально подходят под задачу.


Я этого и не утверждал.
Re[29]: Недостатки Nemerle
От: VoidEx  
Дата: 16.07.12 13:07
Оценка: :)
Здравствуйте, VoidEx, Вы писали:

В догонку

WH>>Но если сделать ДСЛ для того чтобы описывать языки это будет намного проще чем пилить код на ЯОН.


Ну вот допустим чем тебе eval "1 + 2 * 4" не ДСЛ?
Re[29]: Недостатки Nemerle
От: VladD2 Российская Империя www.nemerle.org
Дата: 16.07.12 13:26
Оценка:
Здравствуйте, VoidEx, Вы писали:

WH>>Но если сделать ДСЛ для того чтобы описывать языки это будет намного проще чем пилить код на ЯОН.


VE>Пример такого ДСЛя и пример использования можешь привести?


Nemerle.Statechart — ДСЛ для описания конечных автоматов.
Nemerle.Xml — ДСЛ для генерации XML/HTML.
Nemerle.WUI.Reactive — ДСЛ для описания интерактивного веб-интерфейса.

А вообще, почитай Фаулера. У него не плохая книга этому вопросу посвящена.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[27]: Недостатки Nemerle
От: VladD2 Российская Империя www.nemerle.org
Дата: 16.07.12 13:31
Оценка:
Здравствуйте, _Claus_, Вы писали:

_C_>>>Промолчу о нашумевших здесь "метасвязках Анонима" -




_C_>это Аноним не дает. я бы дал.


А он и ты не одно лицо случаем? Потом если ты знаешь о чем говорил Аноним, то и дал бы ссылку.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[30]: Недостатки Nemerle
От: WolfHound  
Дата: 16.07.12 13:47
Оценка:
Здравствуйте, VoidEx, Вы писали:

WH>>>Но если сделать ДСЛ для того чтобы описывать языки это будет намного проще чем пилить код на ЯОН.

VE>Ну вот допустим чем тебе eval "1 + 2 * 4" не ДСЛ?
Это ДСЛ для арифметических выражений.
Задачи, которые сводятся исключительно к арифметике, в природе отсутствуют.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[29]: Недостатки Nemerle
От: WolfHound  
Дата: 16.07.12 13:47
Оценка:
Здравствуйте, VoidEx, Вы писали:

VE>Пример такого ДСЛя и пример использования можешь привести?

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

WH>>Это только в мире эльфов языки общего назначения идеально подходят под задачу.

VE>Я этого и не утверждал.
Короткая же у тебя память.

Забабахать систему, для которой идеально подходит Erlang.

... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[28]: Недостатки Nemerle
От: _Claus_  
Дата: 16.07.12 19:26
Оценка: :))
_C_>>это Аноним не дает. я бы дал.

VD>А он и ты не одно лицо случаем? Потом если ты знаешь о чем говорил Аноним, то и дал бы ссылку.


Братка это мой. не хочет тебе ссылку давать. говорит, съехал ты с темы
Автор: _Claus_
Дата: 13.07.12
, когда понял, что _Claus_ дело говорит.
Он все видит, братка мой, и передает тебе: "Серьезней надо быть, а если не прав, тем более".
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.