|
27 / 27 / 16
Регистрация: 22.08.2017
Сообщений: 126
|
|
Пишем свой интерпретатор языка BASIC13.10.2018, 15:35. Показов 23738. Ответов 9
Добрый день.
Я смотрю, тут на форуме была тема коллективного написания интерпретатора BASIC на языке С++. Я очень извиняюсь, но я написал такой интерпретатор в индивидуальном порядке. Сейчас этот проект доступен в исходниках и под лицензией MIT на sourceforge.net. Лицензия MIT означает, что пользоваться можно для любых платформ и любых проектов как коммерческих, так и открытых. Проект незатейливо называется Open Basic. Интерпретатор оформлен в виде класса в смысле классов С++. Из особенностей: 1. Можно подключать написанные на С++ пользовательские функции к исполняющей системе интерпретатора. 2. Можно иметь много экземпляров интерпретатора в своей программе, и каждый может выполнять разную Basic-программу. Там есть и описание на русском языке. Вот ссылка на проект: https://sourceforge.net/projects/obasic/ Если есть вопросы, задавайте здесь или по почте. Адрес почты в описании на интерпретатор. Спасибо.
1
|
|
| 13.10.2018, 15:35 | |
|
Ответы с готовыми решениями:
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
|
|
|
Неэпический
|
||
| 24.10.2018, 17:45 | ||
|
Вы можете попросить модераторов разместить ссылку на Вашу тему в уже закрепленной теме.
0
|
||
|
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 [ТС] | ||
|
И, как я понял, так и не дописали. И даже сейчас эта тема закреплена в важных, хотя и не доступна для продолжения (что тоже являет собой некоторую странность). А когда предлагают готовый интерпретатор Basic, то почему-то интереса нет. Я думал, раз люди интересуются построением интерпретаторов, четыре года писали код, так сделаю доброе дело, есть готовый и работающий код. А зачем тогда четыре года писали? За четыре года вобщем-то в свое время деды до Берлина дошли, а тут какой-то интерпретатор.
0
|
||
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
|||||
| 25.10.2018, 12:47 | |||||
|
pepsicoca2, такое впечатление что вам не дали почесать собственное ЧСВ
Это форум, как мне кажется, для помощи в написании програм, а не складчина уже готовых. Те кому нужно будет найдут и так, ваш интерпретатор.
1
|
|||||
|
27 / 27 / 16
Регистрация: 22.08.2017
Сообщений: 126
|
|||
| 25.10.2018, 16:10 [ТС] | |||
|
Сайт sourceforge.net это такое же хранилище open source программ, как и GitHub. И там лежит интерпретатор в исходных кодах. Этот проект довольно старый, первая версия вышла 20 лет назад. В те времена не было никаких Питонов, Руби и Луа, вот и пришлось самому написать интерпретатор.
0
|
|||
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
|||
| 25.10.2018, 16:14 | |||
|
Но и на гит я бы еще тоже залил.
0
|
|||
| 25.10.2018, 16:14 | |
|
Помогаю со студенческими работами здесь
10
Пишем свой класс, спецификатор доступа protected Не удается откомпилировать интерпретатор М-языка Интерпретатор небольшого языка программирования на С++ Интерпретатор/компилятор ассемблер-подобного языка
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
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 была полностью переписана на Си, в. . .
|