Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Меню и список http://www.cyberforum.ru/cpp-beginners/thread41194.html
Здравствуйте форумчане. Помоги пожалуйста в следующем вопросе: У меня есть 2связный список, написано меню. Но в моменте когда написано make a list и delete custom необходимо чтобы выводились:...
C++ Здравствуйте! Не могу поместить class в один файл с программой. file.hpp #include "Cat.hpp" // здесь классы "2)" Cat::Cat(int initialAge) { itsAge = initialAge; } Cat::~Cat() { http://www.cyberforum.ru/cpp-beginners/thread41186.html
Массивы строк C++
Привет всем! Задан массив строк. Как узнать который символ встечаетса найбольшое количество раз в етом массиве?
C++ вывод на экран набор треугольников и квадратов, которые произвольно двигаются и меняют размер
Please, help me!!! Вот текст программы, которая выводит на экран набор треугольников и квадратов, которые произвольно двигаются и меняют размер только квадратов. Проблема в том, что необходимо...
C++ Округление дробного числа до целого в большую сторону. http://www.cyberforum.ru/cpp-beginners/thread41139.html
Доброго дня. Я новичок в программирование на Visual C++. Проблема такая программа должна считать кол-во месяцев, если числа целые то программа шла дальше, если дробное то (например 3.33333) ...
C++ Код из Delphi в C++ Нужно написать курсовую на C++. Сам я в программировании плохо шарю (не программист). Попросил у народу помощи, помогли. Но решение на Delphi: {$APPTYPE CONSOLE} type byteset=set of byte; ... подробнее

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
18370 / 6417 / 441
Регистрация: 30.03.2009
Сообщений: 17,803
Записей в блоге: 28
28.12.2009, 22:50
По поводу синтаксической подсветки. Чтобы интерпретатор знал поменьше о языке программирования, я бы в интерпретое завл специальную опцию, по которой он распечатывает в stdout все regexp'ы. Я толком не знаю, как это выглядит, то наверное в текстовом виде это представимо. И IDE бы дёргала интерпретатор и подхватывала этот набор.

Второй вариант - в процессе сборки интерпретатора генерить некий конфиг-файл (файл *.h или в любой другой форме, в которой это можно вкомпилить в исходник), в котором были бы описаны regexp'ы, а при сборке IDE этот файл подцеплять. Этот вариант хорош тем, что в код придётся затаскивать меньше всякого гавна. Но, если делать всё по-хорошему (когда мы формально имеем отдельно исходники интерпретатора, а отдельно исходники IDE), то в комплект поставки интерпреатора должен входить этот конфиг файл. Чтобы теоретические (гипотетические) IDE от других разработчиков лучше состыковывались с интерпретатором. Да и вообще описание всего интерфейса (с какими опциями запускать интерпретатор, как фильтровать выдачу и т.п.) можно построить на базе этих файлов, генерируемых в процессе сборки интерпретатора. Это сильно облегчит жизнь, когда надо будет в интерпреатторе что-то менять.

Добавлено через 26 минут
Цитата Сообщение от RazorQ Посмотреть сообщение
Я тут на коленке подправил
Заведи себе привычку архивировать проект вместе с головным каталогом. Потому как все, кто скачиывает твой файл, вынуждены каталог создавать ручками

Добавлено через 5 минут
При печати ошибки внизу у тебя пишется только текст ошибки. Хотя для порядку надо бы печатать имя файла и номер строки. Или на худой конец слово Error, а то нифига не понятно, что это за окошко внизу такое. Для порядку по опции можно печатать строку запуска интерпретатора (чтобы пользователь знал, как это повторить без IDE).

Сделал код с ошибкой. Запустил. Оно сломалось и строка подсветилось - тут всё нормально. Ошибку исправил, запустил, но текст ошибки в нижнем окне остался. Перед каждым запуском нижнее окно надо чистить

Добавлено через 2 минуты
Когда после ошибочного запуска интерпретатора редактор позиционируется на строке с ошибкой, то строку было бы лучше выделать красным вместо синего (у людей врде что-то похожее сделано, только не помню точно, как именно)
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.