Питання по інструментарію — чи є якась скриптова мова для «настройщика системи»?

Хотілось би вбудувати в програмну систему можливість додавання простеньких «настроєчних» скриптів в стилі:

«якщо ця хрєнь більша десяти, то он ту треба обнулити, а всі инші — збільшити на 20%».

Тобто віртуальна машина таких скриптів мала би підтримувати базову арифметику, логіку, операції з рядками (най би й без шаблонів) і мінімальний набір управляючих конструкцій.

А синтаксис хотілось би «загальнодоступний» — щось на кшталт C, Pascal, VB або JS.

Зрозуміло, що в перлову систему я можу втулити eval-обробку перлових скриптів, але таке рішення видається не дуже юзабельним і зовсім нікуди не переносимим.

Отже, чи є якась така «легенька» мова, яку можна би було інтеґрувати в систему на основі perl/c/c++ ?

Навіть і не знаю, як прогуглити це запитання :-(((

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Дуже схоже на те, що саме це я й шукаю. Спасибі!

але таке рішення видається не дуже юзабельним і зовсім нікуди не переносимим.

Ты напиши что тебя конкретно не устраивает в перле и почему ты его считаешь не юзабельным и не переносимым?

Настроювати систему буду, наприклад, не я, а люди, які не знають перла — власне, питання про таку настроєчну мову я одержав від IT-директора, який спокійно має справу з C++ i flash, але «синтаксис PHP» викликає у нього нерозуміння, скажімо так.

Ну, нехай, можна переступити цей момент знайомства і пояснити деталі перлового синтаксису кінцевому настройщику. Але.

0. Як підчепити perl-скрипти до системи на C++? Ставити на кожному компі, де живе той сішний код, ще й перл? Ой...

1. Як проводити «відладку настройок»? «Незалежний скриптовий інтерпретатор» міг би мати в комплекті і простенький дебагер — все це логічно в силу простоти і обмежености тої необхідної мови, про яку йдеться. Що ж до відладки eval-скриптів — ой-ой...

2. Безпека. А якщо «настройщик» виявиться надто кваліфікованим і влізе, куди йому не треба? Хотілось би, щоб інтерпретатор був відділеним від ядра системи.

Гугли про LUA. Мова написана на стандартному С, тому портується, вважай, всюди та легко інтегрується з С/С++ програмами. Ось тут можна ознайомитися з прикладами http://csl.sublevel3.org/lua/

Ясно, спасибі. Може, підкажете наскоро — чи є в Lua якась компактна runtime-підтримка? Тобто чи є якесь dll/exe для windows і аналог для *nix, що дозволяє виконувати Lua-скрипти без інсталяції цілої Lua-системи?

Інсталяція цілої системи звучить голосно — 150кб інтерпретатор та 200кб бібліотека. Якщо і цього забагато то можна із своєї програми смикати бібліотеку і зразу виконувати скрипти. Можливо, я не ясно висловився, але LUA інтегрується з плюсовим рантаймом і інсталювати нічого не потрібно, а лише тягти із собою бібліотеку на 200 кб.

P.S. Мова з відкритими кодами і збереться всюди де є компілятор С.

Підписатись на коментарі