
Вдохновившись статьей Еще раз о каррировании и частичном применении в PHP, в голову пришла реализация частичного применения метода, именно метода, а не функции.
Читать полностью »
Рубрика «метапрограммирование» - 5
Объектно-ориентированное функциональное метапрограммирование или каррирование метода
2012-08-01 в 15:59, admin, рубрики: closure, php, каррирование, метапрограммирование, ооп, Программирование, функциональное программирование, частичное применение, метки: closure, PHP, каррирование, метапрограммирование, ооп, функциональное программирование, частичное применениеИнтерактивная книга «Радугоны» на HTML5 и JavaScript для Windows 8 (неделя в Store)
2012-06-06 в 13:53, admin, рубрики: html, html5, javascript, windows, Windows 8, метапрограммирование, метки: html5, javascript, Windows 8, метапрограммирование
Уважаемый хаброчитатель, поведаем тебе сегодня об опыте практической разработки приложений для Windows 8, подготовке, отладке и публикации проектов под этой платформой, и про применение одного из методов метопрограммирования (о чем мы писали раньше) для анимации в стеке технологий HTML5 + JavaScript + Metro style apps. Ведь теперь в Windows 8 можно применять JavaScript не только в браузере, но и для создания нативных «оконных» приложений. И вот, мы уже 6 дней в сторе, приложение можно установить бесплатно, более того, мы не приводим тут код, т.к. его можно свободно посмотреть после установки приложения прямо по папочкам js, css, html, fonts, images. Можно качать и смотреть, обфускацию мы не применяли. Пока HTML5 приложения ни как не защищены в маркете, но Microsoft обещает в самое ближайшее время реализовать защиту.
Читать полностью »
Вникаем в метаклассы Ruby
2012-05-16 в 17:21, admin, рубрики: eigenclass, ghost class, metaclass, ruby, singleton class, метаклассы ruby, метапрограммирование 
Примечание переводчика: данный пост является логическим развитием, а точнее «предысторией» поста Вникаем в include и extend и был подсказан в комментариях к нему пользователем murr, за что ему большое спасибо.
Классы и объекты в Ruby связаны между собой достаточно затейливо и не сразу можно понять что к чему. Из-за особого назначения классов очень легко потерять из вида тот факт, что классы — это тоже объекты Ruby. От «обычных» объектов их отличает два вещи: они служат образцом для создания новых объектов и они являются частью иерархии классов. Все верно, классы могут иметь экземпляры себя (объекты), суперклассы (родителей) и подклассы (детей).
Если классы — это объекты, то у них должен быть свой собственный класс. Классом всех классов (как объектов) в Ruby является класс Class:
# один из способов создать новый класс
Dog = Class.new
# общепринятый способ создания класса
class Dog
# какая-то реализация собачьего поведения
end
Dog.class
=> Class
Полуавтоматическая конвертация лени в код
2012-04-12 в 7:25, admin, рубрики: .net, метапрограммирование, Программирование, метки: c++, метапрограммирование Всем доброго дня. Сегодня я хочу поговорить об автоматической генерации кода C#. Например, свойства в классах, описывающих сущности предметной области, обычно описываются по совершенно одинаковой схеме. И мне элементарно лениво писать для каждого примитивного свойства одинаковые конструкции. Немного спасает применение сниппетов и активных шаблонов, но когда приходит нужда что-то поменять в этой схеме, то приходится перелопачивать кучу кода. Так почему бы это однообразие не генерировать автоматически в процессе сборки?
В какой-то момент кинетическая энергия творчества ненадолго пересилила потенциальную энергию лени, и результатом этого стала маленькая библиотечка для автоматической генерации некоторых исходных файлов программы на основе внешних данных. Приглашаю под кат всех ленивых (в хорошем смысле этого слова) разработчиков на C#.
Читать полностью »
