Как так, Ruby ?
Я вот всегда думал, что такие серьезные проекты как Python, Perl, Ruby и прочие, пишутся людьми »семи пядей во лбу». А оказывается, что и у них бывает проскакивает всякого рода быдло-код.
Наткнулся сегодня на такую статейку на рубиинсайдере http://www.rubyinside.com/ruby-1-9-3-faster-loading-times-require-4927.html. Суть (насколько это я понял): при использовании функции «require», которая подключает новый файл в программу, имя этого файла заносится в некий массив (кэшируется). При повторном включении, этот массив проверяется и если файл уже включен — функция ничего не делает. В общем случае для того чтобы узнать присутствует ли тот или иной элемент в массиве, что необходимо предпринять? Правильно! ПЕРЕБРАТЬ ВЕСЬ МАССИВ (тем или иным способом)! Все книжки о таких языках как Perl, PHP, Ruby начинаются с описания структур данных, во всех этих книжках все нахваливают такие структуры как хэш, ассоциативный массив или словарь и настоятельно рекомендуют их использовать из-за высокой скорости работы. А тут вот такое дело… Одно хорошо — руби избавился от такой «детской», на мой взгляд, болезни.
Perl eq кулинария ? да : нет
«И еда, и язык программирования относятся к скромным средствам; они состоят из внешне разрозненных ингридиентов. И все же в руках мастера, наделенного творческим мышлением и дисциплиной, из самых обыденных вещей — картошки, макарон и Perl — возникают произведения искусства, которые не просто справляются со своей задачей, но и делают это так, что ваше странствие по жизни становится чуть более приятным.»
Perl Сборник рецептов для профессионалов
Perl и Mojo начало.
Padre for Perl
Собственно, товарищи Перловики, http://www.catalyzed.org/2009/12/look-at-padre.html
А вот и сам ОН http://padre.perlide.org/
Завтра обязательно его испытаю!
p.s. Если кто-то уже использовал это чудо — велкам в комментарии =)
Устанавливаем ctpp на centOs 5.3
Эта маленькая заметка, расскажет о том как установить шаблонизатор ctpp на centOs 5.3.
ctpp — универсальный шаблонизатор, который можно использовать со многими языками программирования.
ctpp написан полностью на С++, поэтому работает очень быстро (по словам разработчиков).
В своей заметке я буду использовать ctpp для работы c Perl.
Вот что у нас есть:
CentOs 5.3
gcc + make
Perl 5.8.8
А вот, что нам потребуется:
1 Компилятор c++ — для установки его в centOs вводим команду:
yum install gcc-c++
2 Утилита cmake
- скачиваем исходный код:
http://www.cmake.org/files/v2.6/cmake-2.6.4.tar.gz
- распаковываем
tar xvzf cmake-2.6.4.tar.gz
- создаем каталог cmake-build и переходим в него
mkdir cmake-build
cd cmake-build
- запускаем ../cmake-2.6.4/bootstrap
- собираем cmake командой gmake
- устанавливаем cmake командой gmake install
3 Сам шаблонизатор ctpp
- скачиваем последнюю версию
http://ctpp.havoc.ru/download/ctpp2-2.5.12.tar.gz
- распаковываем
tar zxvf ctpp2-2.5.12.tar.gz
- переходим в каталог с шаблонизатором
cd ctpp2-2.5.12
- поочереди выполняем следующие команды
cmake . (не забудьте «.»)
make
make install
Если все прошло без ошибок — значит шаблонизатор и все необходимые библиотеки установились.
Для работы с ctpp из Perl потребуется модуль HTML::CTPP2
- скачиваем модуль
http://ctpp.havoc.ru/download/HTML-CTPP2-2.5.11.tar.gz
- распаковываем и переходим в каталог модуля
tar zxvf HTML-CTPP2-2.5.11.tar.gz
cd HTML-CTPP2-2.5.11
- поочередно выполняем команды
perl Makefile.PL
make
make install
Вот и все! Шаблинизатор и Perl-овый модуль установлены. Теперь можно писать very fast web applications =)
В одной из следующих статей постараюсь рассказать об использовании этого чуда!
Официальный сайт шаблонизатора
use Perl or die;
