zksystem 0 28 сентября, 2011 Опубликовано 28 сентября, 2011 · Жалоба Появилась необходимость ввести в проект внутренний скриптовый язык, без излишеств, может кто реализовывал нечто подобное, подскажите какой лучше использовать? Желательно чтобы синтаксис был С-подобный. Заранее благодарен. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 28 сентября, 2011 Опубликовано 28 сентября, 2011 · Жалоба Pawn Использовал. Очень понравилось. Там даже есть реализация виртуальной машины на ARM-ассемблере, то есть на Cortex-M3 должно бегать шустро. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zksystem 0 28 сентября, 2011 Опубликовано 28 сентября, 2011 · Жалоба А вот это? eLUA, кто-нибудь пользовал? http://www.eluaproject.net/get-started/downloads Pawn Вроде что-то интересное, спасибо, посмотрю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
richie 0 28 сентября, 2011 Опубликовано 28 сентября, 2011 · Жалоба LUA перспективнее, есть и русскоязычные сайты поддержки фанатов. Синтаксис, конечно не C, документация по синтаксису читается за полчаса, а далее только от гибкости (извращения) ума зависит. :) Мой сотрудник говорит, что на предыдущей работе чел использовал его в контроллере. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zksystem 0 28 сентября, 2011 Опубликовано 28 сентября, 2011 · Жалоба LUA перспективнее, есть и русскоязычные сайты поддержки фанатов. Синтаксис, конечно не C, документация по синтаксису читается за полчаса, а далее только от гибкости (извращения) ума зависит. :) Мой сотрудник говорит, что на предыдущей работе чел использовал его в контроллере. Мне интересно сколько эта LUA памяти сожрёт (RAM/ROM) ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 28 сентября, 2011 Опубликовано 28 сентября, 2011 · Жалоба Мне интересно сколько эта LUA памяти сожрёт (RAM/ROM) ? Надо уточнить с компилятором или нет. С компилятором и без собственных библиотек не более 100 Kбайт памяти программ. Память данных там выбирается через движок динамического выделения памяти и зависит от самого выполняемого скрипта. Стоит сразу зарезервировать минимум 200 КБайт. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zksystem 0 28 сентября, 2011 Опубликовано 28 сентября, 2011 · Жалоба Надо уточнить с компилятором или нет. Мне нужно чтобы в устройство кидался скрипт прямо в тексте и работал. Стоит сразу зарезервировать минимум 200 КБайт. Без внешней памяти получается нечего ловить... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 119 28 сентября, 2011 Опубликовано 28 сентября, 2011 · Жалоба Можно еще посмотреть в сторону Forth. Он, конечно, совсем не С-подобный, но дает неплохую скорость выполнения. Конкретных реализаций не посоветую. Сталкивался с ним на "Агате" и 68HC12. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 0 28 сентября, 2011 Опубликовано 28 сентября, 2011 · Жалоба Можно еще посмотреть в сторону Forth. IMHO это единственное что влезет во внутреннюю память! Кстати реализация по АРМ находится гуглом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ukpyr 0 28 сентября, 2011 Опубликовано 28 сентября, 2011 (изменено) · Жалоба Мне интересно сколько эта LUA памяти сожрёт (RAM/ROM) ?можно посмотреть на ихнем сайте - пишут нужно минимум 64К RAM еще: http://stackoverflow.com/questions/1082751...-in-tiny-memory Изменено 28 сентября, 2011 пользователем ukpyr Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 28 сентября, 2011 Опубликовано 28 сентября, 2011 · Жалоба Мне нужно чтобы в устройство кидался скрипт прямо в тексте и работал. Чтобы прямо в тексте, то это значит нужен компилятор. Компилирует он конечно не в asm, а в такие разжеванные структуры. Ну максимум в режиме Thumb с компилятором можно ужаться в 90 КБайт. Если говорят меньше значит компилятора там нет. Если скрипт помещается в одну строчку то думаю и 64 Кбайт RAM хватит. Но движок динамической памяти должен быть быстрым и надежным потому как память выделяется часто и маленькими фрагментами. Но вообще то нынче рулит .NET micro framework. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ukpyr 0 28 сентября, 2011 Опубликовано 28 сентября, 2011 (изменено) · Жалоба если вспомнить zx-spectrum, радио, бк0010 с их куцой памятью и кучей разных компиляторов и интерпретаторов то даже 32К ОЗУ и 256К флеша - это дофигища, главное с умом их использовать Изменено 28 сентября, 2011 пользователем ukpyr Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 16 29 сентября, 2011 Опубликовано 29 сентября, 2011 · Жалоба Можно еще посмотреть в сторону Forth. Он, конечно, совсем не С-подобный, но дает неплохую скорость выполнения. ++ Есть ещё Forth-like системы с исходниками на си, например, F- (Fminus) или Forpost. Последний, имхо, на 32-битную архитектуру вообще должен идеально ложиться. Преимущество таких систем - простая интеграция с сишной программой. Можно сишные функции определить как слова форта, и тогда быстродействие практически не будет отличаться. Затраты копеечные, на MSP430 я пробовал запускать CamelForth, весь движок с интерактивным интерпретатором-компилятором и набором базовых слов занял около 4кБ. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 29 сентября, 2011 Опубликовано 29 сентября, 2011 · Жалоба Мне нужно чтобы в устройство кидался скрипт прямо в тексте и работал. У языка Pawn есть компилятор, который можно встроить в свою программу. Но сколько компилятору нужно ROM/RAM - я не знаю. Без внешней памяти получается нечего ловить... Если закачивать скрипты в скомпилированном виде, то Pawn весьма хорош. У меня было выделено 32 кБ ОЗУ на скрипт, помещалась весьма нетривиальная программа. Виртуальная машина совсем маленькая. Кстати, скрипт можно пускать и из ROM, тогда требования к RAM становятся ещё меньше (только стек и куча для виртуальной машины). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SBE 1 29 сентября, 2011 Опубликовано 29 сентября, 2011 · Жалоба ++ Есть ещё Forth-like системы с исходниками на си, например, F- (Fminus) или Forpost. Последний, имхо, на 32-битную архитектуру вообще должен идеально ложиться. Преимущество таких систем - простая интеграция с сишной программой. Можно сишные функции определить как слова форта, и тогда быстродействие практически не будет отличаться. Затраты копеечные, на MSP430 я пробовал запускать CamelForth, весь движок с интерактивным интерпретатором-компилятором и набором базовых слов занял около 4кБ. +++ Исторически использую Forth подобное с интеграцией в С. Очень компактно, как сама среда, так и скрипты. Может быть компилятор и интерпретатор в одном флаконе. Шустро, не требовательно к ресурсам. Достаточно просто под себя переписать. Но синтаксис, мягко говоря, специфический:crying: Поэтому посматриваю в поисках замены, но пока все выглядит слишком тяжеловесным для МК и моих задачек. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться