Показать сообщение отдельно
Старый 26.06.2009, 00:43   #181
satan
Нуждающийся
 
Регистрация: 10.02.2007
Сообщений: 99
Написано 18 полезных сообщений
(для 28 пользователей)
Re: создание MIDletPascal compiler'a

varK1 = d[с]
varK2 = a[varK1]
varK3 = c - varK2
varK4 = d[varK3]
x := d[varK4]

То есть дополнительные переменные???
Ужос... Для одной строки 4 переменных, а если у меня 1 рекурсия на 35635 итераций?

получим 35635*4 переменных (более того их не как не оптимизишь - ибо рекурсия подразумевает обработку своего же кода), в итоге транслятор 35635 раз сгенерирует один и тот же код... Пример:

function a(i: integer): integer;
begin
while i<1000 do begin
i:=a(i)+1;
end;
Result:=i;
end;

Код условный и без смысла....

Ну да не в этом суть, в принципе легче в таких случаях (использование внешнего компилятора) вообще взять JOB и транслировать Pascal->Modula

Cмысл (я так считаю) сделать продукт выше по возможностям MidletPascal иначе овчинка свеч не стоит...
(Offline)
 
Ответить с цитированием