<?xml version="1.0" encoding="utf-8"?>
<!-- If you are running a bot please visit this policy page outlining rules you must respect. http://www.livejournal.com/bots/ -->
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:lj="http://www.livejournal.com">
  <id>urn:lj:livejournal.com:atom1:_gvozdoder_</id>
  <title>Электрический гвоздодер</title>
  <subtitle>Электрический гвоздодер</subtitle>
  <author>
    <name>Электрический гвоздодер</name>
  </author>
  <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/"/>
  <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom"/>
  <updated>2007-12-20T14:33:38Z</updated>
  <lj:journal username="_gvozdoder_" type="personal"/>
  <link rel="service.feed" type="application/x.atom+xml" href="http://users.livejournal.com/_gvozdoder_/data/atom" title="Электрический гвоздодер"/>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:17821</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/17821.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=17821"/>
    <title>Инлайн-функция с разными определениями</title>
    <published>2007-12-20T14:33:38Z</published>
    <updated>2007-12-20T14:33:38Z</updated>
    <content type="html">На интересную подставу наткнулся сегодня. Деструктор std::auto_ptr вдруг отказался вызывать правильный деструктор хранимого объекта в давно работающем и не изменявшемся коде. Вот &lt;a href="http://www.everfall.com/paste/id.php?aylsxzgdiix3"&gt;пример кода&lt;/a&gt;, который демонстрирует проблему.&lt;br /&gt;Этот код может вывести "Hi!"... а может и не вывести, как повезет.&lt;br /&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;br /&gt;Объяснение простое: у нас есть 2 определения функции &lt;code&gt;std::auto_ptr&amp;lt;Test&amp;gt;::~auto_ptr&lt;/code&gt;, одно в bar.cpp, другое в baz.cpp. Одно из них правильное (в bar.cpp), другое -- нет. Линкер выбирает любое на свой вкус. У меня он всегда выбирает неправильное :). Таким образом, при определенных условиях можно поломать давно работающий код.&lt;br /&gt;Вообще, при уровне варнингов &amp;gt;1, в функции &lt;code&gt;main&lt;/code&gt; должен быть &lt;code&gt;C4150: deletion of pointer to incomplete type 'type'; no destructor called&lt;/code&gt;. У нас везде 3-й уровень варнингов. Но недавно был добавлен проект, в котором 1-й уровень варнингов (проект, в котором временная тулза, над ним не заморачивались). Он содержит baz.cpp, а код, скомпилированный с 3-м уровнем содержит bar.cpp. Баг, естественно, выпал в bar.cpp, вызвав некоторое недоумение.&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:17402</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/17402.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=17402"/>
    <title>Снова о ребрах неориентированного графа</title>
    <published>2007-12-12T08:45:41Z</published>
    <updated>2007-12-12T08:45:41Z</updated>
    <content type="html">&lt;a href="http://www.everfall.com/paste/id.php?chjs9q1x285g"&gt;Вот&lt;/a&gt; исходники теста к моему &lt;a href="http://users.livejournal.com/_gvozdoder_/16946.html"&gt;предыдущему посту&lt;/a&gt;, дополненные несколькими вариантами min/max (как подсказал &lt;span class='ljuser' lj:user='sim0nsays' style='white-space: nowrap;'&gt;&lt;a href='http://sim0nsays.livejournal.com/profile'&gt;&lt;img src='http://p-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://sim0nsays.livejournal.com/'&gt;&lt;b&gt;sim0nsays&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;).&lt;br /&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;br /&gt;&lt;pre&gt;
              abs: 3831151504
               if: 7834022892
          min/max: 14262280248
FAST_MIN/FAST_MAX: 5319194224
             CMOV: 9500162756
&lt;/pre&gt;&lt;br /&gt;Результаты теста измеряются в попугаях (тиках процессора).&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:16946</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/16946.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=16946"/>
    <title>Идентификаторы ребер неориентированного графа</title>
    <published>2007-12-11T14:17:41Z</published>
    <updated>2007-12-11T14:17:41Z</updated>
    <content type="html">Задача: сделать ключ, по которому можно будет найти ребро неориентированного графа. Т. е. если вершина графа обозначена целочисленным идентификатором, то ребро такого графа можно обозначить как (a,b), причем (a,b) и (b,a) &amp;mdash; это одно и то же ребро.&lt;br /&gt;Хочется сделать так, чтобы не приходилось сортировать идентификаторы вершин a и b перед занесением их в ключ. Иными словами, если ключ у нас, это std::pair&amp;lt;int,int&amp;gt;, то нужно избежать условного перехода при конструировании этой пары. Как оказалось, решение есть: вместо a и b заносим в пару a+b и abs(a-b). Эти два числа однозначно идентифицируют наше ребро (a,b).</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:16733</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/16733.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=16733"/>
    <title>Маленький отладочный трюк</title>
    <published>2007-12-05T14:57:38Z</published>
    <updated>2007-12-05T14:58:19Z</updated>
    <content type="html">Часто бывает, что на момент проявления ошибки установить ее причину уже невозможно: код, который содержит ошибку уже выполнен. Особенно неприятно, когда нет четких steps-to-reproduce и трудно определить, куда и с каким условием поставить точку останова перед ошибочным кодом. В такой момент мечтаешь об &lt;a href="http://caml.inria.fr/pub/docs/manual-ocaml/manual030.html"&gt;отладчике с поддержкой time travel&lt;/a&gt;.&lt;br /&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;br /&gt;Но есть несколько простых способов "шагнуть в прошлое" для бедных:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Set Next Statement в отладчике Visual Studio. Когда поймали проявление ошибки делаем Set Next Statement на код, где ошибка предположительно находится.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Дублирование кода. Тут все просто, вместо&lt;br /&gt;&lt;code&gt;myKewlFunct10n();&lt;/code&gt;&lt;br /&gt;пишем&lt;br /&gt;&lt;code&gt;myKewlFunct10n();&lt;/code&gt;&lt;br /&gt;&lt;code&gt;myKewlFunct10n();&lt;/code&gt;&lt;br /&gt;В первом вызове ошибку ловим, а во втором пошагово отлаживаем код, который к ней приводит.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:16424</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/16424.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=16424"/>
    <title>ICFPC 2007</title>
    <published>2007-07-24T11:54:09Z</published>
    <updated>2007-07-31T16:39:58Z</updated>
    <content type="html">Хоть сам и не участвовал, но сочувствовал :). Если кто не в курсе, что такое ICFP Contest, смотрите &lt;a href="http://www.icfpcontest.org/"&gt;официальный сайт&lt;/a&gt;. Вот ссылки на отчеты от участников (постараюсь пополнять):&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://wiki.freaks-unidos.net/icfp/2007/"&gt;Alejandro Forero Cuervo (Freaks Unidos)&lt;/a&gt; - &lt;a href="http://wiki.freaks-unidos.net/icfp/2007/xsvnwiki-discuss/index"&gt;обсуждение&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://larubin.livejournal.com/71848.html"&gt;ЖЖ юзер larubin (7-15)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://zelych.livejournal.com/3959.html"&gt;ЖЖ юзер zelych (?)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.cse.unsw.edu.au/~dons/irc/oasis/2007-07-20.txt"&gt;Don Stewart (irc-лог) 1&lt;/a&gt;, &lt;a href="http://www.cse.unsw.edu.au/~dons/irc/oasis/2007-07-21.txt"&gt;2&lt;/a&gt;, &lt;a href="http://www.cse.unsw.edu.au/~dons/irc/oasis/2007-07-22.txt"&gt;3&lt;/a&gt;, &lt;a href="http://www.cse.unsw.edu.au/~dons/irc/oasis/2007-07-23.txt"&gt;4&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://tapani.cs.chalmers.se/icfp/2007/"&gt;Tapani Utriainen (Begot)&lt;a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://yole.livejournal.com/355066.html"&gt;Dmitry Jemerov (ryba) 1&lt;/a&gt;, &lt;a href="http://yole.livejournal.com/355183.html"&gt;2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://infthi.livejournal.com/17846.html"&gt;Max Leonov (Rassvet-CMC-MSU)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.rsdn.ru/forum/message/2591828.flat.aspx"&gt;Тема на rsdn.ru (много команд)&lt;/a&gt;: &lt;a href="http://www.rsdn.ru/forum/message/2595186.1.aspx"&gt;1&lt;/a&gt;, &lt;a href="http://www.rsdn.ru/forum/message/2595294.1.aspx"&gt;2&lt;/a&gt;, &lt;a href="http://www.rsdn.ru/forum/message/2595022.1.aspx"&gt;3&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://psha.org.ru/p/icfp/doc/"&gt;? (SzM)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.kmonos.net/wlog/75.html#_2341070724"&gt;Kazuhiro Inaba (kokorush) 1&lt;/a&gt;, &lt;a href="http://www.kmonos.net/wlog/75.html#_2133070723"&gt;2&lt;/a&gt;. Перевод: &lt;a href="http://66.249.91.104/translate_c?hl=en&amp;amp;langpair=ja%7Cen&amp;amp;u=http://www.kmonos.net/wlog/75.html#_2341070724"&gt;1&lt;/a&gt;, &lt;a href="http://66.249.91.104/translate_c?hl=en&amp;amp;langpair=ja%7Cen&amp;amp;u=http://www.kmonos.net/wlog/75.html#_2133070723"&gt;2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://d.hatena.ne.jp/ku-ma-me/20070720"&gt;? (kuma--) 1&lt;/a&gt;, &lt;a href="http://d.hatena.ne.jp/ku-ma-me/20070722"&gt;2&lt;/a&gt;, &lt;a href="http://d.hatena.ne.jp/ku-ma-me/20070723"&gt;3&lt;/a&gt;. Перевод: &lt;a href="/66.249.91.104/translate_c?hl=en&amp;amp;langpair=ja%7Cen&amp;amp;u=http://d.hatena.ne.jp/ku-ma-me/20070720"&gt;1&lt;/a&gt;, &lt;a href="http://66.249.91.104/translate_c?hl=en&amp;amp;langpair=ja%7Cen&amp;amp;u=http://d.hatena.ne.jp/ku-ma-me/20070722"&gt;2&lt;/a&gt;, &lt;a href="http://66.249.91.104/translate_c?hl=en&amp;amp;langpair=ja%7Cen&amp;amp;u=http://d.hatena.ne.jp/ku-ma-me/20070723"&gt;3&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;&lt;a href="http://d.hatena.ne.jp/shinichiro_h/20070723/p1"&gt;shinichiro_h (shinh) 1&lt;/a&gt;, &lt;a href="http://d.hatena.ne.jp/shinichiro_h/20070724#1185207058"&gt;2&lt;/a&gt;. Перевод: &lt;a href="http://66.249.91.104/translate_c?hl=en&amp;amp;langpair=ja%7Cen&amp;amp;u=http://d.hatena.ne.jp/shinichiro_h/20070723/p1"&gt;1&lt;/a&gt;, &lt;a href="http://66.249.91.104/translate_c?hl=en&amp;amp;langpair=ja%7Cen&amp;amp;u=http://d.hatena.ne.jp/shinichiro_h/20070724#1185207058"&gt;2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://d.hatena.ne.jp/kikx/20070723#1185191169"&gt;chrysanthemum (?)&lt;/a&gt;. Перевод: &lt;a href="http://66.249.91.104/translate_c?hl=en&amp;amp;langpair=ja%7Cen&amp;amp;u=http://d.hatena.ne.jp/kikx/20070723#1185191169"&gt;1&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://kzk9.net/blog/2007/07/icfp_2007.html"&gt;Kazuki Ohta (PurelyFunctionalInfrastructure)&lt;/a&gt;. Перевод: &lt;a href="http://66.249.91.104/translate_c?hl=en&amp;amp;langpair=ja%7Cen&amp;amp;u=http://kzk9.net/blog/2007/07/icfp_2007.html"&gt;1&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;&lt;a href="http://marco-za.blogspot.com/2007/07/top-15-in-icfp-contest.html"&gt;Marco Gallotta (United Coding Team)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://d.hatena.ne.jp/nyaasan/"&gt;nyaasan (Unknown?)&lt;/a&gt;. Перевод: &lt;a href="http://66.249.91.104/translate_c?hl=en&amp;amp;langpair=ja%7Cen&amp;amp;u=http://d.hatena.ne.jp/nyaasan/20070724"&gt;1&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.developers.org.ua/archives/bialix/2007/07/24/icfpc-2007-report/"&gt;Александр Бельченко (dou)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://diary.ru/~himself/?comments&amp;amp;postid=32637307"&gt;himself (efg)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://oal.livejournal.com/475038.html"&gt;oal (efg)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://blogs.msdn.com/cashto/archive/2007/07/23/the-icfp-10th-annual-programming-contest.aspx"&gt;Chris Ashton (cashto)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://dfyz.livejournal.com/41941.html"&gt;Иван Комаров (Dfyz's team)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://sambangu.blogspot.com/2007/07/python-to-rescue-icfp-contest-2007"&gt;Chris Bogart (ChrisBogart)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://community.livejournal.com/evan_tech/229595.html"&gt;Evan Martin (On Byte Nirvana)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://useless-factor.blogspot.com/2007/07/icfp-results.html"&gt;Daniel Ehrenberg (Raptors)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://faceted-jacinth.livejournal.com/78761.html"&gt;ЖЖ юзер faceted_jacinth (Tibetan Biodiversity Display)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://shurick.s2s.msu.ru/static/icfpc-2007.html"&gt;Shurick (SzM)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://stereotype441.livejournal.com/45150.html"&gt;Paul Berry (The Corn Worf Strategy)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/a&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:16274</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/16274.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=16274"/>
    <title>Вера в науке</title>
    <published>2007-07-24T07:51:44Z</published>
    <updated>2007-07-24T07:51:44Z</updated>
    <content type="html">Не могу я понять, почему академики, &lt;a href="http://news8.thdo.bbc.co.uk/low/russian/russia/newsid_6911000/6911750.stm"&gt;выступившие&lt;/a&gt; с &lt;a href="http://www.novayagazeta.ru/data/2007/kentavr03/00.html"&gt;открытым письмом&lt;/a&gt;, могут говорить, что &lt;cite&gt;Любая наука оперирует фактами, логикой, доказательствами, но отнюдь не верой&lt;/cite&gt;. Это очевидная ложь. Мы все знаем, например, что в такой области науки, как геометрия, на веру принимается ее основа, &lt;strong&gt;аксиомы&lt;/strong&gt;. Исходя из &lt;a href="http://ru.wiktionary.org/wiki/%D0%B0%D0%BA%D1%81%D0%B8%D0%BE%D0%BC%D0%B0#.D0.A1.D0.B5.D0.BC.D0.B0.D0.BD.D1.82.D0.B8.D1.87.D0.B5.D1.81.D0.BA.D0.B8.D0.B5_.D1.81.D0.B2.D0.BE.D0.B9.D1.81.D1.82.D0.B2.D0.B0"&gt;определения&lt;/a&gt; &lt;strong&gt;аксиомы&lt;/strong&gt; видим, что это научный термин для обозначения вещей в научных теориях, которые принимаются на веру.&lt;br /&gt;&lt;br /&gt;Врут господа академики!</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:16066</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/16066.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=16066"/>
    <title>О платных аккаунтах dtf.ru</title>
    <published>2007-07-23T14:56:10Z</published>
    <updated>2007-07-23T14:56:10Z</updated>
    <content type="html">Может быть я чего-то не понимаю, но на мой скромный взгляд &lt;a href="http://dtf.ru/news/read.php?id=47120"&gt;введение платных аккаунтов&lt;/a&gt; на &lt;a href="http://www.dtf.ru"&gt;dtf.ru&lt;/a&gt; выглядит несколько преждевременным. Нет тех бонусов, за которые стоило бы платить деньги. Для сравнения могу предложить &lt;a href="http://www.gamedev.net/subscribe/"&gt;описание&lt;/a&gt; платных аккаунтов на &lt;a href="http://www.gamedev.net"&gt;gamedev.net&lt;/a&gt;. Как несложно видеть, платный аккаунт на &lt;a href="http://www.gamedev.net"&gt;gamedev.net&lt;/a&gt; может даже окупиться, чего только стоят скидки на книги и на ionForge Evolution.&lt;br /&gt;Могли бы хоть на участие в КРИ скидки давать, чтоб хоть какой-нибудь ощутимый бонус был. Хотя "малиновые штаны dtf", я думаю, будут атрибутом престижа в индустрии :).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;UPDATE&lt;/strong&gt;: Вижу, что уже начинают становиться :)</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:15753</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/15753.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=15753"/>
    <title>О разработке...</title>
    <published>2007-06-04T13:43:35Z</published>
    <updated>2007-06-04T13:43:35Z</updated>
    <content type="html">- Почему вы пилите тупой пилой, так ведь очень долго и трудно?&lt;br /&gt;- Да некогда точить, пилить надо!&lt;br /&gt;&lt;br /&gt;Взято &lt;a href="http://www.ashmanov.com/pap/ashrul2/"&gt;отсюда&lt;/a&gt;.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:15529</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/15529.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=15529"/>
    <title>Autoexp.dat</title>
    <published>2007-05-31T06:27:41Z</published>
    <updated>2007-05-31T06:40:38Z</updated>
    <content type="html">Предназначен всем, кто страдает от невозможности увидеть содержимое stlport'овых std::list, std::map, std::auto_ptr, boost'овых boost::shared_ptr, boost::weak_ptr и т. п. Проверено на STLport 5.1.3 и boost 1.34.0.&lt;p&gt;
&lt;a name="cutid1"&gt;&lt;/a&gt;
Скрипт лежит &lt;a href="http://www.everfall.com/paste/id.php?5zasbhlf7024"&gt;тут&lt;/a&gt;.&lt;p&gt;

Этот текст нужно вставить в секцию &lt;tt&gt;[Visualizer]&lt;/tt&gt; вашего &lt;tt&gt;autoexp.dat&lt;/tt&gt;. &lt;tt&gt;Autoexp.dat&lt;/tt&gt; находится в каталоге &lt;tt&gt;МояВизуалСтудия2005\Common7\Packages\Debugger\&lt;/tt&gt;.&lt;br /&gt;&lt;br /&gt;
&lt;b&gt;UPDATE:&lt;/b&gt; Список поддерживаемых типов:&lt;br /&gt;&lt;ul&gt;&lt;li&gt; STLPort: &lt;ul&gt;&lt;li&gt; std::string / std::wstring &lt;/li&gt;&lt;li&gt; std::vector &lt;/li&gt;&lt;li&gt; std::list &lt;/li&gt;&lt;li&gt; std::map &lt;/li&gt;&lt;li&gt; std::auto_ptr &lt;/li&gt;&lt;li&gt; std::pair &lt;/li&gt;&lt;li&gt; std::list::iterator &lt;/li&gt;&lt;li&gt; std::map::iterator &lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;li&gt; boost: &lt;ul&gt;&lt;li&gt; boost::shared_ptr &lt;/li&gt;&lt;li&gt; boost::weak_ptr &lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:15274</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/15274.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=15274"/>
    <title>The Principle Of Too Much Magic</title>
    <published>2007-05-31T05:35:06Z</published>
    <updated>2007-05-31T05:36:34Z</updated>
    <content type="html">&lt;h3&gt;You know you've used too much magic if...&lt;/h3&gt;  &lt;ul&gt;&lt;li&gt; ...you are no longer certain what will happen when you start your application  &lt;/li&gt;&lt;li&gt; ...you have to check the framework docs to find out exactly what the framework will do and what your code should do in return  &lt;/li&gt;&lt;li&gt; ...someone asks you how all this magic you've built works and you can't answer  &lt;/li&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;li&gt; ...your callstack won't fit in your debug window  &lt;/li&gt;&lt;li&gt; ...your stack traces won't fit on a single A4  &lt;/li&gt;&lt;li&gt; ...your application uses all known forms of magic  &lt;/li&gt;&lt;li&gt; ...you are using a framework inside a framework inside a framework  &lt;/li&gt;&lt;li&gt; ...you are embedding a scripting language inside metadata tags which are transformed into xml scripts which are loaded through a custom classloader which is provided to you by a framework inside a framework inside a framework &lt;/li&gt;&lt;li&gt; ...your xml configuration file looks like a Microsoft Office document  &lt;/li&gt;&lt;li&gt; ...your xml configuration DTD is the size of the XHTML specification  &lt;/li&gt;&lt;li&gt; ...your xml configuration schema is not expressible using a DTD  &lt;/li&gt;&lt;li&gt; ...your collegues call you Neo  &lt;/li&gt;&lt;li&gt; ...your collegues call you Harry Potter  &lt;/li&gt;&lt;li&gt; ...your wife calls you Harry Potter  &lt;/li&gt;&lt;li&gt; ...your servlet requires 400MB of RAM  &lt;/li&gt;&lt;li&gt; ...you have done dynamic proxying around the reflection library to simplify the access to the runtime metadata library from your scripting language &lt;/li&gt;&lt;li&gt; ...you need to use AOP to write your unit tests  &lt;/li&gt;&lt;li&gt; ...you need to RTFM to write your unit tests  &lt;/li&gt;&lt;li&gt; ...your collegues cannot read your unit tests  &lt;/li&gt;&lt;li&gt; ...you cannot read your unit tests  &lt;/li&gt;&lt;li&gt; ...it is no longer possible to remove the magic from your application  &lt;/li&gt;&lt;li&gt; ...your code reads and feels like Perl  &lt;/li&gt;&lt;li&gt; ...your code is written in Perl  &lt;/li&gt;&lt;li&gt; ...your IDE doesn't know how to color-code your code  &lt;/li&gt;&lt;li&gt; ...the refactoring tools of your IDE no longer work with your code  &lt;/li&gt;&lt;li&gt; ...you use multiple AOP libraries  &lt;/li&gt;&lt;li&gt; ...you use multiple scripting languages  &lt;/li&gt;&lt;li&gt; ...your documentation is as utterly unreadable as the EJB specification  &lt;/li&gt;&lt;li&gt; ...sysadmins require certification before they can admin your system  &lt;/li&gt;&lt;li&gt; ...your local jar repository looks like an Apache-ftp-mirror after running your app loading missing jars automatically  &lt;/li&gt;&lt;li&gt; ...your generated source code won't compile, because it exceeds the 64 KByte size limit for Java class files  &lt;/li&gt;&lt;li&gt; ...you have to increase the VM's memory size three times before your application finally starts  &lt;/li&gt;&lt;li&gt; ...you are using XML DOM's as a datatype instead of a hashmap/collections.  &lt;/li&gt;&lt;li&gt; ...you are passing XML fragments(or DOM's) between classes and functions instead of java objects.&lt;/li&gt;&lt;/ul&gt;Взял &lt;a href="http://dev.jicarilla.org/oldwiki/TooMuchMagic"&gt;отсюда&lt;/a&gt;.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:14874</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/14874.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=14874"/>
    <title>Похоже, ошибка в VC++ 7.1</title>
    <published>2007-02-22T11:23:30Z</published>
    <updated>2007-02-22T11:23:30Z</updated>
    <content type="html">Под катом код, который не работает при включенных оптимизациях, предположительно по причине ошибки в компиляторе. Функция fn должна вывести в std::cout значения переданных параметров, но выводит мусор.&lt;br /&gt;&lt;br /&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;br /&gt;&lt;table width="100%" bgcolor="#ffffff"&gt;&lt;tr&gt;&lt;td&gt;&lt;pre&gt;&lt;font color="white"&gt;
&lt;b&gt;&lt;font color="#0000ff"&gt;#include&lt;/font&gt;&lt;/b&gt; &lt;font color="#ca6500"&gt;&amp;lt;typeinfo&amp;gt;&lt;/font&gt;
&lt;b&gt;&lt;font color="#0000ff"&gt;#include&lt;/font&gt;&lt;/b&gt; &lt;font color="#ca6500"&gt;&amp;lt;iostream&amp;gt;&lt;/font&gt;
&lt;b&gt;&lt;font color="#0000ff"&gt;#include&lt;/font&gt;&lt;/b&gt; &lt;font color="#ca6500"&gt;&amp;lt;boost/bind.hpp&amp;gt;&lt;/font&gt;
&lt;b&gt;&lt;font color="#0000ff"&gt;#include&lt;/font&gt;&lt;/b&gt; &lt;font color="#ca6500"&gt;&amp;lt;boost/function.hpp&amp;gt;&lt;/font&gt;

&lt;b&gt;&lt;font color="#0000ff"&gt;template&lt;/font&gt;&lt;/b&gt;&lt;font color="#000080"&gt;&amp;lt;&lt;/font&gt;&lt;b&gt;&lt;font color="#0000ff"&gt;typename&lt;/font&gt;&lt;/b&gt; &lt;font color="#400040"&gt;T&lt;/font&gt;&lt;font color="#000080"&gt;&amp;gt;&lt;/font&gt;
&lt;b&gt;&lt;font color="#0000ff"&gt;static&lt;/font&gt;&lt;/b&gt; &lt;b&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/b&gt; &lt;font color="#400040"&gt;fn&lt;/font&gt;&lt;font color="#000080"&gt;(&lt;/font&gt;&lt;b&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;/b&gt; &lt;font color="#400040"&gt;a&lt;/font&gt;&lt;font color="#000080"&gt;,&lt;/font&gt; &lt;b&gt;&lt;font color="#0000ff"&gt;float&lt;/font&gt;&lt;/b&gt; &lt;font color="#400040"&gt;f&lt;/font&gt;&lt;font color="#000080"&gt;,&lt;/font&gt; &lt;b&gt;&lt;font color="#0000ff"&gt;char&lt;/font&gt;&lt;/b&gt; &lt;font color="#400040"&gt;c&lt;/font&gt;&lt;font color="#000080"&gt;)&lt;/font&gt;
&lt;font color="#000080"&gt;{&lt;/font&gt;
    &lt;font color="#400040"&gt;std&lt;/font&gt;&lt;font color="#000080"&gt;::&lt;/font&gt;&lt;font color="#400040"&gt;cout&lt;/font&gt; &lt;font color="#000080"&gt;&amp;lt;&amp;lt;&lt;/font&gt; &lt;font color="#ca6500"&gt;"a="&lt;/font&gt; &lt;font color="#000080"&gt;&amp;lt;&amp;lt;&lt;/font&gt; &lt;font color="#400040"&gt;a&lt;/font&gt; &lt;font color="#000080"&gt;&amp;lt;&amp;lt;&lt;/font&gt; &lt;font color="#ca6500"&gt;"; f="&lt;/font&gt; &lt;font color="#000080"&gt;&amp;lt;&amp;lt;&lt;/font&gt; &lt;font color="#400040"&gt;f&lt;/font&gt; &lt;font color="#000080"&gt;&amp;lt;&amp;lt;&lt;/font&gt; &lt;font color="#ca6500"&gt;"; c="&lt;/font&gt; &lt;font color="#000080"&gt;&amp;lt;&amp;lt;&lt;/font&gt; &lt;font color="#400040"&gt;c&lt;/font&gt; &lt;font color="#000080"&gt;&amp;lt;&amp;lt;&lt;/font&gt; &lt;font color="#ca6500"&gt;"&lt;/font&gt;&lt;b&gt;&lt;font color="#ca6500" style="background-color: #ffc8c8"&gt;\n&lt;/font&gt;&lt;/b&gt;&lt;font color="#ca6500"&gt;"&lt;/font&gt;&lt;font color="#000080"&gt;;&lt;/font&gt;
&lt;font color="#000080"&gt;}&lt;/font&gt;

&lt;b&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;/b&gt; &lt;font color="#400040"&gt;_tmain&lt;/font&gt;&lt;font color="#000080"&gt;(&lt;/font&gt;&lt;b&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;/b&gt; &lt;font color="#400040"&gt;argc&lt;/font&gt;&lt;font color="#000080"&gt;,&lt;/font&gt; &lt;font color="#400040"&gt;_TCHAR&lt;/font&gt;&lt;font color="#000080"&gt;*&lt;/font&gt; &lt;font color="#400040"&gt;argv&lt;/font&gt;&lt;font color="#000080"&gt;[])&lt;/font&gt;
&lt;font color="#000080"&gt;{&lt;/font&gt;
    &lt;font color="#400040"&gt;boost&lt;/font&gt;&lt;font color="#000080"&gt;::&lt;/font&gt;&lt;font color="#400040"&gt;function&lt;/font&gt;&lt;font color="#000080"&gt;&amp;lt;&lt;/font&gt;&lt;b&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/b&gt; &lt;font color="#000080"&gt;(&lt;/font&gt;&lt;b&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;/b&gt;&lt;font color="#000080"&gt;,&lt;/font&gt;&lt;b&gt;&lt;font color="#0000ff"&gt;float&lt;/font&gt;&lt;/b&gt;&lt;font color="#000080"&gt;,&lt;/font&gt;&lt;b&gt;&lt;font color="#0000ff"&gt;char&lt;/font&gt;&lt;/b&gt;&lt;font color="#000080"&gt;)&amp;gt;&lt;/font&gt; &lt;font color="#400040"&gt;fn1&lt;/font&gt; &lt;font color="#000080"&gt;=&lt;/font&gt; &lt;font color="#400040"&gt;boost&lt;/font&gt;&lt;font color="#000080"&gt;::&lt;/font&gt;&lt;font color="#400040"&gt;bind&lt;/font&gt;&lt;font color="#000080"&gt;(&amp;amp;&lt;/font&gt;&lt;font color="#400040"&gt;fn&lt;/font&gt;&lt;font color="#000080"&gt;&amp;lt;&lt;/font&gt;&lt;b&gt;&lt;font color="#0000ff"&gt;char&lt;/font&gt;&lt;/b&gt;&lt;font color="#000080"&gt;&amp;gt;,&lt;/font&gt;&lt;font color="#400040"&gt;_1&lt;/font&gt;&lt;font color="#000080"&gt;,&lt;/font&gt;&lt;font color="#400040"&gt;_2&lt;/font&gt;&lt;font color="#000080"&gt;,&lt;/font&gt;&lt;font color="#400040"&gt;_3&lt;/font&gt;&lt;font color="#000080"&gt;);&lt;/font&gt;
    &lt;font color="#400040"&gt;fn1&lt;/font&gt;&lt;font color="#000080"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;123&lt;/font&gt;&lt;font color="#000080"&gt;,&lt;/font&gt;&lt;font color="#800080"&gt;1.23&lt;/font&gt;&lt;b&gt;&lt;font color="#800080"&gt;f&lt;/font&gt;&lt;/b&gt;&lt;font color="#000080"&gt;,&lt;/font&gt;&lt;font color="#ca6500"&gt;'O'&lt;/font&gt;&lt;font color="#000080"&gt;);&lt;/font&gt;

    &lt;b&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/b&gt; &lt;b&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;/b&gt;&lt;font color="#000080"&gt;;&lt;/font&gt;
&lt;font color="#000080"&gt;}&lt;/font&gt;
&lt;/font&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="right"&gt;&lt;b&gt;&lt;i&gt;&lt;a href="http://dobrokot.nm.ru/WinnieColorizer.html"&gt;&lt;font color="#7f7f7f"&gt;_Winnie C++ Colorizer&lt;/font&gt;&lt;/a&gt;&lt;/i&gt;&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Если сделать функцию нешаблонной или нестатической, то все работает. В VC++ 8.0 также все работает. Если убрать boost::bind, то тоже все работает.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:14807</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/14807.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=14807"/>
    <title>Снова о D</title>
    <published>2007-02-12T06:47:57Z</published>
    <updated>2007-02-12T06:47:57Z</updated>
    <content type="html">&lt;pre&gt;
FILE *f = fopen("myfile.txt","r");
scope(exit) fclose(f);
&lt;/pre&gt;&lt;br /&gt;Жаль, что такая конструкция была изобретена лишь недавно... и только в языке D.&lt;br /&gt;/me думает, что скоро очень многие плавненько C++ будут подменять на D.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:14548</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/14548.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=14548"/>
    <title>Гусары, молчать!</title>
    <published>2007-02-11T05:32:13Z</published>
    <updated>2007-02-11T05:32:13Z</updated>
    <content type="html">&lt;a href="http://www.gamedev.ru/code/forum/?id=61182"&gt;http://www.gamedev.ru/code/forum/?id=61182&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:14324</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/14324.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=14324"/>
    <title>D как название языка программирования</title>
    <published>2007-02-08T14:46:14Z</published>
    <updated>2007-02-08T14:47:21Z</updated>
    <content type="html">Разве нельзя было придумать что-нибудь более оригинальное, чем D, чтобы при поиске в гугле на тебя не вываливалась тонна не относящегося к предмету поиска хлама?&lt;br /&gt;Информацию по, скажем, Haskell, искать в разы приятнее :).</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:13854</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/13854.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=13854"/>
    <title>КРИ '07</title>
    <published>2007-01-29T05:56:44Z</published>
    <updated>2007-01-29T05:56:44Z</updated>
    <content type="html">КРИ 2007 — отказать.&lt;br /&gt; Ибо попало оно на пост строгий и Праздник Великий.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:13439</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/13439.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=13439"/>
    <title>Оборотни</title>
    <published>2007-01-13T10:31:02Z</published>
    <updated>2007-01-13T10:33:11Z</updated>
    <content type="html">Оборотней убить нельзя, так как нет серебряной пули. Но можно &lt;b&gt;очень&lt;/b&gt; сильно покалечить :). Оставить процентов 10-20 хелса.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:13068</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/13068.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=13068"/>
    <title>Бинарная сериализация в Haskell</title>
    <published>2007-01-13T09:31:53Z</published>
    <updated>2007-01-13T09:31:53Z</updated>
    <category term="haskell"/>
    <content type="html">Судя по summary на странице &lt;a href="http://www.haskell.org/haskellwiki/Hac_2007/GroupPhoto"&gt;http://www.haskell.org/haskellwiki/Hac_2007/GroupPhoto&lt;/a&gt;, основной проблемой haskell является бинарный ввод/вывод.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:12826</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/12826.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=12826"/>
    <title>Мышка</title>
    <published>2006-11-22T06:23:07Z</published>
    <updated>2006-11-23T08:24:50Z</updated>
    <content type="html">Четыре таких мышки я вчера утром поймал на кухне своей квартиры в период с 5:00 до 7:00. На видео под катом находится четвертая мышь, которую после создания видео я умертвил метким ударом своего зимнего ботинка в голову.&lt;br /&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;div class="ljcut" text="Видео..."&gt;&lt;br /&gt;
&lt;object width="320" height="240"&gt;
    &lt;param name="movie" value="http://video.google.com/googleplayer.swf?docId=8793974428330066934&amp;amp;hl=en"&gt;&lt;/param&gt;
    
    &lt;embed src="http://video.google.com/googleplayer.swf?docId=8793974428330066934&amp;amp;hl=en" type="application/x-shockwave-flash" width="320" height="240"   allowScriptAccess="never"&gt;&lt;/embed&gt;
&lt;/object&gt;
     &lt;br /&gt;  &lt;br /&gt;В прошлом году, за всю осень поймал всего три. А тут -- редкая "удача" :). Первые три мышки копошились в мусорном ведре, когда я к этому ведру подошел. Четвертая, видимо, на эту сходку опоздала, поэтому была выловлена персонально, 20-тью минутами позже.&lt;br /&gt;&lt;br /&gt;В ходе разборок с мышами были использованы: руки - 2 шт., ботинок зимний левый - 1 шт., пакет для мусора, прочный - 3 шт.&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:12632</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/12632.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=12632"/>
    <title>Они сделали это! Теперь я верю в Mozilla!</title>
    <published>2006-10-16T13:08:13Z</published>
    <updated>2006-10-16T13:08:13Z</updated>
    <content type="html">Спустя 3 года (и 16 дней) наконец-то пофиксили самый надоедливый баг Gecko-based продуктов (Firefox, Thunderbird, etc).&lt;br /&gt;&lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=220900"&gt;https://bugzilla.mozilla.org/show_bug.cgi?id=220900&lt;/a&gt;. Шампанское, господа!</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:12445</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/12445.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=12445"/>
    <title>Coding Conventions: Make Them Agile</title>
    <published>2006-10-02T07:30:19Z</published>
    <updated>2006-10-02T07:30:19Z</updated>
    <content type="html">&lt;a href="http://www.testdriven.com/modules/mylinks/singlelink.php?cid=7&amp;amp;lid=1203"&gt;http://www.testdriven.com/modules/mylinks/singlelink.php?cid=7&amp;amp;lid=1203&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:11943</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/11943.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=11943"/>
    <title>Про UltraEdit</title>
    <published>2006-09-25T05:58:30Z</published>
    <updated>2006-09-25T08:23:38Z</updated>
    <content type="html">Снес на ноутбуке UltraEdit после того, как он в UTF-8 режиме между CR и LF умудрился навставлять символов. Почему меня никак не покидает ощущение того, что UltraEdit сделан из того, что не тонет?&lt;br /&gt;PS Уж лучше notepad, он хотя бы исходники не портит!&lt;br /&gt;PPS А еще, он внутренне конвертирует UTF-8 в UTF-16 и не парится при этом с hex mode, отображает тупо по 2 байта на символ.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:11687</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/11687.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=11687"/>
    <title>Test-driven для шейдеров</title>
    <published>2006-09-20T13:24:13Z</published>
    <updated>2006-09-20T13:24:13Z</updated>
    <content type="html">&lt;a href="http://www.haskell.org/haskellwiki/Haskell"&gt;&lt;/a&gt;&lt;a href="http://www.tilander.org/aurora/articles/000021.html"&gt;http://www.tilander.org/aurora/articles/000021.html&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:11274</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/11274.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=11274"/>
    <title>ICFPC</title>
    <published>2006-07-31T08:45:49Z</published>
    <updated>2006-07-31T08:45:49Z</updated>
    <content type="html">Вот, прошло по френдленте &lt;a href="http://users.livejournal.com/_adept_/24049.html"&gt;описание ICFPC&lt;/a&gt;. Оказываются есть такие, безумно интересные контесты. Я не считаю себя функциональщиком, но решением задач контеста я занимался все прошедшие выходные (решил пока, конечно, не все). Даже задумался, а не поучаствовать ли в этом контесте в следующем году?...&lt;br /&gt;via &lt;span class='ljuser' lj:user='_adept_' style='white-space: nowrap;'&gt;&lt;a href='http://users.livejournal.com/_adept_/profile'&gt;&lt;img src='http://p-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://users.livejournal.com/_adept_/'&gt;&lt;b&gt;_adept_&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:11246</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/11246.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=11246"/>
    <title>Генератор текста по грамматике</title>
    <published>2006-07-11T04:31:26Z</published>
    <updated>2006-07-31T06:51:41Z</updated>
    <content type="html">&lt;a href="http://www.monkeys.com/m4r/"&gt;http://www.monkeys.com/m4r/&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:_gvozdoder_:10810</id>
    <link rel="alternate" type="text/html" href="http://users.livejournal.com/_gvozdoder_/10810.html"/>
    <link rel="self" type="text/xml" href="http://users.livejournal.com/_gvozdoder_/data/atom/?itemid=10810"/>
    <title>Как убить время</title>
    <published>2006-07-10T08:20:33Z</published>
    <updated>2006-07-31T06:51:56Z</updated>
    <content type="html">Сочинение на тему "Как с помощью boost убить машинное время" :)&lt;br /&gt;Эксперименты на моем лаптопе показали, что:&lt;br /&gt;
&lt;ul&gt;
    &lt;li&gt;Добавление заголовочного файла &amp;lt;boost/variant.hpp&amp;gt; в precompiled header увеличивает время чтения .pch-файла на 5 миллисекунд. Т. е. эту цифру смело добавляем к времени компиляции каждого файла.&lt;/li&gt;
    &lt;li&gt;Включение &amp;lt;boost/variant.hpp&amp;gt; увеличивает время лукапа символа (такого как, например, size_t), для которого не указано пространство имен, в 5 раз (с 2 до 10 мкс). В случае использования шаблонов из boost, количество лукапов, по моей оценке, начинает зашкаливать за десятки тысяч.&lt;/li&gt;
&lt;/ul&gt;</content>
  </entry>
</feed>
