Re[39]: DSL'и и инструменты для них
От: WolfHound  
Дата: 12.08.15 17:24
Оценка:
Здравствуйте, alex_public, Вы писали:

_>Что-то очень сомнительно. Там и так его и так мало (я же говорил, пара десятков Питон скриптов, на 1-2 экрана каждый). Куда ещё меньше то? )

А на клиенте сколько?

WH>>И не будет ресинхронизации между клиентом и сервером.

_>а это вообще что? %)
Это когда клиентские и серверные скрипты друг друга не понимают.

WH>>Игры с IO в моём коде занимают 1/10000 если не меньше.

_>Поздравляю) Значит ты относишься к той крайне узкой нише, в которой Хаскель может быть действительно полезен.
Да причем тут хаскель?
Я на нем вообще не пишу.
Просто не нужно IO по всему коду.

_>Так я и н говорю убирать. Достаточно сделать необязательными.

Это именно что убрать.
Как только у нас появляется изменяемое состояние, мы сразу теряем ленивость.
Ибо при работе с изменяемым состоянием ленивость использовать нельзя.
... << RSDN@Home 1.2.0 alpha 5 rev. 62>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[34]: DSL'и и инструменты для них
От: WolfHound  
Дата: 12.08.15 17:24
Оценка:
Здравствуйте, alex_public, Вы писали:

_>Брейнфак — это шутка. А bat файлы до сих пор кругом. Причём в главной роли и в самых современных инструментах. Вот допустим скачай последний Android SDK — там в главной роли выступает некий android.bat на сотню строк. )))

И ничего хорошего в этом нет.

_>Ох, да ознакомься ты уже с мат.частью))) Нет в Бейсике никаких объявлений переменных. Да и сам подумай зачем они там, если все переменные глобальные, а тип задаётся в имени.

Ох. В С++ ты это как компилировать собрался?

_>Хы, любопытно. Я себе такое не особо представляю, правда это и совсем не моя тема. )))

Примерно так.
Но имей в виду, что там описан довольно старый прототип.
Сейчас всё ушло далеко вперёд.
[Nitra] Области видимости и связывание
Автор: VladD2
Дата: 28.05.15

[Nitra] AST и зависимые свойства
Автор: VladD2
Дата: 28.05.15
... << RSDN@Home 1.2.0 alpha 5 rev. 62>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[28]: DSL'и и инструменты для них
От: LaPerouse  
Дата: 13.08.15 06:30
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


LP>>Да когда угодно. Например, при работе с веб-апи.

WH>Что мешает описать типы для веб АПИ?

Кому? Интегратору? А зачем? Если обращение к данным происходит только для того, чтобы переложить данные из одного сервиса в другой? См. пример выше.
Социализм — это власть трудящихся и централизованная плановая экономика.
Re[40]: DSL'и и инструменты для них
От: alex_public  
Дата: 13.08.15 17:37
Оценка:
Здравствуйте, WolfHound, Вы писали:

_>>Что-то очень сомнительно. Там и так его и так мало (я же говорил, пара десятков Питон скриптов, на 1-2 экрана каждый). Куда ещё меньше то? )

WH>А на клиенте сколько?

Самих скриптов на клиенте ещё меньше, но зато каждый заметно жирнее. )))

WH>>>И не будет ресинхронизации между клиентом и сервером.

_>>а это вообще что? %)
WH>Это когда клиентские и серверные скрипты друг друга не понимают.

Не представляю себе такого. )

_>>Поздравляю) Значит ты относишься к той крайне узкой нише, в которой Хаскель может быть действительно полезен.

WH>Да причем тут хаскель?
WH>Я на нем вообще не пишу.
WH>Просто не нужно IO по всему коду.

Я понял) Просто отмечаю, что тебе как раз его можно с пользой использовать. Но это скорее исключение, чем правило.

_>>Так я и н говорю убирать. Достаточно сделать необязательными.

WH>Это именно что убрать.
WH>Как только у нас появляется изменяемое состояние, мы сразу теряем ленивость.
WH>Ибо при работе с изменяемым состоянием ленивость использовать нельзя.

Мы теряем ленивость только на не чистых функциях, а не вообще. ) Собственно мы даже ничего и не теряем, т.к. в современном Хаскеле внутри монад (реализующих не чистые функции) опять же никакой ленивости нет. Вопрос только в удобстве работы с таким кодом. В Хаскеле он находится в ущемлённом состояние, а можно было бы сделать равноправным. Тогда бы возможно получился действительно интересный язык.
Re[35]: DSL'и и инструменты для них
От: alex_public  
Дата: 13.08.15 17:47
Оценка:
Здравствуйте, WolfHound, Вы писали:

_>>Ох, да ознакомься ты уже с мат.частью))) Нет в Бейсике никаких объявлений переменных. Да и сам подумай зачем они там, если все переменные глобальные, а тип задаётся в имени.

WH>Ох. В С++ ты это как компилировать собрался?

Соберём их все после прохода по AST и объявим одним список перед main.

_>>Хы, любопытно. Я себе такое не особо представляю, правда это и совсем не моя тема. )))

WH>Примерно так.
WH>Но имей в виду, что там описан довольно старый прототип.
WH>Сейчас всё ушло далеко вперёд.
WH>[Nitra] Области видимости и связывание
Автор: VladD2
Дата: 28.05.15

WH>[Nitra] AST и зависимые свойства
Автор: VladD2
Дата: 28.05.15


Интересно. Хотя насчёт задания самих типов над AST у меня особых вопрос не было. Меня больше интересовали именно ограничения связанные с ними. Например, если я захочу указать, что в моём DSL в for можно задавать только integer тип, то как формулируется подобное.
Re[36]: DSL'и и инструменты для них
От: WolfHound  
Дата: 17.08.15 17:59
Оценка:
Здравствуйте, alex_public, Вы писали:

_>Интересно. Хотя насчёт задания самих типов над AST у меня особых вопрос не было.

А зря. Там очень много подводных граблей.

_>Меня больше интересовали именно ограничения связанные с ними. Например, если я захочу указать, что в моём DSL в for можно задавать только integer тип, то как формулируется подобное.

В данном плане синтаксические конструкции ничем не отличаются от функций.
... << RSDN@Home 1.2.0 alpha 5 rev. 62>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[41]: DSL'и и инструменты для них
От: WolfHound  
Дата: 17.08.15 17:59
Оценка:
Здравствуйте, alex_public, Вы писали:

_>Самих скриптов на клиенте ещё меньше, но зато каждый заметно жирнее. )))

И все общаются друг с другом, питоном и ещё хрен знает чем.

WH>>Это когда клиентские и серверные скрипты друг друга не понимают.

_>Не представляю себе такого. )
Что совсем никогда не было что меняешь в одном месте, а разваливается в другом? Ибо контракты изменились, а компилятор не проконтролировал.

_>Я понял) Просто отмечаю, что тебе как раз его можно с пользой использовать. Но это скорее исключение, чем правило.

Тут скорее ты исключение, если у тебя IO везде.

_>Мы теряем ленивость только на не чистых функциях, а не вообще. ) Собственно мы даже ничего и не теряем, т.к. в современном Хаскеле внутри монад (реализующих не чистые функции) опять же никакой ленивости нет. Вопрос только в удобстве работы с таким кодом. В Хаскеле он находится в ущемлённом состояние, а можно было бы сделать равноправным. Тогда бы возможно получился действительно интересный язык.

Те ты предлагаешь другой сахар для монад или что?
... << RSDN@Home 1.2.0 alpha 5 rev. 62>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re: DSL'и и инструменты для них
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 18.08.15 22:11
Оценка: +1
Здравствуйте, alex_public, Вы писали:

_>Конечно при условии, что многим .net программистам интересны подобные сложные темы (про это я уже высказывал большие сомнения).


Если выбросить ".net" то смысл не изменится. Более того, заменить на "С++" и что угодно — будет ровно то же. Причина в том, что везде и всюду "многие" не хотят ничего учить. В сиплюсе в таком случае будут одни симптомы, в дотнете — другие, а в джаве — третьи. 90% _инженеров_ развиваются исключительно за счет текущих задач. Я, например, регулярно встречаю сиплюсников, которые не знают ни шаблонов, ни исключений, ни тот же стл. Что интересно — на любом уровне ЗП.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.