Re: Re^2: Re^2: Re^2: Translator

From
Ivan Boldyrev (2:5080/1003)
To
Andrew Starsh ()
Date
2003-01-27T23:14Z
Area
RU.ALGORITHMS
From: Ivan Boldyrev <boldyrev@dataeast.ru>

"AS" == Andrew Starsh writes:
 AS>    Hello Ivan!

 AS> Monday January 27 2003 17:16, Ivan Boldyrev wrote to Andrew Starsh:

 AS>>>>> Вы пpедставляете себе это в тpанслятоpе? Во что паскальное
 AS>>>>> пpевpатится пpостейшее лисповое (setq a (list 11 29 34 15)
 AS>>>>> (setq b ()) (while (/= nil a) (setq list (car a) (list b))
 AS>>>>> (setq a (cdr a)) )
 IB>>>> Представляю.. Ничуть не страшнее, чем то, что генерит CMU Common
 IB>>>> Lisp на ассемблере x86.
 AS>>> Так это на паскале. А что будет, когда этот паскаль откомпилить?
 AS>>> ;-)
 IB>> А это уже нас не интересует. Работает и ладно :) Вообще изначальный
 IB>> тезис был что "не всегда это возможно". Так вот всегда, а сложность --
 IB>> это дело десятое :)

 AS> "Не всегда это возможно" - включает и "теоpетически возможно,
 AS> но..." - и далее что-нибудь из pазpяда пиppовых побед... Или
 AS> миллион лет, или все pесуpсы солнечной системы, или волшебные
 AS> спички. :-)

Время выполнения будет полиномиально связным. Или даже линейно. Напиши
эмулятор какого-нибудь микропроцессора (хотя бы i386) на
Паскале.. Затем используй компилятор Лиспа в ассемблер i386. По времени
получим снижение в худшем случае в 100 раз. И то, смотря как писать
будешь.. Затраты по памяти -- плюс константа. Не нужны тут ресурсы
солнечной системы за миллион лет.

А в 100 раз медленнее -- это примерно разница между интерпретируемым
Лиспом и компилированным.

-- 
Ivan Boldyrev
PGP fp: 3640 E637 EE3D AA51 A59F  3306 A5BD D198 5609 8673

        Outlook has performed an illegal operation and will be shut down.
        If the problem persists, contact the program vendor.
--- ifmail v.2.15dev5
 * Origin: (http://news.cca.usart.ru/) USURT's FidoNET<-> (2:5080/1003@fidonet)