Здравствуйте, DerBober, Вы писали:
DB>Здравствуйте, rg_software, Вы писали:
_>>Ну хорошо, не нужна мне "методология" со всеми её наворотами. Я просто вижу (психологически), что мою программу удобно представить в виде конечного автомата, вернее, в виде машины с конечным числом состояний. Как мне назвать этот психологический инструмент? "Автоматное программирование"? Ан нет, на это название уже претендуют господа из SoftCraft'а...
DB>Подскажи, какая статья или утверждение старкрафтовцев тебя так смутили?
DB>Зачем сразу автоматное программирование? Скажи что ты строишь модель некоторой системы используя автоматные модели (ссылки на Тюринга или еще кого либо). Потом уже рассуждай о реализации этой модели на языке программирования.
Ну термин хорош, что ж делать... а все эти обиняки сразу понятны знающим
Здравствуйте, rg_software, Вы писали:
_>Да смотрел... по правде говоря, именно эти ребята меня и беспокоят. То есть то, что они делают и развивают автоматный подход -- это замечательно, но они претендуют на то, что любая программа, составленная в "автоматном" стиле, должна быть со ссылкой на них как на авторов идеи.
Странно... Ни на softcraft, ни в книге Шалыто я не нашел даже намека на подобное. Может, я чего-то пропустил, проект делать надо, однако.
Излагаются основные положения новой технологии программирования, названной автором "автоматное программирование".
Тогда почитай монографию Шалыто "SWITCH-технология". Может, там найдешь ответы. У него список использованных источиков — больше 300 названий. Глядишь, и найдется, откуда появился термин"Автоматное программирование".
Здравствуйте, Privalov, Вы писали:
P>Здравствуйте, rg_software, Вы писали:
_>>ладно, тут долгая история, попробуем проще: http://is.ifmo.ru/works/tech_aut_prog _>>Аннотации достаточно.
P>Тебя смутило это? P>
P>Излагаются основные положения новой технологии программирования, названной автором "автоматное программирование".
P>Тогда почитай монографию Шалыто "SWITCH-технология". Может, там найдешь ответы. У него список использованных источиков — больше 300 названий. Глядишь, и найдется, откуда появился термин"Автоматное программирование".
_>А теперь внимание, вопрос. Может ли кто-нибудь указать на (1) более раннее описание сходной техники;
Совершенно точно я использовал эту технику в своих проектах еще в 1993. Узнал про нее из учебника по Прологу (перевод и издание в 80х). Сам Пролог появился в 60х.
Возможно следует полистать книгу Стерлинг, Шапиро, Искусство программирования на языке Пролог.
Там еще множество заумных методов можно отыскать
Как конкретно эта идея называлась и из какой книги я ее узнал не помню (((
Здравствуйте, shuklin, Вы писали:
S>Совершенно точно я использовал эту технику в своих проектах еще в 1993. Узнал про нее из учебника по Прологу (перевод и издание в 80х). Сам Пролог появился в 60х.
Повторюсь. Это техники и методы, а господа под термином "автоматное программирование" понимают целую, вполне конкретную технологию.
Здравствуйте, rg_software, Вы писали:
_>А теперь внимание, вопрос. Может ли кто-нибудь указать на (1) более раннее описание сходной техники; (2) определить название того, как это называется ("автоматное программирование"?) и когда этот термин появился (со ссылками, разумеется); (3) привести примеры использования данного подхода (не моделирования обычных конечных автоматов -- это любой движок регулярных выражений делает) в сравнительно старых проектах?
Тут уже были отсылки к Тьюрингу и Прологу. Могу еще отметить язык SDL, который появился в 70-х и базируется на автоматах и асинхронных процессах.
В телекоммункационной отрасли он применялся очень широко.
"Шалыто и Ко" не привнесли ровным счетом ничего нового. Просто применяют хорошо отработанные методики.
Здравствуйте, _Obelisk_, Вы писали:
_O_>Здравствуйте, rg_software, Вы писали:
_>>А теперь внимание, вопрос. Может ли кто-нибудь указать на (1) более раннее описание сходной техники; (2) определить название того, как это называется ("автоматное программирование"?) и когда этот термин появился (со ссылками, разумеется); (3) привести примеры использования данного подхода (не моделирования обычных конечных автоматов -- это любой движок регулярных выражений делает) в сравнительно старых проектах?
_O_>Тут уже были отсылки к Тьюрингу и Прологу. Могу еще отметить язык SDL, который появился в 70-х и базируется на автоматах и асинхронных процессах. _O_>В телекоммункационной отрасли он применялся очень широко. _O_>"Шалыто и Ко" не привнесли ровным счетом ничего нового. Просто применяют хорошо отработанные методики.
Однако эти господа весьма рьяно свой приоритет отстаивают... На мой субъективный взгляд -- ну да, молодцы, вокруг автоматов построили толстую теоретическую базу и подкрепили программными проектами. Но говорить, что любая программа в "автоматном стиле" навеяна их идеологией -- неправильно.
Другое дело, что выясняется обидная вещь. Для описания поведения систем в "обычном" программировании автоматы использовались ещё в игре Pacman (вычитал буквально сегодня) -- ну, там у врагов были "режимы" -- преследование, убегание... Так никто не догадался обозвать это "новой парадигмой" или хотя бы "психологическим инструментом"... А то видите как, кто догадался поставить копирайт на народную песню -- тот и автор.
_>Однако эти господа весьма рьяно свой приоритет отстаивают... На мой субъективный взгляд -- ну да, молодцы, вокруг автоматов построили толстую теоретическую базу и подкрепили программными проектами. Но говорить, что любая программа в "автоматном стиле" навеяна их идеологией -- неправильно.
_>Другое дело, что выясняется обидная вещь. Для описания поведения систем в "обычном" программировании автоматы использовались ещё в игре Pacman (вычитал буквально сегодня) -- ну, там у врагов были "режимы" -- преследование, убегание... Так никто не догадался обозвать это "новой парадигмой" или хотя бы "психологическим инструментом"... А то видите как, кто догадался поставить копирайт на народную песню -- тот и автор.
А нельзя этих авторов сюда пригласить чтобы разяъснили свою позицию?
Здравствуйте, FR, Вы писали:
FR>Здравствуйте, rg_software, Вы писали:
_>>Однако эти господа весьма рьяно свой приоритет отстаивают... На мой субъективный взгляд -- ну да, молодцы, вокруг автоматов построили толстую теоретическую базу и подкрепили программными проектами. Но говорить, что любая программа в "автоматном стиле" навеяна их идеологией -- неправильно.
_>>Другое дело, что выясняется обидная вещь. Для описания поведения систем в "обычном" программировании автоматы использовались ещё в игре Pacman (вычитал буквально сегодня) -- ну, там у врагов были "режимы" -- преследование, убегание... Так никто не догадался обозвать это "новой парадигмой" или хотя бы "психологическим инструментом"... А то видите как, кто догадался поставить копирайт на народную песню -- тот и автор.
FR>А нельзя этих авторов сюда пригласить чтобы разяъснили свою позицию?
в принципе, позиция авторов ясна: (1) термин "автоматное программирование" зарезервирован для их подхода (описан в монографии проф. Шалыто); (2) "автоматное программирование" -- это не просто имитация конечного автомата, а "парадигма программирования" (в ней идеи автоматов действительно развиты дальше, ничего не скажешь).
Я имел кое-какую личную переписку, чтобы прояснить для себя суть. Но в принципе, можно и вправду поговорить с людьми оттуда...
Здравствуйте, rg_software, Вы писали:
_>Однако эти господа весьма рьяно свой приоритет отстаивают... На мой субъективный взгляд -- ну да, молодцы, вокруг автоматов построили толстую теоретическую базу и подкрепили программными проектами. Но говорить, что любая программа в "автоматном стиле" навеяна их идеологией -- неправильно.
Теория автоматов — это не их заслуга. Этот раздел математики существует уже полвека. И практические приложения почти столько же.
_>Другое дело, что выясняется обидная вещь. Для описания поведения систем в "обычном" программировании автоматы использовались ещё в игре Pacman (вычитал буквально сегодня) -- ну, там у врагов были "режимы" -- преследование, убегание... Так никто не догадался обозвать это "новой парадигмой" или хотя бы "психологическим инструментом"... А то видите как, кто догадался поставить копирайт на народную песню -- тот и автор.
Да они просто не хотят замечать того, что в мире происходит. Всякими приложениями автоматов занимаются туча народа. Особенно популярны Abstract Statemachine-ы. Последние, к примеру, используются для формализации run-time семантики ряда языков (того же SDL-я).
А если почитать сообщества embedded developer-ов — то там автоматы на каждом шагу попадаются.
Здравствуйте, rg_software, Вы писали:
_>Здравствуйте, FR, Вы писали:
_>в принципе, позиция авторов ясна: (1) термин "автоматное программирование" зарезервирован для их подхода (описан в монографии проф. Шалыто); (2) "автоматное программирование" -- это не просто имитация конечного автомата, а "парадигма программирования" (в ней идеи автоматов действительно развиты дальше, ничего не скажешь).
_>>>Однако эти господа весьма рьяно свой приоритет отстаивают... На мой субъективный взгляд -- ну да, молодцы, вокруг автоматов построили толстую теоретическую базу и подкрепили программными проектами. Но говорить, что любая программа в "автоматном стиле" навеяна их идеологией -- неправильно.
_>в принципе, позиция авторов ясна: (1) термин "автоматное программирование" зарезервирован для их подхода (описан в монографии проф. Шалыто); (2) "автоматное программирование" -- это не просто имитация конечного автомата, а "парадигма программирования" (в ней идеи автоматов действительно развиты дальше, ничего не скажешь).
_>Я имел кое-какую личную переписку, чтобы прояснить для себя суть. Но в принципе, можно и вправду поговорить с людьми оттуда...
В этой теме вы постоянно апеллируете к личной переписке с авторами, однако ничего конкретного из нее не приводите.
Подобное поведение я считаю некорректным, т.к. создается негативное мнение о ваших корреспондентах, которое базируется исключительно на ваших словах, неподтвержденных ничем кроме ваших же слов.
Либо приводите цитаты, либо не пытайтесь пересказывать своими словами то, что они якобы вам пишут.
Здравствуйте, rg_software, Вы писали:
FR>>А нельзя этих авторов сюда пригласить чтобы разяъснили свою позицию?
_>в принципе, позиция авторов ясна: (1) термин "автоматное программирование" зарезервирован для их подхода (описан в монографии проф. Шалыто); (2) "автоматное программирование" -- это не просто имитация конечного автомата, а "парадигма программирования" (в ней идеи автоматов действительно развиты дальше, ничего не скажешь).
_>Я имел кое-какую личную переписку, чтобы прояснить для себя суть. Но в принципе, можно и вправду поговорить с людьми оттуда...
Знаешь, если об истоках, то еще в 70-х была такая книжка Оллонгрена "Определение языков программирования конечными автоматами"... Серия МО ЭВМ издательства Мир...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, SomeOne_TT, Вы писали:
SO_>В этой теме вы постоянно апеллируете к личной переписке с авторами, однако ничего конкретного из нее не приводите. SO_>Подобное поведение я считаю некорректным, т.к. создается негативное мнение о ваших корреспондентах, которое базируется исключительно на ваших словах, неподтвержденных ничем кроме ваших же слов.
SO_>Либо приводите цитаты, либо не пытайтесь пересказывать своими словами то, что они якобы вам пишут.
Я не хочу ругаться, но причём тут "якобы"?? И никакого "негативного" мнения я не высказываю и не пытаюсь здесь навязать -- меня интересует истина. А если Вам угодно цитат, это легко -- и даже не из частной переписки:
"В этой [SWITCH-]технологии базовым является понятие "состояние". Добавляя к нему понятие "входное воздействие", естественным образом вводится понятие "автомат без выхода" (автомат без выхода = состояния + входные воздействия). После добавления понятия "выходное воздействие" эта формула приобретает вид: автомат = состояния + входные воздействия + выходные воздействия.
При этом соответствующий подход к программированию может быть назван "автоматным программированием", а процесс проектирования программ — "автоматным проектированием" [1]."
[1]: Шалыто А.А. SWITCH-технология. Алгоритмизация и программирование задач логического управления. СПб.: Наука, 1998. 628 с.
"...по мнению автора, более естественной для рассматриваемого класса задач является первая [стратегия, ориентированная на состояния и события] из них, так как "состояние" по своей природе статично, а "событие" динамично, и поэтому "управление по состояниям" является более целесообразным, чем "управление по событиям" <...> Так как оба понятия "состояние" и "событие" входят в понятие "автомат", то такой вид управления может быть назван "автоматным управлением, а его программная реализация -- "автоматным программированием" "
Автор никуда не ссылается; в книге [1] понятие АП вводится "с нуля", соответственно, автор претендует на этот термин и на этот подход.
Здравствуйте, rg_software, Вы писали:
_>Насчёт изобретения автоматов Тьюрингом и Ко -- это всё понятно; но... Вот дальше мне предлагают статью Гурина. Это ведь уже не совсем автоматы Тьюринга, не так ли? Отлично, пусть это будет называться "технологией STEP". Пусть подход, разработанный Шалыто, называется "SWITCH-технология", это тоже нормально, никаких возражений.
Колесо, говорят, тоже кто-то умудрился запатентовать.
Здравствуйте, rg_software, Вы писали:
_>Автор никуда не ссылается; в книге [1] понятие АП вводится "с нуля", соответственно, автор претендует на этот термин и на этот подход.
Создание терминов считается таким же поситаемым вкладом в науку, как и доказательство теорем, являясь тем самым объектом признания приоритета, цитирования и других требований научной этики.
А.П. Ершов, "Введение в теоретическое программирование", глава вторая, параграф второй.
По-моему, ты очень сильно паришься. Правильный ответ: в своей работе сделать примечание:
Вообще говоря, применение конечных автоматов к описанию программ восходит еще к древним шумерам. Термин "автоматное программирования" для описания схожего подхода введен в [1]. Наше определение отличается от приведенного там: ...
Все. Этого достаточно. Насчет требования ссылаться на них при написании программ — это либо ты чего-то не понял, либо у них гуси. Ты же не обязан ссылаться на Дийкстру каждый раз, как пишешь структурированную программу!
1.1.4 stable rev. 510
Уйдемте отсюда, Румата! У вас слишком богатые погреба.