powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Встроенный интерпретатор
19 сообщений из 19, страница 1 из 1
Встроенный интерпретатор
    #32147621
ggg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте!
Вопрос носит скорее теоретический характер.
У сложных программ/систем обычно идет встроенный свой некий язык инетпретатор, который оперирует объектами программы (например 1С, SAPr3) и логика работы приложения реализуется как код написанный на этом внутреннем языке. Я недавно работал над одним проектом в котором использовал некое собственноручное жалкое подобие такого приема. Но результат и возможности такого подхода мне очень понравились. Хочется углубится в эту технологию, но очень не хочется заниматься написанием собственных интепретаторов, - сложно, долго. Например в Lotus Notes одним из родных языком программирования явл. ЖАВА в которую дополнительно добавлены родные классы Лотуса (сделано как ЖАВА классы, которые являются обертками и вызовают ф-ии из системных DLL lotus notes). Т.к. с жавой я не знаком на практике, то возникают вопросы: насколько сложно, реально сваять нечто подобное на жаве? Какие подводные камни могут быть? Кто-то сталкивался с подобным? Есть какие либо рекомендации и пр. пр.

Всем спасибо!
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32147908
Aion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Для начала смотри JavaCC...

http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-cooltools.html
http://www.webgain.com/products/java_cc/
http://www.cobase.cs.ucla.edu/pub/javacc/

Первый шаг из области математика...
ну а дальше - сама реализацияю...
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32149619
Фотография BusyMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В 1С и т.п. используется "модифицированный" Вижуал Бейсик.
Необходимые COM-библиотеки для этих целей входят в Виндоус, а также устанавливаются вместе с Visual Studio 6 или 7.
Дополнительная информация - в MSDN. Там все подробно.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Встроенный интерпретатор
    #32902755
Фотография BusyMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Причем при работе такого кода, ты САМ указываешь с какими объектами надо работаать.
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32903514
J--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
J--
Гость
для Java однозначно надо смотреть в сторону Jython.
Там как раз есть возможность встроить полноценный интерпретатор Python
в программу и причем это будет стандартное решение. Услилий прикладывать не надо практически никаких.
А разводить "самопальные" embedded-языки - это очень плохая практика!
(IMHO)
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32903673
nik_x
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно еще C++ интепретатор, в том числе встроенный использовать...
тынц
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32904699
Фотография andrushok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Ж, Уменьшиный

Ж, Уменьшиный... А разводить "самопальные" embedded-языки - это очень плохая практика!
Практика, наоборот хорошая. Вот тольки Flex для этого использовать надо... Некий опыт имеется по написанию клона SQL, однако...
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32904716
J--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
J--
Гость
2andrushok:

Почему плохо? Берусь объяснить!

Не сомневаюсь, что писать язык весело и увлекательно.

Но потом кто-то в этом зоопарке начинает разбираться - и финита.
Например, недавно писал прогу под IVR Smartphone, там тоже не догадались
встроить что-нить стандартное типа tcl или python, а зафигачили свой язык.
Результат: любой цикл отладки (да и вообще любой запуск) - это надо было на плату по телефону прозваниваться. Этим, несомненно, достигается бешеный темп разработки :-) Пришлось забить на внутренний язык и сделать им только переходы к внешим сервисам, которые уже писались на нормальном языке (та же жаба или VB).
Почему так? Потому что разработчикам обитателей встроенных зоопарков, как правило, влом написать еще и вариант внешнего интрепретатора, для отладки.
Поэтому господа разработчики - используйте стандартные средства и лично я как потребитель - буду вам безмерно благодарен! :-)
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32904722
J--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
J--
Гость
ЗЫ и вдогонку: в виндовых прогах еще можно встраивать Script Host языки,
что тоже хорошо, по-моему!
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32904871
Фотография Палестинец
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В 1С и т.п. используется "модифицированный" Вижуал Бейсик.
Необходимые COM-библиотеки для этих целей входят в Виндоус, а также устанавливаются вместе с Visual Studio 6 или 7.
Дополнительная информация - в MSDN. Там все подробно

ээ. здорово фирму опустил... "модифицированный"...
насколько я понимаю там свой язык. с VBScript никак не связаный..(не говоря уже о VB!)

в виндовых прогах еще можно встраивать Script Host языки
что тоже хорошо, по-моему!

это конечно хорошо. но!
Интерфейс стандартно поставляемых в винде скрипт машин JavaScript и VBScript (IActiveScript) по моему явно недостаточен для серьезной интеграции в приложение, хотя для каких то задач может и хватит.. для прог типа 1с - явно не подходит..

Может есть еще какие-то ходы для доступа к этим же машинам но я знаю только этот..

есть еще интеграция с VBA но ето помоему тока за денюжку..

А вообще технология распространенная так что есть надежда что можно и за бесплатно найти хороший интерпретатор..
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32904893
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно ваще с этим не парится. Достаточно включить в прогу MS ScriptControl.
Выбор языков там приличный. Есть самый интерпритируемый язык всех времён и народов - Perl.

Да прибудет с вами дистрибутив.
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32904907
bibikoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может я чего-то не понимаю, конечно, но все таки...

А какой смысл вообще связываться со встроенными языками.
Почему просто не определить в своем приложении нормальные КОМ-интерфейсы и пусть программисты-кустомизаторы используют объекты вашего приложения хоть из Дельфей, хоть из ВБ, хоть и ЖСкрипта.

Я могу еще понять некий язык определения неких формул для расчетов. Но полноценный язык встроенный в программу? :/

Вы надеетесь нажить состояние на авторизированных учебных центрах СуперПуперЯзыка? ;)
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32904927
Фотография Палестинец
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почему просто не определить в своем приложении нормальные КОМ-интерфейсы и пусть программисты-кустомизаторы используют объекты вашего приложения хоть из Дельфей, хоть из ВБ, хоть и ЖСкрипта.

COM это не то..
по идее script служит для настройки работы приложения..
а "настройка" может включать в себя все что угодно - вплоть до самого приложения.. поэтому и требуется полноценный язык.

преимущество скрипта в простоте написания (скажем по сравнению с C++)=> квалификация кодера может быть ниже (или его предметный уровень может превалировать над программерским)..

и то что скрипт может меняться(дописываться) практически runtime.

Вы надеетесь нажить состояние на авторизированных учебных центрах СуперПуперЯзыка

почему нет?
если б вместо языка 1с - был только набор com интерфейсов для доступа к 1с(кстати и щас есть) - те же курсы по обучению работы с ними были бы нужны..
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32904935
bibikoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Палестинец
преимущество скрипта в простоте написания (скажем по сравнению с C++)=> квалификация кодера может быть ниже (или его предметный уровень может превалировать над программерским)..

и то что скрипт может меняться(дописываться) практически runtime.


ВБСкрипт\ЖСкрипт под Windows Scripting Host может меняться\дописываться практически runtime

А научить человека ВБСкрипт'у не сложнее, чем 1с-овскому языку. И обучающих ресурсов по нему несравненно больше.


Палестинец
если б вместо языка 1с - был только набор com интерфейсов для доступа к 1с(кстати и щас есть) - те же курсы по обучению работы с ними были бы нужны..

До курсов надо еще дожить :) А геморрой начнется сразу же.
Придется самому копаться в достаточно экзотической области знаний. Придется учить людей работать с новым языком. Придется объяснять заказчикам, почему им придется учить своих людей новому языку. Итд итп.
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32904994
Фотография Палестинец
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВБСкрипт\ЖСкрипт под Windows Scripting Host может меняться\дописываться практически runtime

А научить человека ВБСкрипт'у не сложнее, чем 1с-овскому языку. И обучающих ресурсов по нему несравненно больше.

Ну я отметил выше что c ВБСкрипт - то как раз все хорошо - только функциональности может вдруг не хватить..

И что делать тогда? а проект сдавать надо..
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32905763
bibikoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Палестинец
Ну я отметил выше что c ВБСкрипт - то как раз все хорошо - только функциональности может вдруг не хватить..



ВБ Скрипт может делать вызовы методов, перехватывать события и устанавливать свойства практически любых КОМ объектов.
Система через КОМ может делать вызовы компонентов, написанных на ВБ Скрипте.

Какая еще функциональность нужна от языка для расширения возможностей системы?
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32905909
Фотография Палестинец
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нельзя расширять типы переменных.
(например для какой-нить 3D проги наверняка понадобится понятие вектор, матрица или цвет с соответств. операциями - использование объекта с методами неудобно..)
Нельзя использовать расширенное управление модулями(выгрузку скажем).

ограничение на именование переменных(латиница) - вспомнив туже пресловутую 1с.

Да и черт его знает. вдруг гденить в vbscript стоит ограничение на количество классов или строк кода в виде скажем 65535?? - кто сможет поручиться что это не так?

поэтому для больших систем а ля сапр - я уверен , необходим более серьезный запас "прочности" в виде интерпретатора с исходниками...
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32906057
bibikoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну, если так широко смотреть на вещи, то трудно с вами не согласится... :)

Как вариант, можно написать свой язык работающий с WSH, а не встроенный в ваше приложение. Например Active Perl так сделан.
...
Рейтинг: 0 / 0
Встроенный интерпретатор
    #32906190
J--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
J--
Гость
их уже есть и прилично

http://www.mvps.org/scripting/languages/
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Встроенный интерпретатор
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]