<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-36795539</id><updated>2011-07-08T11:12:33.404+06:00</updated><category term='xwiki'/><category term='linux'/><category term='lang'/><category term='amd'/><category term='gsoc'/><category term='usu'/><category term='java'/><category term='patch'/><title type='text'>amelentev's blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://amelentev.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://amelentev.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>amelentev</name><uri>http://www.blogger.com/profile/06945335158264857597</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>7</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-36795539.post-519817262408388503</id><published>2009-10-13T00:58:00.000+06:00</published><updated>2009-10-13T00:58:51.477+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>lombok</title><content type='html'>Небольшое описание &lt;a href="http://projectlombok.org/"&gt;projectlombok.org&lt;/a&gt;, инструмента генерации нудного кода (getters/setters/equals/etc) путем вмешательства в компилятор java.&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;lombok использует стандартную технологию javac Annotation Processing  (бывший apt в java5) для вмешательства во внутреннее дерево разбора  javac. (вмешательство на границе синтаксического и семантического разборов) &lt;br /&gt;По спецификации annotation processing предоставляет только readonly  представление дерева разбора, но lombok обходит это ограничение. &lt;br /&gt;Таким образом легко реализуются автоматическая генерация на этапе  компиляции геттеров/сеттеров, toString, equals, и пр.  &lt;a class="moz-txt-link-freetext" href="http://projectlombok.org/features/index.html"&gt;http://projectlombok.org/features/index.html&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Огромным плюсом является то, что не требуется модификация компилятора.  все что нужно, это добавить jar в classpath при компиляции. &lt;br /&gt;(javac -cp lombok.jar *.java) &lt;br /&gt;Недостатком является требование Java SDK 6. &lt;br /&gt;Также имеются проблемы с IDE, у которых annotation processing реализован  по другому и используются другие деревья разбора (отличные от javac). С  Eclipse проблема решена путем адаптации кода к дереву разбора ecj. Таким  образом, в lombok существуют отдельно генераторы для javac и ecj. Плохо  с точки зрения дублирования кода.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;В планах lombok проникновение в другие части компилятора (после лексера  для реализации замыканий (closures!), после семантического разбора для  проведения интеллектуальных анализов с учетом семантической информации  (типы, ссылки на объявления) и на этапе генерации байт кода.&lt;br /&gt;&lt;a class="moz-txt-link-freetext" href="http://github.com/amelentev/lombok/blob/inline/doc/PlannedExtensions.txt"&gt;http://github.com/rzwitserloot/lombok/blob/master/doc/PlannedExtensions.txt&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36795539-519817262408388503?l=amelentev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://amelentev.blogspot.com/feeds/519817262408388503/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36795539&amp;postID=519817262408388503' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/519817262408388503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/519817262408388503'/><link rel='alternate' type='text/html' href='http://amelentev.blogspot.com/2009/10/lombok.html' title='lombok'/><author><name>amelentev</name><uri>http://www.blogger.com/profile/06945335158264857597</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36795539.post-8149541203918206742</id><published>2009-10-11T02:57:00.004+06:00</published><updated>2009-10-11T22:19:12.921+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='amd'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='patch'/><title type='text'>powernow-k8-overridevid</title><content type='html'>Так как мой процессор Turion X2 TL-50 на старом ноутуке Asus A6Tc разогнать нереально, я решил понизить вольтаж, чтобы хотябы поменьше грелся.&lt;br /&gt;В процессе поиска обнаружился &lt;a href="http://bbs.archlinux.org/viewtopic.php?id=22827"&gt;древний патч&lt;/a&gt; к модулю powernow-k8, который переопределяет вольтаж для указанных частот.&lt;br /&gt;Выкладываю сильно обновленный патч для современных ядер:&lt;br /&gt;&lt;a href="http://bitbucket.org/amelentev/patches/src/tip/powernow-k8/"&gt;http://bitbucket.org/amelentev/patches/src/tip/powernow-k8/&amp;nbsp;&lt;/a&gt;&lt;br /&gt;&lt;code&gt;&lt;ae-cut text="далее"&gt;&lt;/ae-cut&gt;&lt;/code&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;Тестировал на ядрах 2.6.30, 2.6.31, + genpatches + tuxonice.&lt;br /&gt;Патч должен работать на всех процессорах AMD начиная с K8 (Athlon 64).&lt;br /&gt;&lt;br /&gt;В результате снизил вольтаж на ~15% на обоих frequency states без потери стабильности.&lt;br /&gt;Температура заметно снизилась (тепловыделение квадратично зависит от вольтажа).&lt;br /&gt;&lt;br /&gt;Для использования, необходимо собрать powernow-k8 как модуль (CONFIG_X86_POWERNOW_K8=m) и подгрузить с нужными параметрами. Например у меня:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;# modprobe powernow-k8 vid_overrides=8,0x1a,0,0x22&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;# dmesg | grep powernow-k8&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;powernow-k8: Found 1 AMD Turion(tm) 64 X2 Mobile Technology TL-50 processors (2 cpu cores) (version 2.20.00-overridevid-1)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;powernow-k8:&amp;nbsp;&amp;nbsp;&amp;nbsp; overridding fid 0x8 (1600 MHz) from vid 0x13 to 0x1a&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;powernow-k8:&amp;nbsp;&amp;nbsp;&amp;nbsp; overridding fid 0x0 (800 MHz) from vid 0x1e to 0x22&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;powernow-k8:&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 : fid 0x8 (1600 MHz), vid 0x1a&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;powernow-k8:&amp;nbsp;&amp;nbsp;&amp;nbsp; 1 : fid 0x0 (800 MHz), vid 0x22&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Как видно вольтаж для состояния 800MHz изменяется с 0.8V до 0.7V, а для 1600MHz с 1.125V до 0.9V&lt;br /&gt;&lt;br /&gt;Для автозагрузки модуля с правильными параметрами в Gentoo можно написать в /etc/conf.d/modules:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;module_powernow_k8_args=' vid_overrides=8,0x1a,0,0x22 '&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;modules="powernow-k8"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Тамже выкладываю модифицированную прогу для чтения информации fid/vid - k8-msr.c&lt;br /&gt;&lt;code&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36795539-8149541203918206742?l=amelentev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://amelentev.blogspot.com/feeds/8149541203918206742/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36795539&amp;postID=8149541203918206742' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/8149541203918206742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/8149541203918206742'/><link rel='alternate' type='text/html' href='http://amelentev.blogspot.com/2009/10/powernow-k8-overridevid.html' title='powernow-k8-overridevid'/><author><name>amelentev</name><uri>http://www.blogger.com/profile/06945335158264857597</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36795539.post-3955428753171891742</id><published>2008-05-14T13:48:00.005+06:00</published><updated>2008-05-14T14:38:12.851+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='xwiki'/><title type='text'>myxwiki</title><content type='html'>Не так давно &lt;a href="http://xwiki.org"&gt;XWiki&lt;/a&gt; &lt;a href="http://markmail.org/message/2x2l6ixrqnsq6cre"&gt;запустила&lt;/a&gt; открытую wiki-ферму &lt;a href="http://myxwiki.org"&gt;myxwiki.org&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;myxwiki предлагает всем свою персональную xwiki с именем somename.myxwiki.org&lt;br /&gt;&lt;br /&gt;Её удобно использовать в качестве blog, homepage, photo album, calendar и различных экспериментов &lt;br /&gt;(возможность писать произвольный код на velocity/groovy прямо в браузере).&lt;br /&gt;Рекламы нет.&lt;br /&gt;&lt;br /&gt;Цель myxwiki - тестирование последних версий XE/XEM, так что нет никаких гарантий стабильности, доступности и пр.&lt;br /&gt;Если вам нужна стабильная wiki, &lt;a href="http://xwiki.com"&gt;xwiki.com&lt;/a&gt; предлагает профессиональный хостинг и поддержку.&lt;br /&gt;&lt;br /&gt;Для получения wiki следуйте инструкциям на &lt;a href="http://myxwiki.org"&gt;myxwiki.org&lt;/a&gt; :&lt;br /&gt; * зарегистрируйтесь на myxwiki.org&lt;br /&gt; * пошлите письмо с темой "[myxwiki] new wiki request" в список рассылки &lt;a href="http://www.nabble.com/XWiki--Users-f2565.html"&gt;xwiki-users&lt;/a&gt; с коротким указанием, зачем вам нужна wiki&lt;br /&gt; * в письме укажите ваш аккаунт на myxwiki.org и желаемое_имя.myxwiki.org&lt;br /&gt;&lt;br /&gt;Как пример, можете посмотреть &lt;a href="http://amelentev.myxwiki.org"&gt;мою wiki&lt;/a&gt; (довольно пуста на данный момент)&lt;br /&gt;&lt;br /&gt;PS: я один из администраторов myxwiki.org и &lt;a href="http://dev.xwiki.org/xwiki/bin/view/Community/HallOfFame#HCoreCommitters"&gt;разработчиков xwiki&lt;/a&gt;, так что, возможно, могу чем-нибудь помочь.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36795539-3955428753171891742?l=amelentev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://amelentev.blogspot.com/feeds/3955428753171891742/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36795539&amp;postID=3955428753171891742' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/3955428753171891742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/3955428753171891742'/><link rel='alternate' type='text/html' href='http://amelentev.blogspot.com/2008/05/myxwiki.html' title='myxwiki'/><author><name>amelentev</name><uri>http://www.blogger.com/profile/06945335158264857597</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36795539.post-8399814717234480361</id><published>2008-05-02T20:14:00.005+06:00</published><updated>2008-05-02T20:41:29.790+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='usu'/><title type='text'>DMM Tournament of Programs 08</title><content type='html'>Сегодня было закрытие &lt;a href="http://matmexday.googlepages.com/"&gt;турнира программ ДММ&lt;/a&gt; в &lt;a href="http://en.wikipedia.org/wiki/Ural_State_University"&gt;УрГУ&lt;/a&gt;.&lt;br /&gt;Выиграл состязание прогамм при 4х игроках и занял 2ое место при 2х игроках.&lt;br /&gt;Спасибо организаторам. Было очень интересно.&lt;br /&gt;&lt;br /&gt;Много идей я не успел реализовать. Думаю я хорошо выступил только изза удачных оптимизаций, т.к. основной алгоритм у меня довольно тупой (всего одна волна).&lt;br /&gt;&lt;br /&gt;Результаты, логи и исходники всех программ скоро будут на http://matmexday.googlepages.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36795539-8399814717234480361?l=amelentev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://amelentev.blogspot.com/feeds/8399814717234480361/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36795539&amp;postID=8399814717234480361' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/8399814717234480361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/8399814717234480361'/><link rel='alternate' type='text/html' href='http://amelentev.blogspot.com/2008/05/dmm-tournament-of-programs-08.html' title='DMM Tournament of Programs 08'/><author><name>amelentev</name><uri>http://www.blogger.com/profile/06945335158264857597</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36795539.post-8484565220760985807</id><published>2008-03-14T19:46:00.003+05:00</published><updated>2008-03-14T20:02:45.247+05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gsoc'/><title type='text'>GSoC08 local presentation</title><content type='html'>17 марта, в 17:30 в ИММ (г Екатеринбург), аудитория 115, в рамках семинара &lt;a href="http://pria.uran.ru/Seminar/"&gt;"Системное программирование"&lt;/a&gt; будет представлен небольшой доклад по &lt;a href="http://gsoc.org.ua"&gt;GSoC&lt;/a&gt;.&lt;br /&gt;приглашаются все желающие.&lt;br /&gt;&lt;br /&gt;24-31 марта - прием заявок от студентов.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36795539-8484565220760985807?l=amelentev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://amelentev.blogspot.com/feeds/8484565220760985807/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36795539&amp;postID=8484565220760985807' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/8484565220760985807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/8484565220760985807'/><link rel='alternate' type='text/html' href='http://amelentev.blogspot.com/2008/03/gsoc08-local-presentation.html' title='GSoC08 local presentation'/><author><name>amelentev</name><uri>http://www.blogger.com/profile/06945335158264857597</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36795539.post-2551466179544579798</id><published>2008-02-19T22:00:00.002+05:00</published><updated>2009-10-11T03:15:47.838+06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lang'/><title type='text'>Extendable languages investigation</title><content type='html'>Небольшое исследование расширяемых языков и смежных областей.&lt;br /&gt;&lt;br /&gt;Упор на Java.&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;pre&gt;Java Syntactic Extender (JSE)&lt;br /&gt;http://people.csail.mit.edu/jrb/jse/&lt;br /&gt;http://jse.sourceforge.net/examples/index.html&lt;br /&gt;макропроцессор. преобразует .jse файлы в .java с помощью спец java классов.&lt;br /&gt;использует преобразования синтаксического дерева разбора. code quotes.&lt;br /&gt;&lt;br /&gt;SQLJ&lt;br /&gt;http://www.sqlj.org/&lt;br /&gt;препроцессор. синтаксическое расширение java для работы с SQL.&lt;br /&gt;Проверяет коррестность запросов и типов на этапе компиляции.&lt;br /&gt;Немного похожая функциональность есть в стандарте jdbc4 (sql в аннотациях),&lt;br /&gt;но там нет проверок при компиляции.&lt;br /&gt;&lt;br /&gt;JastAdd&lt;br /&gt;http://jastadd.cs.lth.se/web/&lt;br /&gt;Java-based compiler compiler system.&lt;br /&gt;используют:&lt;br /&gt;Jast Extensible Java Compiler (JastAddJ)&lt;br /&gt;support Java 1.4, 1.5&lt;br /&gt;модульность&lt;br /&gt;доп проверки&lt;br /&gt;Java non-null types tools&lt;br /&gt;Вычисление метрик кода&lt;br /&gt;PicoJava&lt;br /&gt;простой ОО язык&lt;br /&gt;&lt;br /&gt;OJ, OpenJava&lt;br /&gt;http://openjava.sourceforge.net/&lt;br /&gt;Metaobject Protocol for Java&lt;br /&gt;Class-Based Macro System for Java&lt;br /&gt;генерирует класы в runtime.&lt;br /&gt;не развивается (последний релиз 2001г)&lt;br /&gt;&lt;br /&gt;XLR: Extensible Language and Runtime&lt;br /&gt;http://xlr.sourceforge.net/&lt;br /&gt;простой язык с возможностями расширения синтаксиса.&lt;br /&gt;своя виртуальная машина.&lt;br /&gt;&lt;br /&gt;MPS, Meta Programming System&lt;br /&gt;http://www.jetbrains.com/mps/&lt;br /&gt;набор инструментов для создания языков предметной области и связи их с IDE Idea&lt;br /&gt;(редакторы, дополнение кода, навигация, сквозной сефакторинг и пр).&lt;br /&gt;свободно доступен по EAP. исходный код закрыт.&lt;br /&gt;(набирают студентов в Питере для стажерства)&lt;br /&gt;&lt;br /&gt;ANTLR, ANother Tool for Language Recognition&lt;br /&gt;http://antlr.org/&lt;br /&gt;аналог JavaCC, LL(k)&lt;br /&gt;GUI - ANTLR Works, ANTLR Studio (аналоги редактора граматик MPS)&lt;br /&gt;&lt;br /&gt;JavaCC, Java Compiler Compiler, The Java Parser Generator&lt;br /&gt;https://javacc.dev.java.net/&lt;br /&gt;LL(k)&lt;br /&gt;&lt;br /&gt;Scala&lt;br /&gt;http://www.scala-lang.org/&lt;br /&gt;Объектно-функциональный статически-типизируемый язык. Компилируется в java и dotnet.&lt;br /&gt;Расширяемость за счет "синтаксического сахара" и замыканий:&lt;br /&gt;object method subject {..} == object.method(subject)(closure)&lt;br /&gt;&lt;br /&gt;Groovy, JSR241&lt;br /&gt;http://groovy.codehaus.org/&lt;br /&gt;диманический язык, с компиляцией в JVM. Часто используется для расширения основной программы.&lt;br /&gt;есть реализация MOP - meta object protocol, позволяющая легко создавать миниязыки:&lt;br /&gt;http://www.ibm.com/developerworks/ru/library/j-pg09205/index.html?ca=drs-ru&lt;br /&gt;(по моему это должен уметь любой динамический язык :))&lt;br /&gt;&lt;br /&gt;Nemerle&lt;br /&gt;http://nemerle.org/&lt;br /&gt;объектно-функциональный статически-типизируемый язык. Компилируется в dotnet.&lt;br /&gt;типо-безопасные "гигиеничные" макросы и квази-цитирование.&lt;br /&gt;&lt;br /&gt;Lisp&lt;br /&gt;самый расширяемый язык по многим источникам.&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Links:&lt;br /&gt;http://en.wikipedia.org/wiki/Extensible_programming&lt;br /&gt;http://feeds.feedburner.com/~r/robjsoftwaredotorg/~3/195098913/growable-language-manifesto.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36795539-2551466179544579798?l=amelentev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://amelentev.blogspot.com/feeds/2551466179544579798/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36795539&amp;postID=2551466179544579798' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/2551466179544579798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/2551466179544579798'/><link rel='alternate' type='text/html' href='http://amelentev.blogspot.com/2008/02/blog-post.html' title='Extendable languages investigation'/><author><name>amelentev</name><uri>http://www.blogger.com/profile/06945335158264857597</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36795539.post-116213773829935459</id><published>2006-10-29T21:00:00.000+05:00</published><updated>2008-02-19T22:32:11.069+05:00</updated><title type='text'>First post</title><content type='html'>This was a first post&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36795539-116213773829935459?l=amelentev.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://amelentev.blogspot.com/feeds/116213773829935459/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36795539&amp;postID=116213773829935459' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/116213773829935459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36795539/posts/default/116213773829935459'/><link rel='alternate' type='text/html' href='http://amelentev.blogspot.com/2006/10/first-post.html' title='First post'/><author><name>amelentev</name><uri>http://www.blogger.com/profile/06945335158264857597</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
