Здравствуйте, alex_public, Вы писали:
_>Что-то очень сомнительно. Там и так его и так мало (я же говорил, пара десятков Питон скриптов, на 1-2 экрана каждый). Куда ещё меньше то? )
А на клиенте сколько?
WH>>И не будет ресинхронизации между клиентом и сервером. _>а это вообще что? %)
Это когда клиентские и серверные скрипты друг друга не понимают.
WH>>Игры с IO в моём коде занимают 1/10000 если не меньше. _>Поздравляю) Значит ты относишься к той крайне узкой нише, в которой Хаскель может быть действительно полезен.
Да причем тут хаскель?
Я на нем вообще не пишу.
Просто не нужно IO по всему коду.
_>Так я и н говорю убирать. Достаточно сделать необязательными.
Это именно что убрать.
Как только у нас появляется изменяемое состояние, мы сразу теряем ленивость.
Ибо при работе с изменяемым состоянием ленивость использовать нельзя.
... << RSDN@Home 1.2.0 alpha 5 rev. 62>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, alex_public, Вы писали:
_>Брейнфак — это шутка. А bat файлы до сих пор кругом. Причём в главной роли и в самых современных инструментах. Вот допустим скачай последний Android SDK — там в главной роли выступает некий android.bat на сотню строк. )))
И ничего хорошего в этом нет.
_>Ох, да ознакомься ты уже с мат.частью))) Нет в Бейсике никаких объявлений переменных. Да и сам подумай зачем они там, если все переменные глобальные, а тип задаётся в имени.
Ох. В С++ ты это как компилировать собрался?
_>Хы, любопытно. Я себе такое не особо представляю, правда это и совсем не моя тема. )))
Примерно так.
Но имей в виду, что там описан довольно старый прототип.
Сейчас всё ушло далеко вперёд. [Nitra] Области видимости и связывание
Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, LaPerouse, Вы писали:
LP>>Да когда угодно. Например, при работе с веб-апи. WH>Что мешает описать типы для веб АПИ?
Кому? Интегратору? А зачем? Если обращение к данным происходит только для того, чтобы переложить данные из одного сервиса в другой? См. пример выше.
Социализм — это власть трудящихся и централизованная плановая экономика.
Здравствуйте, WolfHound, Вы писали:
_>>Что-то очень сомнительно. Там и так его и так мало (я же говорил, пара десятков Питон скриптов, на 1-2 экрана каждый). Куда ещё меньше то? ) WH>А на клиенте сколько?
Самих скриптов на клиенте ещё меньше, но зато каждый заметно жирнее. )))
WH>>>И не будет ресинхронизации между клиентом и сервером. _>>а это вообще что? %) WH>Это когда клиентские и серверные скрипты друг друга не понимают.
Не представляю себе такого. )
_>>Поздравляю) Значит ты относишься к той крайне узкой нише, в которой Хаскель может быть действительно полезен. WH>Да причем тут хаскель? WH>Я на нем вообще не пишу. WH>Просто не нужно IO по всему коду.
Я понял) Просто отмечаю, что тебе как раз его можно с пользой использовать. Но это скорее исключение, чем правило.
_>>Так я и н говорю убирать. Достаточно сделать необязательными. WH>Это именно что убрать. WH>Как только у нас появляется изменяемое состояние, мы сразу теряем ленивость. WH>Ибо при работе с изменяемым состоянием ленивость использовать нельзя.
Мы теряем ленивость только на не чистых функциях, а не вообще. ) Собственно мы даже ничего и не теряем, т.к. в современном Хаскеле внутри монад (реализующих не чистые функции) опять же никакой ленивости нет. Вопрос только в удобстве работы с таким кодом. В Хаскеле он находится в ущемлённом состояние, а можно было бы сделать равноправным. Тогда бы возможно получился действительно интересный язык.
Здравствуйте, WolfHound, Вы писали:
_>>Ох, да ознакомься ты уже с мат.частью))) Нет в Бейсике никаких объявлений переменных. Да и сам подумай зачем они там, если все переменные глобальные, а тип задаётся в имени. WH>Ох. В С++ ты это как компилировать собрался?
Соберём их все после прохода по AST и объявим одним список перед main.
_>>Хы, любопытно. Я себе такое не особо представляю, правда это и совсем не моя тема. ))) WH>Примерно так. WH>Но имей в виду, что там описан довольно старый прототип. WH>Сейчас всё ушло далеко вперёд. WH>[Nitra] Области видимости и связывание
Интересно. Хотя насчёт задания самих типов над AST у меня особых вопрос не было. Меня больше интересовали именно ограничения связанные с ними. Например, если я захочу указать, что в моём DSL в for можно задавать только integer тип, то как формулируется подобное.
Здравствуйте, alex_public, Вы писали:
_>Интересно. Хотя насчёт задания самих типов над AST у меня особых вопрос не было.
А зря. Там очень много подводных граблей.
_>Меня больше интересовали именно ограничения связанные с ними. Например, если я захочу указать, что в моём DSL в for можно задавать только integer тип, то как формулируется подобное.
В данном плане синтаксические конструкции ничем не отличаются от функций.
... << RSDN@Home 1.2.0 alpha 5 rev. 62>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, alex_public, Вы писали:
_>Самих скриптов на клиенте ещё меньше, но зато каждый заметно жирнее. )))
И все общаются друг с другом, питоном и ещё хрен знает чем.
WH>>Это когда клиентские и серверные скрипты друг друга не понимают. _>Не представляю себе такого. )
Что совсем никогда не было что меняешь в одном месте, а разваливается в другом? Ибо контракты изменились, а компилятор не проконтролировал.
_>Я понял) Просто отмечаю, что тебе как раз его можно с пользой использовать. Но это скорее исключение, чем правило.
Тут скорее ты исключение, если у тебя IO везде.
_>Мы теряем ленивость только на не чистых функциях, а не вообще. ) Собственно мы даже ничего и не теряем, т.к. в современном Хаскеле внутри монад (реализующих не чистые функции) опять же никакой ленивости нет. Вопрос только в удобстве работы с таким кодом. В Хаскеле он находится в ущемлённом состояние, а можно было бы сделать равноправным. Тогда бы возможно получился действительно интересный язык.
Те ты предлагаешь другой сахар для монад или что?
... << RSDN@Home 1.2.0 alpha 5 rev. 62>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, alex_public, Вы писали:
_>Конечно при условии, что многим .net программистам интересны подобные сложные темы (про это я уже высказывал большие сомнения).
Если выбросить ".net" то смысл не изменится. Более того, заменить на "С++" и что угодно — будет ровно то же. Причина в том, что везде и всюду "многие" не хотят ничего учить. В сиплюсе в таком случае будут одни симптомы, в дотнете — другие, а в джаве — третьи. 90% _инженеров_ развиваются исключительно за счет текущих задач. Я, например, регулярно встречаю сиплюсников, которые не знают ни шаблонов, ни исключений, ни тот же стл. Что интересно — на любом уровне ЗП.