2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Макрогенератор PHP
Сообщение12.05.2010, 11:29 
Всем привет! Покопался я с ОС, у меня новый интерес) Опять хочу понять, как сделать просто.

Я безумно удивлен, что у ИНТЕРПРЕТАТОРА, такого, как ПХП, нет макроязыка. Ну, например, так:
Код:
BEGIN_DB("select * from atable")
echo($row["name"]."\n");
END_DB()

Как короче! Ну хотя бы Си-функционал препроцессора...

Или такое есть? Я с учебной целью хочу попытаться это сделать. Вопрос: как сделать "слой", который передает непосредственно на этап парсинга текст файла, отличный от исходного? Это отдельная программа? Или модуль ПХП? Или проще менять код ПХП?

 
 
 
 Re: Макрогенератор PHP
Сообщение13.05.2010, 01:11 
2kuraga
Надо отучаться использовать препроцессор. :) Шутка.

Цитата:
Я безумно удивлен, что у ИНТЕРПРЕТАТОРА, такого, как ПХП, нет макроязыка.

Звучит забавно, ведь php сам позиционируется как препроцессор гипертекста (php так и расшифровывается).

Цитата:
как сделать "слой"

Может быть просто написать утилиту-фильтр (принимающую данные из stdin и печатающую результат обработки в stdout)? И использовать её перенаправляя потоки ввода-вывода... Достаточно удобно в связке с makefile'ами....

-- Чт май 13, 2010 04:20:14 --

Попробуйте заглянуть сюда: C Compatible Preprocessor for PHP.

 
 
 
 Re: Макрогенератор PHP
Сообщение13.05.2010, 04:57 
kuraga в сообщении #318281 писал(а):
Я безумно удивлен, что у ИНТЕРПРЕТАТОРА, такого, как ПХП, нет макроязыка...
Ну хотя бы Си-функционал препроцессора...
Кроме препроцессоров, встроенных в языки программирования, с древних времен существуют макропроцессоры общего назначения. Пример - макропроцессор m4, разработанный Керниганом и Ричи в 70-х годах: GNU M4.
Упрощенная версия универсального макропроцесора подробно, с исходниками, разбиралась в одной из книг Кернигана. Кажется это была "Практика программирования" Кернигана и Пайка.

P.S. Книга называлась:
Б. В. Керниган, Ф. Дж. Плоджер.
Инструментальные средства программирования на языке Паскаль
М. : Радио и связь, 1985
Оригинал:
Software Tools in Pascal
by Brian W. Kernighan, P.J. Plauger
Addison-Wesley Professional. 1981

 
 
 
 Re: Макрогенератор PHP
Сообщение13.05.2010, 19:13 
Вот спасибо! А на http://php.ru/forum/ меня козлом назвали, обматерили еще сверху и оборжали за такой вопрос. Я понимаю, в PHP есть функции мощнее, но прямо материть... А тут вы какие-то родные :-) Спасибо!
З.Ы. Плюс отправили на помойку. Пост идентичен...

 
 
 [ Сообщений: 4 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group