Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.98/120: Рейтинг темы: голосов - 120, средняя оценка - 4.98
27 / 27 / 16
Регистрация: 22.08.2017
Сообщений: 126

Пишем свой интерпретатор языка BASIC

13.10.2018, 15:35. Показов 23738. Ответов 9

Студворк — интернет-сервис помощи студентам
Добрый день.

Я смотрю, тут на форуме была тема коллективного написания интерпретатора BASIC на языке С++.
Я очень извиняюсь, но я написал такой интерпретатор в индивидуальном порядке.
Сейчас этот проект доступен в исходниках и под лицензией MIT на sourceforge.net.
Лицензия MIT означает, что пользоваться можно для любых платформ и любых проектов как коммерческих, так и открытых.
Проект незатейливо называется Open Basic.
Интерпретатор оформлен в виде класса в смысле классов С++.

Из особенностей:

1. Можно подключать написанные на С++ пользовательские функции к исполняющей системе интерпретатора.
2. Можно иметь много экземпляров интерпретатора в своей программе, и каждый может выполнять разную Basic-программу.

Там есть и описание на русском языке.

Вот ссылка на проект:

https://sourceforge.net/projects/obasic/

Если есть вопросы, задавайте здесь или по почте.
Адрес почты в описании на интерпретатор.

Спасибо.
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.10.2018, 15:35
Ответы с готовыми решениями:

Пишем свой интерпретатор языка BASIC
Благодаря форуму и Evg в частности интерпретатор развивается, потихоньку превращаясь в простенький интерпретатор QBASIC. Некоторые из...

Пишем свой чекер
Я хочу написать свой чекер, но не знаю с чего начать? Кто знает основные принцип работы чекеров прошу объясните.

пишем свой троян с нуля
Всем привет)))соглашусь, что изобретаю велосипед, но хочется сделать все своими ручками не прибегая к open source и т.п. для повышения...

9
27 / 27 / 16
Регистрация: 22.08.2017
Сообщений: 126
16.10.2018, 10:39  [ТС]
Еще особенности:

3. Есть интерфейс для доступа из С++ программы к переменным и массивам Basic-программ
4. Basic-программы могут состоять из нескольких файлов
5. Пользовательские функции могут принимать параметры из Basic-программ
6. Пользовательские функции могут возвращать результат в Basic-программу
0
27 / 27 / 16
Регистрация: 22.08.2017
Сообщений: 126
19.10.2018, 09:30  [ТС]
Еще особенности:

7. Интерпретатор написан полностью на С++, без ассемблерных или других вставок
8. Интерпретатор транслируется GCC и VS2017
9. Интерпретатор не использует никакие системные вызовы никакой ОС (OS independent code)
1
27 / 27 / 16
Регистрация: 22.08.2017
Сообщений: 126
24.10.2018, 15:49  [ТС]
Если модераторы зафиксируют эту тему в важных, я могу рассказать как устроен интерпретатор внутри.


А вот ссылка на описание применения интерпретатора (все описания в формате .pdf):


http://obasic.sourceforge.net/
0
Неэпический
 Аватар для Croessmah
18146 / 10730 / 2066
Регистрация: 27.09.2012
Сообщений: 27,029
Записей в блоге: 1
24.10.2018, 17:45
Цитата Сообщение от pepsicoca2 Посмотреть сообщение
Если модераторы зафиксируют эту тему в важных, я могу рассказать как устроен интерпретатор внутри.
Не нужно закреплять миллион тем, там уже их девать некуда.
Вы можете попросить модераторов разместить ссылку
на Вашу тему в уже закрепленной теме.
0
 Аватар для COKPOWEHEU
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,910
25.10.2018, 11:16
Другое дело, что судя по активности народа в данной теме, она кроме ТСа никому не интересна.
0
27 / 27 / 16
Регистрация: 22.08.2017
Сообщений: 126
25.10.2018, 12:15  [ТС]
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Другое дело, что судя по активности народа в данной теме, она кроме ТСа никому не интересна.
Да я и не настаиваю просто странно, на этом форуме четыре года писали интерпретатор Basic.
И, как я понял, так и не дописали.
И даже сейчас эта тема закреплена в важных, хотя и не доступна для продолжения (что тоже являет собой некоторую странность).
А когда предлагают готовый интерпретатор Basic, то почему-то интереса нет.
Я думал, раз люди интересуются построением интерпретаторов, четыре года писали код, так сделаю доброе дело, есть готовый и работающий код.
А зачем тогда четыре года писали?
За четыре года вобщем-то в свое время деды до Берлина дошли, а тут какой-то интерпретатор.
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
25.10.2018, 12:47
pepsicoca2, такое впечатление что вам не дали почесать собственное ЧСВ
Цитата Сообщение от pepsicoca2 Посмотреть сообщение
то почему-то интереса нет
именно, вся соль в том что там был сам процесс написания
Цитата Сообщение от pepsicoca2 Посмотреть сообщение
Я думал, раз люди интересуются построением интерпретаторов
Те кто интересуются не качают готовую программу, вы бы хоть на GitHub залили.
Цитата Сообщение от pepsicoca2 Посмотреть сообщение
А зачем тогда четыре года писали?
А зачем вы писали? Зачем вообще код пишут?..
Цитата Сообщение от pepsicoca2 Посмотреть сообщение
а тут какой-то интерпретатор
Вот именно.

Это форум, как мне кажется, для помощи в написании програм, а не складчина уже готовых.
Те кому нужно будет найдут и так, ваш интерпретатор.
1
27 / 27 / 16
Регистрация: 22.08.2017
Сообщений: 126
25.10.2018, 16:10  [ТС]
Цитата Сообщение от Azazel-San Посмотреть сообщение
Те кто интересуются не качают готовую программу, вы бы хоть на GitHub залили.
Это не готовая программа, это исходники, пример применения, тесты, описание.
Сайт sourceforge.net это такое же хранилище open source программ, как и GitHub.
И там лежит интерпретатор в исходных кодах.

Цитата Сообщение от Azazel-San Посмотреть сообщение
А зачем вы писали? Зачем вообще код пишут?..
Я писал чтобы применять.
Этот проект довольно старый, первая версия вышла 20 лет назад.
В те времена не было никаких Питонов, Руби и Луа, вот и пришлось самому написать интерпретатор.
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
25.10.2018, 16:14
Цитата Сообщение от pepsicoca2 Посмотреть сообщение
И там лежит интерпретатор в исходных кодах.
Качать .zip файл что бы их посмотреть нету желания, или их можно и так посмотреть, незнаю никогда им не пользовался.
Но и на гит я бы еще тоже залил.
Цитата Сообщение от pepsicoca2 Посмотреть сообщение
Этот проект довольно старый, первая версия вышла 20 лет назад.
В те времена не было никаких Питонов, Руби и Луа, вот и пришлось самому написать интерпретатор.
Ну, если это так, возможно, именно здесь на форуме было бы интереснее почитать ваш процесс написания, как вы его делали, проблемы с которыми столкнулись и тд.?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.10.2018, 16:14
Помогаю со студенческими работами здесь

Пишем свой класс, спецификатор доступа protected
Всем привет! Из книги Р. Лафоре относительно спецификатора доступа protected: Далее пишется следующее: Возникает вопросы:...

Не удается откомпилировать интерпретатор М-языка
Задача: взять интерпретатор М-языка на сайте http://cmcmsu.no-ip.info/2course/model.lang.parser.sample.htm и переработать его, добавив в...

Интерпретатор небольшого языка программирования на С++
Здравствуйте, уважаемые форумчане! Я тут где-то год назад прочитал тему Evg и #pragma о создании интерпретатора, меня эта тема очень...

Интерпретатор/компилятор ассемблер-подобного языка
Привет! Чую, что изобрёл велисипед, даже скорее велопарк, но всё же, поделюсь: Некоторое время назад начал изучать кресты, в целом...

Написать Интерпретатор Программного Языка(собственного)
Здраствуйте! Кто знает C++ помогите пожалуйста с реализацией данного задания!!! Пожалуйста, очень надо. сроки поджимают. Есть...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru