Форум программистов, компьютерный форум CyberForum.ru

[ANN] Новая версия интерпретатора Open Basic v1.91 - C++

Восстановить пароль Регистрация
 
mktmk
Сообщений: n/a
25.05.2013, 13:28     [ANN] Новая версия интерпретатора Open Basic v1.91 #1
Ссылка для загрузки: http://sourceforge.net/projects/obasic/

Open Basic (OB) представляет собой реализацию интерпретатора языка Basic.

Open Basic разработан для встраивания в приложения пользователя в качестве скриптового языка.

Open Basic поставляется в исходных текстах под лицензией MIT.

Open Basic имеет возможность расширения системы команд путем подключения пользовательских функций к исполняющей системе Open Basic.

Пользовательские функции могут быть написаны на C/C++, ассемблере или других языках.

Пользовательские функции могут вызываться из Basic-программы, получать параметры
разных типов из Basic-программы и возвращать результаты своей работы в Basic-программу.

Open Basic реализует подмножество команд языка Basic. Open Basic написан полностью на C++ и реализован в виде класса с именем ob_obasic.

Open Basic поддерживает данные следующих типов:

1.Числа с плавающей точкой.
2.Числа с фиксированной точкой со знаком (целые).
3.Строки.
4.Массивы чисел с плавающей точкой.
5.Массивы чисел с фиксированной точкой.
6.Массивы строк.

Open Basic имеет multithread-safe код.

Open Basic не использует никаких графических библиотек.
Open Basic не использует никаких системных вызовов ОС.

Новое в версии 1.91:

1.Добавлена поддержка локальных (в файле) меток, переменных и массивов.
Локальные метки, переменные и массивы имеют имя, начинающееся с подчеркивания “_”.
Поддержка локальных (в файле) меток, переменных и массивов уменьшает конфликт имен при разработке многофайловых проектов.

2.Добавлена возможность продолжить оператор Basic на следующую строку с помощью обратного слеша “\”.

3.Для доступа к локальным переменным и массивам методы доступа к переменным получили новый параметр – указатель на поток (файл),
в котором находится переменная. Если задано локальное имя переменной и указатель на поток, то поиск производится в таблице локальных
переменных указанного потока.

4.Модифицированы методы readvar, writevar. Эти методы осуществляют доступ к элементам массива из пользовательских функций.
Теперь не поддерживается доступ к элементам массива через задание индексов в имени переменной.
Доступ к элементам массива теперь возможен только через явное задание текущих индексов элемента массива в параметре «as» методов readvar, writevar.

5.Базовый класс ввода-вывода переименован. Старое имя базового класса ввода-вывода было ob_functor_break_base.
Новое имя базового класса ввода-вывода стало ob_base_class_for_IO_service.

6.Ввод-вывод через базовый класс ob_base_class_for_IO_service стал единственным способом реализации ввода-вывода.
Старый механизм ввода-вывода удален.

7.Убран метод ob_basic::restoreinputpointer(); При запуске методов ob_base_class_for_IO_service::run_before и
ob_base_class_for_IO_service::run_after следующая лексема доступна через метод ob_basic::gettypenextlex();

8.Исправлена ошибка в реализации оператора комментария REM. Теперь при ошибочных лексемах в комментариях не происходит генерация ошибки.

9.Метод load_project теперь возвращает результат своей работы.

10.Добавлен оператор CHECKLOAD. Оператор CHECKLOAD позволяет предотвратить повторную загрузку потока.

11.Добавлен заголовочный файл obmain.h и ключи условной трансляции.

12.Исправлена ошибка в реализации оператора DATA.

13.Версия 1.91 тестировалась под следующими трансляторами: MSVC2010, Borland C++ Builder 6.0, vxDev-C++ (GCC).
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.05.2013, 13:28     [ANN] Новая версия интерпретатора Open Basic v1.91
Посмотрите здесь:

C++ Нужен рабочий код интерпретатора срочно!!)
C++ Код командного интерпретатора на С++
C++ чем отличается компилятор от интерпретатора?
C++ Разработка интерпретатора языка
C++ По заданному набору чисел вывести следующее: A1, A22, , AN–1N–1, ANN
Литература для создания элементарного языка управляющих сигналов и интерпретатора для него C++
C++ Разработка командного интерпретатора

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 11:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru