Как стать автором
Обновить
Руслан @tokenread⁠-⁠only

Пользователь

Отправить сообщение
Ну в таком случае, залейте исходники на гитхаб, создайте пару презентаций на SlideShare и время покажет интересно ваше решение кому — либо или нет ) Желаю удачи!
Вот в каких конкретно проектах? Могли бы вы привести ссылки?

Событийная логика сама по себе отторжения у меня лично не вызывает и ничего странного я в ней не вижу. В частности похожий принцип применяется в механизме под названием Progressive Enhancement.
Конечно поможет. К примеру вот один из них: github.com/emyller/webkitcrawler
У меня после прочтения двух ваших статей возникла пара вопросов:

1. Где это применяется (если вообще применяется)? Теория она штука хорошая, но без реальных работающих проектов созданных на основе предлагаемого вами подхода, это просто не работает…
2. Некоторые ваши доводы, создают противоречивые чувства (а именно: хранение всего в DOM, инлайн обработчики в аттрибутах HTML — элементов и т. п.), не обижайтесь, но создается ощущение что все мы когда — то уже проходили эту стадию когда все кажется таким простым и понятным, когда только начинали изучать JavaScript…
Почему вы так решили? Сейчас полным ходом идет рефакторинг первой версии, и мы готовимся выпустить следующую версию с гораздо более широким функционалом.
Во — первых isArray присутствует лишь в последних версиях браузеров, во — вторых isArray это вызов метода (хоть и нативного), я думаю он будет немного медленнее чем обработка конструкции instanceof.
В свое время для асинхронной эвалюации абстрактного синтаксического дерева, я также искал решение данной проблемы, в результате набрел вот на это: zef.me/3420/async-foreach-in-javascript и по мотивам сделал свой собственный вариант forEachAsync:

	function forEachAsync(list, iterator, ret) {
		if (!(list instanceof Object)) return ret();
		var keys, key, length, last;
		var i = -1, calls = 0, looping = false;
		if (list instanceof Array) {
			length = list.length;
		} else {
			keys = Object.keys(list);
			length = keys.length;
		}
		last = length - 1;
		var resume = function() {
			calls += 1;
			if (looping) return;
			looping = true;
			while (calls > 0) {
				calls -= 1, i += 1;
				if (i === length) return ret();
				key = (keys ? keys[i] : i);
				iterator(list[key], function(stop) {
					if (stop === true) ret();
					else resume();
				}, key, i, last);
			}
			looping = false;
		};
		resume();
	}
Пожалуйста! Документация по AST будет (по мере ее создания) появляться здесь: weblab.megafon.ru/wiki/pages/viewpage.action?pageId=2162862
Добавил отображение AST — шаблона в консоль. Для просмотра дерева скомпилированного шаблона, выберите из выпадающего списка «show result as» — «AST» и нажмите кнопку «Execute».
Ясно. Ближайших планов по портированию Histone на .Net у нас нет, но мы с радостью поможем вам портировать его. Мы можем создать документацию по формату скомпилированного шаблона за пару дней — это не проблема. Я отпишусь в этой ветке, как только это будет закончено.
Да вы абсолютно правы. Не могли бы вы пояснить что именно вам нужно от документации по структуре скомпилированного шаблона?
Кстати, в данный момент наследование может быть эмулировано при помощи макросов.
Рассматривалась, я лично большой поклонник XSLT, но при всех очевидных достоинствах данной технологии она имеет ряд существенных недостатков:
1. Браузер поддерживает лишь ограниченный функционал языка XSLT, а потому нужно быть очень аккуратным с тем, какие инструкции используются.
2. Браузер поддерживает лишь XSLT 1, в то время как на сервере возможно использование XSLT 2, возможности которого существенно шире.
3. На практике было выявлено, что XSLT гораздо сложнее в понимании дизайнерами шаблонов, а по нашему мнению именно они должны заниматься созданием и поддержкой шаблонов.
Тем, что FreeMarker не реализован под JavaScript, а это было одним из наших основных требований к шаблонизатору.
Вы не могли бы пояснить что вы понимаете под «декоратором»? Плагины для спринга у нас в самом ближайшем будущем.
Вы могли бы привести пример такой мотивации? В общем и целом мы открыты для подобных дискуссий.
На данный момент мы разрабатываем несколько проектов с использованием Histone и с удовольствием расскажем вам о них в следующих постах.
Конечно ничего не бывает сразу, но планы создания плагинов для популярных IDE у нас есть. Кроме того мы очень расчитываем на поддержку со стороны независимых разработчиков.
Twig это PHP — шаблонизатор, для нас важна кроссплатформенность.
Мне кажется это не очень удобно.

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность