Моя конкретна ситуація, коли я використовую інтерпретовану мову сценаріїв у головній програмі:
Є зовнішній пристрій, який виконує кілька функцій. Вимірювання, контроль, зчитування. Він досить «тупий» сам по собі і вимагає точного контролю, поетапно, включаючи безліч станів очікування та прийняття тимчасових рішень на стороні механізму управління.
Різні функціональні можливості пристрою необхідні в різних точках основного застосування, в різний час, часто на вимогу. Основний додаток не дозволяє станам очікування як таким, все має бути зроблено з машинами з кінцевим станом.
Тепер, хто писав машину з кінцевим станом, знає, що реалізація стану очікування - це щонайменше два, часто три або чотири внутрішніх стану машини. Реалізація двадцяти станів очікування різних функцій (і очікування їх відповідей та відповідних реакцій) зовнішнього пристрою було б дуже неприємним досвідом.
Отже, замість цього є стан "виконати функцію без очікування", "виконати функцію блокування", "виконати функцію розгалуження / умовного / стрибка" в машині з кінцевим станом, можливо, всього шість станів. І є сценарії управління, які планується виконати, потім виконуються інтерпретатором, який управляє зовнішнім пристроєм, і їх результати розміщують там, де вони потрібні.
Підводячи підсумок, додаток: у RTOS використання внутрішньої інтерпретованої мови сценаріїв може значно знизити складність виконання завдань, що рясні в режимах очікування (функції блокування).