Compiling JavaScript template engine

fixxxer

К.О.
Партнер клуба
Compiling JavaScript template engine

Абсолютный оффтопик - ибо PHP вообще не касается. :)

Кто-нибудь видел в природе JavaScript-овый template engine - нечто наподобие Smarty/Twig, но компилирующий во вменяемый JavaScript, при этом не имеющий привязок к DOM, то есть работающий в инфраструктуре Common JS? Требования такие:

- стандартный функционал - понятно (вывод значения, условия, циклы, ескпейпинг)
- плагины/коллбэки в каком-либо виде
- i18n хотелось бы
- если есть наследование а-ля Django/Twig, вообще круто.

Что-то одна лажа гуглится, неужто Twig придется на генерацию JS дописывать? %)

P.S. Это я appserver на node.js пишу.
 

AmdY

Пью пиво
Команда форума
fixxxer
лучше использовать XSLT, вроде и для node.js либа есть
 

MildMildMint

Новичок
но компилирующий во вменяемый JavaScript
Как я понял, это единственный пункт, которого нету в известных вам реализациях?
Но смысл? Функциональности не добавляет, только производительность. А JS - лидер среди интерпретируемых языков по производительности(современные реализации), PHP до него ой как далеко. Зачем же оптимизировать то, что не надо оптимизировать?
 

AmdY

Пью пиво
Команда форума
или вру :(
вот нагуглил http://github.com/ry/node/wiki/modules#templating
 

fixxxer

К.О.
Партнер клуба
AmdY
У меня к XSLT глубокая личная неприязнь, я не хочу на нем писать, мне не нравится.

MildMildMint - мне на выходе надо получить JS, это условие задачи такое. php вообще нету в процессе обработки запроса (хотя, конечно, прекомпилировать можно чем угодно, задача компиляции на лету не стоит). Прекомпиляция нужна именно чтобы не парсить JS на лету, в рамках event machine это важно. Также, ввиду специфики V8, используемого в node.js, eval всегда будет намного медленнее (да и даже Script.runIn... каждый раз компилять будет, нафига?)

AmdY
ну это же все из разряда str_replace("{var}", value) :) Или я плохо смотрю?
 

fixxxer

К.О.
Партнер клуба
О, а это, кажется, что надо, спасибо. Чото я сегодня гуглить разучился =)
 

AmdY

Пью пиво
Команда форума
fixxxer
ты используешь связку node.js для front + php для backend?
 

fixxxer

К.О.
Партнер клуба
Не, у меня тут штука целиком на node.js + mongodb. :) Ну еще и мемкеш, хотя пока не знаю, оправдано ли его применение для чего-то, кроме сессий.
 

Kirill

Новичок
работал с ejs - мне понравилось.
Чтобы каждый раз шаблоны не подкачивать - их можно хранить в DOM Storage у клиента (надо слегка допилить шаблонизатор).

http://embeddedjs.com/
 

AmdY

Пью пиво
Команда форума
Kirill
ты не понял, DOMа нет, это серверная часть. в node.js дом разве что через библиотеки, т.к. он особо не нужен. кстати, так же можно и jquery прикрутить вроде.
 
Сверху