Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.03;
Скачать: CL | DM;

Вниз

Компилятор.   Найти похожие ветки 

 
Scorpx ©   (2003-06-17 11:26) [0]

Подскажите, как написать хотя бы простейший компилятор. Если можно дайте ссылки на статьи.


 
Digitman ©   (2003-06-17 11:31) [1]

И что будешь потом делать с объектным кодом, который будет генерировать твой компилятор ?


 
Scorpx ©   (2003-06-17 11:36) [2]

Я хочу написать собственную оболочку под язык Turbo Pascal. Текст будет напечатан в Memo, а компилятор превратит исходник в готовую программу.


 
Alex Y ©   (2003-06-17 11:39) [3]

так есть же уже, ну и пользуйся bcc, который в комплекте с BP идет


 
Digitman ©   (2003-06-17 11:40) [4]

Угу. А при чем здесь "написание компилятора" ? ты же TP хочешь использовать в кач-ве оного ?

с ключами ком.строки TP ты знаком ? тогда текст из Мемо сохраняй в файл и передавай его имя/путь в кач-ве параметра в ком.строке ТР, наряду с прочими необходимыми ключами.


 
Scorpx ©   (2003-06-17 11:46) [5]

Где можно прочитать прол ключи ком.строки TP?


 
Palladin ©   (2003-06-17 11:47) [6]

:)
суперминикомпилятор к только что разарботаному мной языку программирования, он кстати русский
все в одном, генерит сразу исполняемые файлы, только в секретном исполняемом формате Windows с расширением bat


program BatCompilator;
{$AppType Console}
var
_OutFile,
_InFile:TextFile;
s:string;
Error:byte;

begin
writeln("BatCompiler 1.0 Lamer Edition");
if paramstr(1)="" then
begin
writeln("А че компилить то будем?");
halt;
end;
if paramstr(2)="" then
begin
writeln("А куда компилить то будем?");
halt;
end;
randomize;
AssignFile(_InFile,paramstr(1));Reset(_InFile);
AssignFile(_OutFile,paramstr(2)+".bat");ReWrite(_OutFile);
writeln(_OutFile,"@Echo off");
while not eof(_InFile) do
begin
readln(_InFile,s);
if copy(s,1,10)="Напечатать"
then writeln(_OutFile,"echo "+copy(s,12,length(s))
else
begin
str(random(254)+1,Error);
writeln("[Ошибка компиляции "+Error+" непонятная комманда "#39+s+#39" Abnormal program terminate");
halt;
end;
end;
CloseFile(_InFile);CloseFile(_OutFile);
end;


 
Digitman ©   (2003-06-17 11:50) [7]


> Scorpx


в книжке по ТР либо вызвав ТР из ком.строки с ключем помощи (ключ ? или h или help - не помню как там)


 
Scorpx ©   (2003-06-17 11:52) [8]

Выделяет строчку else под then writeln(_OutFile,"echo "+copy(s,12,length(s)) Почему?


 
Palladin ©   (2003-06-17 11:55) [9]

ну естественно в настоящем компиляторе должны присутствовать баги, мой не исключение :)
в нем целых два бага
вот SP1

в строке 7 изменить на
Error:string;
в строке 29 изменить на
then writeln(_OutFile,"echo "+copy(s,12,length(s)))


 
Scorpx ©   (2003-06-17 11:55) [10]

Подскажите, как зашифровать ini-файл?


 
Palladin ©   (2003-06-17 11:59) [11]

а программа на моем языке программирования :) выглядит так
-- Prog1.btc ---------------------------

Напечатать Вот оно зарождение
Напечатать нового языка программирования
Напечатать с русским синтаксисом

----------------------------------------
пусть откомпилированый компилятор будет называтся BatCmpl.exe

тогда что бы откомпилировать вышенаписанную программу нужно исполнить

BatComp.exe Prog1.btc Prog1

тогда появится исполняемый файл Prog1.bat
тебе останется всего лишь запустить его :)

не заубудь, все вышеперечисленное делается из коммандной строки


 
Scorpx ©   (2003-06-17 11:59) [12]

Palladin ©
Можно вопрос? При запуске окно дос сразуже закрывается, почему? Как компилятором пользоваться?


 
Digitman ©   (2003-06-17 12:01) [13]


> Scorpx


Так же как и любой другой текстовый файл


 
Scorpx ©   (2003-06-17 12:05) [14]

Понятно, спасибо!



Страницы: 1 вся ветка

Текущий архив: 2003.07.03;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.02 c
11-7372
SPeller
2002-10-10 15:54
2003.07.03
ShowModal


14-7712
SiJack
2003-06-17 14:00
2003.07.03
Не могу сочинять хелпы, ОТМОРАЖИВАЮСЬ !!!


14-7690
Alikm
2003-06-17 11:01
2003.07.03
Как сделать, чтобы прога на панели задач не висела?


14-7691
Кен
2003-06-17 03:29
2003.07.03
На чём написан Дельфи. На Си или на Дельфи ?


14-7601
XobBIT
2003-06-17 23:24
2003.07.03
Мастера подскажите аналог IIS или Apache