Что общего у Lisp и BigTable

Продолжаем рассмотрение паттерна свойств на примерах. Lisp Лисп — это довольно компактный пример паттерна свойств (списки свойств для символов). Символы — это сущности первого порядка. Интересно, что даже если бы в Java была возможность создавать[…]

Читать дальше …

Супергибкий суперустойчивый движок

предыдущая серия Конечно, JavaScript плохо подходит для построения API или серверных скриптов. В нем нету поддержки пространств имен, системы пакетов и тому подобных фич, и конечно его никак нельзя назвать универсальным. Отмечу, что ужос современного[…]

Читать дальше …

Секретная киллер-фича JavaScript

предыдущая серия У шаблона Property Pattern много других имен. Например, он известен как Do-It-Yourself Reflection или Adaptive Object Modeling. Но самое интересное, во-первых — как только мы с ним познакомимся, мы сразу же начнем его[…]

Читать дальше …

Думая, как мы думаем

предыдущая серия Steve Yegge ссылается на книгу «Гёдель, Эшер, Бах» Дугласа Хофштадтера, и я тут с ним солидарен: хороший программист не может считаться таковым, если он не читал эту книгу! Хофштадтер всю свою жизнь потратил,[…]

Читать дальше …

Универсальный паттерн проектирования

Есть такой довольно забавный блогер Steve Yegge, работавший в Google и Amazon. Авторству его принадлежит, в частности, эпический пост «Исполнение королевский постановлений в царстве существительных», посвященный троллингу Java. Но и квалификация Стива не вызывает сомнений,[…]

Читать дальше …

Свободное метапрограммирование

предыдущая серия Но в чем же все таки эксклюзивная особенность литературного программирования (LP)? Ну вот пишем мы подробные комментарии к каждой логической части кода, и что? Почему такой подход вносит некие качественные изменения в процесс[…]

Читать дальше …