November 27th, 2009

2021 год

Интерактивное программирование

Interactive programming -- это про spreadsheet languages и прочие фокусы, где меняют куски кода в одном месте экрана, чтобы получить (ожиданно!) изменения кода в другом месте экрана, "как в экселе" -- http://www.cs.bham.ac.uk/~rnp/

Похожее можно встретить, например, в Matematica 6 -- http://www.wolfram.com/products/mathematica/newin6/content/DynamicInteractivity/

Основные идеи -- это про эквивалентность времени компиляции времени выполнения, инкрементальность вычислений.

Интерактивность, говорит автор подхода (Perera) дает чувство логики более высоких порядков в программе с логикой первого порядка: http://dynamicaspects.org/papers/PADL2010Final.pdf. У автора есть и блог: http://dynamicaspects.org/blog/index.html

Это все продолжение ответа на вопрос, который я задавал в марте 2008г (суперкомпиляторы и суперинтерпретаторы: http://ailev.livejournal.com/565598.html): как подход моделирования/суперкомпиляции прорывается через суперпозднее связывание. Предыдущий заход на это был в "Универсальный моделер" http://ailev.livejournal.com/757999.html в виде ссылок на работы по evolution in the large and in the small in model-driven development (рассматривались такие изменения метамоделей, чтобы сохранялась целостность моделей -- все то же самое, только ступенькой модельной иерархии выше).

Обычно переход от статики к динамике во всех науках означал крутую революцию. Может, компьютерная революция как раз где-то в этом месте? Все как раз на это указывает, даже то, что эти "интерактивные подходы к программированию" сейчас являются вполне себе rocket science даже для хардкорных нердов.
2021 год

Свободное языковое капище: Whole Platform

Платформа Whole (GNU LGPL) на Eclipse заявлена как language workbench -- http://whole.sourceforge.net/ (последняя версия -- 22 апреля 2009г., краткое описание -- http://whole.sourceforge.net/docs/Sol08_EclipseCon.pdf). Сделал Riccardo Solmi (http://www.cs.unibo.it/~solmi/), это была его докторская диссертация (http://whole.sourceforge.net/docs/Sol05_JUGMI.pdf).

Существенно по возможностям отличается от MPS (в конце страницы: http://www.theserverside.com/news/thread.tss?thread_id=53606), написана целиком на себе самой (что нетрудно, ибо одним из DSL самой Whole является Java, другим -- какое-то надмножество SQL и много чего еще интересного).

UPDATE: на мой вопрос, как идут дела, 30 ноября 2009г. получен ответ от Solmi: "The last public release of the Whole Platform is the one of April. I am committed to continue the development of the platform full-time. The next milestone will mark a big step forward with respect to competition in many areas."
2021 год

Принципы создания DSL: еще один манифест -- KISS.

Манифестов прибывает: разработчики DSL сделали развернутый манифест -- http://www.industrialized-software.org/kiss-initiative

Начало как у всех: "мы будем ценить принципы Agile manifesto и требовать учета интересов самых разных сторон -- и чтобы DSL был экономически выгоден". Поэтому смотреть нужно сразу в конец страницы, где есть ссылки на литературу, а также определяются KISS-критерии для взаимодействия языковых сред (пять уровней).

И что мы там видим?! Мы видим, что вопросы, которые давным-давно решаются поставщиками "Больших САПР" только-только начинают решаться этим DSL-сообществом.

Разница только в том, что сообщество хочет иметь инструментарий, чтобы делать эти САПРы дешево и сердито. А поставщики САПР хотели бы иметь такой инструментарий внутри себя и поставлять задорого готовые решения.

Почему САПР, а не какие-нибудь EAМ с ERP? А просто в САПР есть принципиально отличные от "табличных отчетов" и "диаграмм в экселе" представления: 2D чертежи и 3D компоновки, принципиальные схемы гидравлические и электрические, математика, имитационное моделирование в ассортименте, а все эта "финансовые" и "закупочно-складские" представления тоже есть -- кажущиеся уже очень-очень простыми по сравнению с предыдущими.

Дальше -- DSL-движение как немашиностроительная и вообще непроизводственная (а общего вида) САПРизация, включая первым делом сапризацию самого софтостроения (CASE).
2021 год

Мой английский блог

Вспомнил, что в 2007г. заводил англоязычный блог (http://ailev.wordpress.com). А поскольку в самых разных местах я сегодня что-то пишу по-английски, буду делать с ним то же, что делаю с дневничком в ЖЖ: выкладывать туда то, что более-менее пригодно для публичного ознакомления.

И не буду уже бояться писать на Russlish: кому моя писанина понадобится, тот вряд ли будет обращать внимание на косноязычие (да и сам он будет откуда-нибудь из Бразилии, где акцент не меньше ;)

Первая запись -- выдержки из дискуссии с Kent Palmer в Google Wave, посвященной системной инженерии (https://wave.google.com/wave/#restored:wave:googlewave.com!w%252Bi8fNaszLA), поскольку не у всех есть эккаунты в это место, то я и вынесу свои ремарки в англоязычный блог.

Вордпресс хорош, дает короткие ссылки на записи. Так, эта моя запись имеет короткий адрес http://wp.me/p3DYC-4. А длинный адрес -- http://ailev.wordpress.com/2009/11/27/systems-engineering-in-good-shape-its-changing/

Комменты там, плиз, тоже по-английски, ежели кто захочет написать. Моя на них будет попытайся отвечает.
2021 год

Регулируемые биржевые цены

Зарекался я комментировать дела нашего государства, но не выдержал -- началось обсуждение очередного проекта постановления правительства, по которому биржевые цены подлежат регулированию, чтобы они не вылезали из предписанного ФАС коридора, причем на бирже товары тоже появляются по настоянию ФАС (http://alex-pirojenko.livejournal.com/10013.html).

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