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)