Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Вс фев 23, 2020 18:37

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Ответить
Имя пользователя:
Заголовок:
Текст сообщения:
Введите текст вашего сообщения. Длина сообщения в символах не более: 60000

Размер шрифта:
Цвет шрифта
Настройки:
BBCode ВКЛЮЧЕН
[img] ВЫКЛЮЧЕН
[flash] ВЫКЛЮЧЕН
[url] ВКЛЮЧЕН
Смайлики ВЫКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Не преобразовывать адреса URL в ссылки
Вопрос
Теперь гостю придется вводить здесь пароль. Не от своей учетной записи, а ПАРОЛЬ ДЛЯ ГОСТЯ, получить который можно после регистрации на форуме через ЛС.:
Этот вопрос предназначен для выявления и предотвращения автоматических регистраций.
   

Обзор темы - Автоматы (FSM)
Автор Сообщение
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
mOleg писал(а):
Зачем других людей привлекать-напрягать, да еще ждать пока они что-то сделают?
Да и не знаю я наперед, что может мне для отладки понадобиться, особенно, когда ТЗ все время корректируется и дополняется.

Ну наверное у нас разная организация процесса.
Свою систему я отлаживаю сам а "утилитки" нужны в процессе отладки изделия в комплексе тут в любом случае много людей задействовано, и программисты в том числе. Если я за них буду работу делать то кто сделает мою за меня?
Сообщение Добавлено: Пт сен 27, 2019 10:03
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
_Harry писал(а):
А утилитки для себя на работе не пишу для этого у нас штатные программисты трудятся.

Ну, так, в процессе отладки изделия просто удобно использовать консолью форта и всякие там команды подавать.
Зачем других людей привлекать-напрягать, да еще ждать пока они что-то сделают?
Да и не знаю я наперед, что может мне для отладки понадобиться, особенно, когда ТЗ все время корректируется и дополняется.
Сообщение Добавлено: Чт сен 26, 2019 19:59
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
Hishnik писал(а):
Эээ... "состояния - это функции"??? Это как минимум требует пояснения. Это предложение узнавать состояние КА вызовами функций? КА - это, к примеру, настольная лампа с сенсорной кнопкой. У нее два состояния - "включено" и "выключено". Но это не функции.

Вот очень спорно что не функции особенно с сенсорной кнопкой и особенно если не только лампочка управляется МК.
А как правило так и бывает. Ну и никто не отказывается от более простых способов типа CASE:
Но когда автомат имеет много состояний указатель работает быстрее и код вообщем получается более понятным и читаемым.
Сообщение Добавлено: Чт сен 26, 2019 15:29
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
mOleg писал(а):
а я пользую, но для оснастки, отладки, диагностики, в различных утилитарных целях, не касающихся готового изделия, т.к. там требуется, чтобы кроме меня кто-то что-то мог понять.

Остается только позавидовать :)
У меня такой возможности нет однозначное требование только Си Си++ или Ассемблер.
А утилитки для себя на работе не пишу для этого у нас штатные программисты трудятся.
Мое дело схемы и МК и там у меня сплошные автоматы....
Сообщение Добавлено: Чт сен 26, 2019 15:19
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
_Harry писал(а):
Я тоже последнее время этот способ активно использую.
Кстати считал себя "изобретателем" :) нигде не встречал описания такого способа реализации автоматов.

ну, я тоже не встречал, прижало - пораскинул мыслями 8)
(хотя очень подозреваю, что все же кто-то уже давно придумал раньше)

Так однозначно удобнее, чем:
_Harry писал(а):
Но для малого количества состояний использую swith() case: классический способ он как то нагляднее особенно если на одну страницу все помещается.

тем более, чем более сложные переходы между состояниями и чем больше их приходится править (расширять).

_Harry писал(а):
(Мне вот даже жалко стало что воспользоваться кодом не могу на работе только Си.)

а я пользую, но для оснастки, отладки, диагностики, в различных утилитарных целях, не касающихся готового изделия, т.к. там требуется, чтобы кроме меня кто-то что-то мог понять.
Сообщение Добавлено: Пт сен 20, 2019 20:35
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
Wlad писал(а):
Поясню: переменная состояния представляет собой указатель на функцию.

То есть просто нет переменной, хранящей текущее состояние?
Понимаю, как должно работать для одного единственного автомата, а если их пучок?
Сообщение Добавлено: Пт сен 20, 2019 20:31
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
Hishnik писал(а):
Эээ... "состояния - это функции"??? Это как минимум требует пояснения. Это предложение узнавать состояние КА вызовами функций? КА - это, к примеру, настольная лампа с сенсорной кнопкой. У нее два состояния - "включено" и "выключено". Но это не функции.

Поясню: переменная состояния представляет собой указатель на функцию.
Эта функция - сосредоточие логики обработки входящих событий (через аргумент функции), на основании которых (+ учёта ряда условий) предпринимается решение о (возможной) смене состояния (назначение "хранителю текущего состояния"-указателю на функцию адреса другой функции).
В этой же функции есть участки кода для обеспечения вызова кода при "входе" и "выходе" из состояния и вызов "функций-менеджеров" возможных вложенных состояний.
Для справки: https://www.state-machine.com/psicc2
Сообщение Добавлено: Пт сен 20, 2019 19:29
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
Эээ... "состояния - это функции"??? Это как минимум требует пояснения. Это предложение узнавать состояние КА вызовами функций? КА - это, к примеру, настольная лампа с сенсорной кнопкой. У нее два состояния - "включено" и "выключено". Но это не функции.
Сообщение Добавлено: Пт сен 20, 2019 14:44
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
Wlad писал(а):
состояния это - функции/статические методы классов/структур.

Так вроде и тема про это. только класcов нет но это же Forth, зачем они нужны?
(Мне вот даже жалко стало что воспользоваться кодом не могу на работе только Си.)
Сообщение Добавлено: Пт сен 20, 2019 11:12
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
У Миро Самека (который https://www.state-machine.com ) состояния это - функции/статические методы классов/структур.
Правда у него - идеология "активных объектов".
Не встречал кто-то такого же в реализациях КА на Форте?
Сообщение Добавлено: Чт сен 12, 2019 12:05
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
Цитата:
Кроме того, в тех же сях я автоматы реализую аналогично:

Я тоже последнее время этот способ активно использую.
Кстати считал себя "изобретателем" :) нигде не встречал описания такого способа реализации автоматов.
Но для малого количества состояний использую swith() case: классический способ он как то нагляднее особенно если на одну страницу все помещается.
Сообщение Добавлено: Ср авг 14, 2019 12:21
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
mOleg писал(а):
простыни на стороннем ресурсе.
А что Вы хотели от реальной задачи? Это же не школьный пример, который кто-то будет для Вас специально причесывать.
Кстати "вменяемо" и "здесь" одновременно - это ненаучная фантастика.
Сообщение Добавлено: Пн фев 19, 2018 20:07
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
gudleifr писал(а):
Кстати, вот реальная задача:

и вспомнились мне строчки:
"так мелко и так много, что прочитал чуть-чуть -
не пишут так коряво, когда на веки рвут"
Мне лень читать ваши простыни на стороннем ресурсе.
Пишите вменяемо здесь.
Сообщение Добавлено: Пн фев 19, 2018 19:45
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
Кстати, вот реальная задача: пара автоматов, вложенных друг в друга - ИзображениеТЕМА #70, примерно АБЗАЦ #762Изображение.
Сможет ли кто-нибудь написать на FORTH красивее убогого GW-BASIC? Тем более, избежать этапа программирования на бумажке? Или, как обычно, строим "елочки" и "матрешки" на C++, а потом эмулируем на "FORTH со структурами, исключениями и локальными переменными"?
Сообщение Добавлено: Пн фев 19, 2018 12:42
  Заголовок сообщения:  Re: Автоматы (FSM)  Ответить с цитатой
да, а еще интересно то, что FSM: Name
создает сразу три определения:
Name - сам автомат вызываемый
(Name) - словарь, куда определяются все состояния
Name: - метод позволяющий создавать новые состояния

В свою очередь Name: State
создает сразу два определения
State - переключатель в новое состояние
:State - описатель состояния
Сообщение Добавлено: Чт фев 15, 2018 16:32

Часовой пояс: UTC + 3 часа [ Летнее время ]


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB