Здравствуйте, VladD2, Вы писали:
Все поскипано.
Компилятор в своем классическом виде — это устаревшая концепция.
ДОСТАЛО

в IDE набирать

программу посимвольно!
Нуж на просто другая IDE (редактор кода, конечно), заточенная под язык программирования. Редактор должен оперировать конструкциями языка а не символами. Простой пример — по клавише сразу появляется заготовка оператора for со всеми скобками b точками с запятой. Редактор ДОПУСКАЕТ символьный ввод ТОЛЬКО в нужных местах. Программист просто не сможет изменить ключевое слово, стереть скобку и т.д.
Отталкиваться надо от семантики языка — почитайте и Страуструпа о том же в Дизайн и эволюция.
Соответственно редактор сразу работает с внутренним представлением программы (синтаксчески-семантичекой конструкцией программы). О, только что идея пришла в голову, что внутренним представлением может быть IL!!
Таким образом, при таком редакторе нужен будет только генератор кода. Парсер и лексер — в принципе не нужны! В том классическом виде, как они сейчас понимаются. Особенно лексер ( в смысле сканер). Хотя лекго может быть выполнена обратный перевод в текст (для совместимости).
Естественно, редактор должен обладать полной информацией по синтаксису и семантике языка.
Вокруг такого редактора и отладчик легче строить и профайлер.
Мои студенты пытались даже обобщить это дело на класс процедурных языков.
12.07.04 14:17: Перенесено модератором из 'R#' — VladD2