компилятор РНР

valyala

Новичок
компилятор РНР

http://www.roadsend.com/home/index.php?pageID=compiler - это ссылка на компилятор РНР. Кто-нибудь проверял его работоспособность?
Мне понравились приведенная там цитата:
"Always listen to experts. They'll tell you what can't be done and why. Then do it."

-Robert Heinlein
и сразу же за ней:
"Do you know how hard it is to compile a loosely typed scripting language? All the typing happens at run-time depending on the data encountered. So you can't just compile it in the traditional sense, at best you could generate some sort of execution framework within which the code would run in some pseudo-accelerated state. You could call it compiled, I suppose, but it wouldn't really be compiled in the same sense that you compile C or C++."

- Rasmus Lerdorf, Creator of PHP
Хотелось бы услышать ваши мысли по этому поводу
 

fixxxer

К.О.
Партнер клуба
PHP:
$a = file_get_contents('some_php_code.php');
eval($a);
И как это скомпилить? ,)

Или более "жизненный" пример:
PHP:
if ($a == 1) {
  class a {
    function a() { echo "1"; }
  }
} else {
  class a {
    function a() { echo "2"; }
  }
};
$test = new a();
А таскать в exe-шнике интерпретатор и исходник (возможно, "скомпилированный" в псевдокод) в оверлее - это не ново (взять тот же Visual Basic до 5-й версии...) - но компиляцией это я бы не назвал...
 

crazz

Guest
Ну есть же операторы условной компиляции в том же си
 

fixxxer

К.О.
Партнер клуба
crazz
Как ты узнаешь на этапе компиляции, чему у меня равно a?
Может это параметр командной строки? Или результат вычислений?

-~{}~ 28.03.04 20:18:

Лучшее, что они могли сделать - это частичная компиляция в native code.
Без интерпретатора (пхп или байткода - не важно), не урезая возможности языка, не обойтись в любом случае.
 

Ell

Guest
Кто-нибудь скачал?
интересная штука.. жду когда там подтвердят регистрацию
 

tristram

Guest
мой друг такое делал на delphi 7. он склеил все нужные на php (4.3.3) файлы, и сделал конфигуратор, т.е запускаешь, добавляешь N php-файлов, указываешь файл который запускать (он может обращатся к другим добавленым файлам), и указываешь файл куда "скомпилить". получается .exe файл (потом еще ASPack'ом жмется), который исполняется PHP-код. мне понравилось....
 
Сверху