<?xml version='1.0' encoding='utf-8' ?>

<rss version='2.0' xmlns:lj='http://www.livejournal.org/rss/lj/1.0/' xmlns:atom10='http://www.w3.org/2005/Atom'>
<channel>
  <title>Пятнадцать байтов на стек от конца</title>
  <link>https://vak.dreamwidth.org/</link>
  <description>Пятнадцать байтов на стек от конца - Dreamwidth Studios</description>
  <lastBuildDate>Tue, 26 May 2026 06:03:24 GMT</lastBuildDate>
  <generator>LiveJournal / Dreamwidth Studios</generator>
  <lj:journal>vak</lj:journal>
  <lj:journaltype>personal</lj:journaltype>
  <image>
    <url>https://v2.dreamwidth.org/10859949/2601916</url>
    <title>Пятнадцать байтов на стек от конца</title>
    <link>https://vak.dreamwidth.org/</link>
    <width>50</width>
    <height>47</height>
  </image>

<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1548506.html</guid>
  <pubDate>Tue, 26 May 2026 06:03:24 GMT</pubDate>
  <title>Процессор i386 сделай сам</title>
  <link>https://vak.dreamwidth.org/1548506.html</link>
  <description>Я подумал: раз уж у нас имеется &lt;a href=&quot;https://github.com/dbalsom/x86_microcode/tree/main/80386&quot;&gt;аутентичный микрокод процессора i386&lt;/a&gt;, и даже построенные на нём &lt;a href=&quot;https://github.com/nand2mario/z386&quot;&gt;Верилоговские исходники для FPGA&lt;/a&gt;, не соорудить ли из этого богатства качественный симулятор? &lt;br /&gt;&lt;br /&gt;Сделал детальный план разработки, разбитый на 14 последовательных шагов. Дал задание двум разным ИИ (Claude Code и Cursor) создать по этому плану симулятор i386. Независимо друг от друга, в разных бранчах. Поглядим, у кого лучше выйдет.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1548506&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1548506.html</comments>
  <category>искусственный интеллект</category>
  <category>компьютерная археология</category>
  <lj:security>public</lj:security>
  <lj:reply-count>2</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1548099.html</guid>
  <pubDate>Sun, 24 May 2026 07:53:33 GMT</pubDate>
  <title>Если бы Декарт, Маркс, Хайдеггер и Витгенштейн были программистами</title>
  <link>https://vak.dreamwidth.org/1548099.html</link>
  <description>Набрёл на фрагмент книги Алистера Кокбурна про разработку софта (&lt;a href=&quot;https://gwern.net/doc/cs/algorithm/1985-naur.pdf&quot;&gt;1985-naur.pdf&lt;/a&gt;). &lt;blockquote&gt;В книге &amp;quot;&lt;a href=&quot;https://www.researchgate.net/publication/273337040_Work-Oriented_Design_of_Computer_Artifacts&quot;&gt;Work-Oriented Development of Software Artifacts&lt;/a&gt;&amp;quot; (1988) Pelle Ehn описывает серию проектов, исследовавших способы сделать программное обеспечение более соответствующим своему конечному применению, более удобным в использовании и создаваемым совместно программистами и конечными пользователями.&lt;br /&gt;&lt;br /&gt;Для меня высшей точкой этой книги является то, как он рассматривает разработку программного обеспечения в контексте четырёх философов: Ren&amp;eacute; Descartes, Karl Marx, Martin Heidegger и Ludwig Wittgenstein.&lt;br /&gt;&lt;br /&gt;Человек, работающий в стиле &lt;span style=&quot;color: rgb(51, 153, 102);&quot;&gt;&lt;em&gt;&lt;strong&gt;Декарта&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;, мыслит внешнюю реальность как нечто достойное описания и направляет свои усилия на её фиксацию. Поэтому его интересует, насколько требования, модели и код соответствуют реальности. Этот картезианский подход заполнял первое полувековье нашей области.&lt;br /&gt;&lt;br /&gt;Человек, работающий в стиле &lt;span style=&quot;color: rgb(51, 153, 102);&quot;&gt;&lt;em&gt;&lt;strong&gt;Маркса&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;, прежде всего спрашивает: &amp;laquo;Кому выгодна эта новая система? Как её внедрение изменяет структуру социальной власти?&amp;raquo; Это осмысленный вопрос, независимо от того, нравятся вам политические теории Маркса или нет.&lt;br /&gt;&lt;br /&gt;Человек, работающий в стиле &lt;span style=&quot;color: rgb(51, 153, 102);&quot;&gt;&lt;em&gt;&lt;strong&gt;Хайдеггера&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;, рассматривает систему с точки зрения её эффективности как инструмента. В идеале пользователь вообще не должен &amp;laquo;видеть&amp;raquo; систему. Он должен видеть сквозь систему саму выполняемую задачу. Например, когда я печатаю документ, я вижу страницу, заполняющуюся текстом; я не &amp;laquo;вижу&amp;raquo; текстовый процессор. Опытный пианист видит создаваемую музыку, а не фортепиано; хороший плотник видит гвоздь, входящий в дерево, а не молоток. Подход Хайдеггера к оценке помогает нам создавать системы, более пригодные к использованию.&lt;br /&gt;&lt;br /&gt;И только стиль &lt;span style=&quot;color: rgb(51, 153, 102);&quot;&gt;&lt;em&gt;&lt;strong&gt;Витгенштейна&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt; противопоставляется стилю Декарта. Человек, работающий в этом стиле, рассматривает развитие программного дизайна как разворачивание языковой игры, в которой со временем в язык добавляются новые слова.&lt;br /&gt;&lt;br /&gt;Это сразу связывает разработку программного обеспечения с кооперативной игрой изобретения и коммуникации. Вероятно, значительной частью своей модели кооперативной игры я обязан работам Эна. За годы до того, как я разработал идею кооперативной игры, я прочитал и забыл следующую статью. Когда я начал писать эту книгу, я снова её перечитал и был поражён тем, насколько многие мои формулировки перекликались с формулировками Эна.&lt;br /&gt;&lt;br /&gt;Эна интересует построение общего опыта через совместную практику, использование самой практики как непосредственной основы для выявления потребностей. Иными словами, он работает с неявным знанием. Более того, он подчёркивает роль мастерства в осуществлении практик (интересно читать слова Miyamoto Musashi, указывающие почти на то же самое). Хотя я и упоминал тему мастерства, Эн развивает её гораздо более глубоко и полно.&lt;br /&gt;&lt;/blockquote&gt;Там ещё есть от Питера Наура, про программирование как строительство теории. И от Миямото Мусаши, самурая 17-го века, не знавшего поражений.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1548099&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1548099.html</comments>
  <category>программистское</category>
  <lj:security>public</lj:security>
  <lj:reply-count>8</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1547992.html</guid>
  <pubDate>Sun, 24 May 2026 00:32:13 GMT</pubDate>
  <title>besmc как унивверсальный компилятор</title>
  <link>https://vak.dreamwidth.org/1547992.html</link>
  <description>Есть у нас в коллекции ретрокомпьютерных тулов такая штука как&amp;nbsp;&lt;a href=&quot;https://github.com/besm6/besmc&quot;&gt;besmc&lt;/a&gt;. С её помощью можно программировать на БЭСМ-6 на разных языках программирования (и их смеси). Фактически это фронтэнд ко всем имеющимся компиляторам, ассемблерам, линкеру и симулятору. Для besmc&amp;nbsp;надо также установить симулятор &lt;a href=&quot;https://github.com/besm6/dubna/&quot;&gt;dubna&lt;/a&gt;. Подробности читайте в &lt;a href=&quot;https://github.com/besm6/besmc/blob/main/README.md&quot;&gt;README&lt;/a&gt;. &lt;br /&gt; &lt;br /&gt;К примеру, компилируем и выполняем программу на Паскале:&lt;blockquote&gt;&lt;pre&gt;
$ cat hello.pascal &lt;br /&gt;program main(output);&lt;br /&gt;_(&lt;br /&gt;    writeln(&apos;Hello, Pascal!&apos;);&lt;br /&gt;_).&lt;br /&gt;$ besmc hello.pascal &lt;br /&gt;$ ./hello.exe &lt;br /&gt;HELLO, PASCAL!&lt;br /&gt;&lt;/pre&gt;&lt;/blockquote&gt;Или пусть главная программа будет на Паскале, а подпрограмма на Фортране:&lt;blockquote&gt;&lt;pre&gt;
$ cat caller.pascal &lt;br /&gt;program main (output);&lt;br /&gt;procedure hello; fortran;&lt;br /&gt;_(&lt;br /&gt;    hello;&lt;br /&gt;_).&lt;br /&gt;$ cat callee.ftn &lt;br /&gt;        subroutine hello&lt;br /&gt;        print 1000&lt;br /&gt; 1000   format(&apos;Hello Fortran from Pascal!&apos;)&lt;br /&gt;        end&lt;br /&gt;$ besmc caller.pascal callee.ftn -o example&lt;br /&gt;$ ./example.exe &lt;br /&gt;HELLO FORTRAN FROM PASCAL!&lt;br /&gt;&lt;/pre&gt;&lt;/blockquote&gt;Есть куча примеров на разных языках: смотрите &lt;a href=&quot;https://github.com/besm6/besmc/blob/main/examples/README.md&quot;&gt;examples/README.md&lt;/a&gt;. Список примеров: &lt;ul&gt;&lt;li&gt;Pascal &amp;mdash; `hello.pascal`&lt;/li&gt;&lt;li&gt;Pascal-re &amp;mdash; `hello.pas`&lt;/li&gt;&lt;li&gt;Algol-ГДP &amp;mdash; `hello.algol`&lt;/li&gt;&lt;li&gt;Fortran-ГДP &amp;mdash; `hello.ftn`&lt;/li&gt;&lt;li&gt;Fortran Dubna &amp;mdash; `hello.fortran`&lt;/li&gt;&lt;li&gt;Forex &amp;mdash; `hello.forex`&lt;/li&gt;&lt;li&gt;Assembler Madlen &amp;mdash; `hello.assem`&lt;/li&gt;&lt;li&gt;Assembler Madlen-3.5 &amp;mdash; `hello.madlen`&lt;/li&gt;&lt;li&gt;Assembler БЕМШ &amp;mdash; `hello.bemsh`&lt;/li&gt;&lt;li&gt;B language &amp;mdash; `hello.b`&lt;/li&gt;&lt;li&gt;Object modules &amp;mdash; `stdarray.std`&lt;/li&gt;&lt;li&gt;Mixed-language: Pascal calling Fortran &amp;mdash; `caller.pascal` + `callee.ftn`&lt;/li&gt;&lt;/ul&gt;Да, а собственно новость в том, что утилита besmc теперь поддерживает &lt;a href=&quot;https://en.wikipedia.org/wiki/B_(programming_language)&quot;&gt;язык программирования Би&lt;/a&gt;:&lt;blockquote&gt;&lt;pre&gt;
$ cat hello.b &lt;br /&gt;main() {&lt;br /&gt;    printf(&amp;quot;Hello, B!*n&amp;quot;);&lt;br /&gt;}&lt;br /&gt;$ besmc hello.b&lt;br /&gt;$ ./hello.exe &lt;br /&gt;HELLO, B!&lt;br /&gt;&lt;/pre&gt;&lt;/blockquote&gt;Примеры интересных программ на Би можно глянуть здесь: &lt;a href=&quot;https://github.com/besm6/dubna/tree/main/examples/b&quot;&gt;examples/b&lt;/a&gt;.&lt;p&gt;Исторически языка Би на БЭСМ-6 не было. Это уже современная доделка. Хотя уже тогда ничто не мешало. Просто ни в Дубне, ни в ИТМиВТ не знали про язык Би.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1547992&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1547992.html</comments>
  <category>бэсм-6</category>
  <category>компьютерная археология</category>
  <lj:security>public</lj:security>
  <lj:reply-count>4</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1547721.html</guid>
  <pubDate>Sat, 23 May 2026 22:44:50 GMT</pubDate>
  <title>Си-программисту про setjmp/longjmp</title>
  <link>https://vak.dreamwidth.org/1547721.html</link>
  <description>Пока Дейкстра ругался на оператор goto (1968), Martin Richards изобрёл (в языке BCPL, 1967) механизм нелокальных переходов &lt;tt&gt;longjmp&lt;/tt&gt;. Кен Томпсон и Деннис Ритчи встроили это дело сначала в язык Би, потом в Си. Идея прижилась, позже превратившись в &lt;tt&gt;try/catch&lt;/tt&gt; в Си++.&lt;br /&gt;&lt;br /&gt;Нелокальные переходы штука полезная в умелых руках. Иногда без неё не обойтись. Там есть куча подводных камней. Мне когда-то приходилось реализовывать &lt;tt&gt;setjmp/longjmp&lt;/tt&gt; на разных архитектурах. Уже подзабылось маленько. Может кто и описал это дело в книжках, но где ж те книжки отыщешь. Благо имеем ИИ, можно спросить.&lt;br /&gt;&lt;br /&gt;Вот статья с хорошим изложением темы от Клода: &amp;quot;&lt;a href=&quot;https://github.com/sergev/vak-opensource/blob/master/languages/c-language/setjmp_longjmp.md&quot;&gt;Non-Local Jumps in C: Understanding setjmp and longjmp&lt;/a&gt;&amp;quot;&lt;br /&gt;&lt;br /&gt;Целевая аудитория: программисты на C, знакомые с функциями, указателями и стеком вызовов, но ещё не сталкивавшиеся с нелокальным управлением потоком выполнения.&lt;br /&gt;&lt;br /&gt;Цель: сформировать чёткое представление о том, как работают &lt;tt&gt;setjmp/longjmp&lt;/tt&gt;, когда их следует использовать и — что не менее важно — когда их следует избегать.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1547721&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1547721.html</comments>
  <category>программистское</category>
  <lj:security>public</lj:security>
  <lj:reply-count>12</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1547340.html</guid>
  <pubDate>Fri, 22 May 2026 06:10:09 GMT</pubDate>
  <title>&quot;Где сейчас хуйло?&quot;</title>
  <link>https://vak.dreamwidth.org/1547340.html</link>
  <description>Дай, думаю, спрошу у Грока. Неестественный разум не подкачал.&lt;blockquote&gt;Вернулся вчера/сегодня из Пекина после визита к Си (19&amp;ndash;20 мая). Сейчас работает в столице, по данным Кремля и Пескова.&lt;br /&gt;&lt;br /&gt;Обычно он либо в Кремле/Новом Огарёво, либо прячется в бункерах/резиденциях, но по последним новостям &amp;mdash; в Москве.&lt;/blockquote&gt;&lt;a href=&quot;https://grok.com/share/bGVnYWN5LWNvcHk_3f824a99-07e3-438a-9589-a24731f35751&quot;&gt;grok.com/share/bGVnYWN5LWNvcHk_3f824a99-07e3-438a-9589-a24731f35751&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1547340&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1547340.html</comments>
  <category>политика</category>
  <category>хохмы</category>
  <lj:security>public</lj:security>
  <lj:reply-count>9</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1547144.html</guid>
  <pubDate>Thu, 21 May 2026 21:53:05 GMT</pubDate>
  <title>Что такое физический интеллект</title>
  <link>https://vak.dreamwidth.org/1547144.html</link>
  <description>Робот выгружает постиранную одежду из стиральной машины.&lt;br /&gt;&lt;br /&gt;&lt;video controls=&quot;&quot; src=&quot;https://website.pi-asset.com/v2/upload/lowres_processed2xspeed_unload_dryer_3.mp4&quot; width=&quot;480&quot; height=&quot;270&quot;&gt;&lt;/video&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;cut-wrapper&quot;&gt;&lt;span style=&quot;display: none;&quot; id=&quot;span-cuttag___1&quot; class=&quot;cuttag&quot;&gt;&lt;/span&gt;&lt;b class=&quot;cut-open&quot;&gt;(&amp;nbsp;&lt;/b&gt;&lt;b class=&quot;cut-text&quot;&gt;&lt;a href=&quot;https://vak.dreamwidth.org/1547144.html#cutid1&quot;&gt;+3&lt;/a&gt;&lt;/b&gt;&lt;b class=&quot;cut-close&quot;&gt;&amp;nbsp;)&lt;/b&gt;&lt;/span&gt;&lt;div style=&quot;display: none;&quot; id=&quot;div-cuttag___1&quot; aria-live=&quot;assertive&quot;&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Подробная статья: &lt;a href=&quot;https://bequiet-log.vercel.app/pi-review&quot;&gt;bequiet-log.vercel.app/pi-review&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1547144&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1547144.html</comments>
  <category>искусственный интеллект</category>
  <lj:security>public</lj:security>
  <lj:reply-count>9</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1546822.html</guid>
  <pubDate>Wed, 20 May 2026 18:55:26 GMT</pubDate>
  <title>Клавиатура как бы IBM PC</title>
  <link>https://vak.dreamwidth.org/1546822.html</link>
  <description>Редкая вещь: современная клавиатура, но сделанная по технологии оригинальной &lt;a href=&quot;https://en.wikipedia.org/wiki/Model_M_keyboard&quot;&gt;IBM Model M&lt;/a&gt;. Просят &lt;a href=&quot;https://www.pckeyboard.com/page/product/MINI_M&quot;&gt;$179&lt;/a&gt; плюс доставка. Вес полтора килограмма, как и положено.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://www.pckeyboard.com/page/product/MINI_M&quot;&gt;&lt;img src=&quot;https://vak.dreamwidth.org/file/2099660.jpg&quot; width=&quot;800&quot; height=&quot;533&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1546822&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1546822.html</comments>
  <category>компьютерное</category>
  <lj:security>public</lj:security>
  <lj:reply-count>16</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1546717.html</guid>
  <pubDate>Wed, 20 May 2026 08:21:24 GMT</pubDate>
  <title>Бэсмовский Си компилятор делает первые шаги</title>
  <link>https://vak.dreamwidth.org/1546717.html</link>
  <description>Компилируем пустую функцию.&lt;blockquote&gt;&lt;pre&gt;$ cat empty.c
void foo()
{
    // Empty
}

$ ./parse empty.c empty.ast

$ ./lower empty.ast empty.tac

$ backend/genbesm empty.tac empty.mad

$ cat empty.mad
c Module: foo
      foo:   ,name,
             ,its, 13
          13 ,vjm, c/save
             ,uj, c/ret
             ,end,
&lt;/pre&gt;&lt;/blockquote&gt;Исходник на Си превращается в AST, потом в TAC, и окончательно а автокод Мадлен.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1546717&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1546717.html</comments>
  <category>бэсм-6</category>
  <lj:security>public</lj:security>
  <lj:reply-count>7</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1546404.html</guid>
  <pubDate>Wed, 20 May 2026 07:01:57 GMT</pubDate>
  <title>Песенка от OpenBSD</title>
  <link>https://vak.dreamwidth.org/1546404.html</link>
  <description>По традиции с каждой новой версией OpenBSD выходит новая картинка и иногда стишок. Все их можно посмотреть на странице: &lt;a href=&quot;https://www.openbsd.org/lyrics.htm&quot;&gt;openbsd.org/lyrics.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;А почему бы не спеть это дело, подумалось мне, благо имеется suno.com. Вот что получилось для версии OpenBSD 7.3. Философская притча в стиле кантри.&lt;br /&gt;&lt;br /&gt;&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/0B-YpjSdtA4&quot; title=&quot;YouTube video player&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&quot; referrerpolicy=&quot;strict-origin-when-cross-origin&quot; allowfullscreen=&quot;allowfullscreen&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;Once there was a Wizard so old and wise&lt;br /&gt;that he asked Mother Night for a new enterprise&lt;br /&gt;falling asleep his wish was heard&lt;br /&gt;and by Merlin&apos;s beard&lt;br /&gt;what a strange world he entered&lt;br /&gt;&lt;span class=&quot;cut-wrapper&quot;&gt;&lt;span style=&quot;display: none;&quot; id=&quot;span-cuttag___1&quot; class=&quot;cuttag&quot;&gt;&lt;/span&gt;&lt;b class=&quot;cut-open&quot;&gt;(&amp;nbsp;&lt;/b&gt;&lt;b class=&quot;cut-text&quot;&gt;&lt;a href=&quot;https://vak.dreamwidth.org/1546404.html#cutid1&quot;&gt;дальше&lt;/a&gt;&lt;/b&gt;&lt;b class=&quot;cut-close&quot;&gt;&amp;nbsp;)&lt;/b&gt;&lt;/span&gt;&lt;div style=&quot;display: none;&quot; id=&quot;div-cuttag___1&quot; aria-live=&quot;assertive&quot;&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1546404&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1546404.html</comments>
  <category>музыка</category>
  <category>bsd</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1545865.html</guid>
  <pubDate>Wed, 20 May 2026 00:44:35 GMT</pubDate>
  <title>Перуанской музыки вам в ленту</title>
  <link>https://vak.dreamwidth.org/1545865.html</link>
  <description>&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/9UvQYtQea4o?si=BNSigzQ0W0n7zZlH&quot; title=&quot;YouTube video player&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&quot; referrerpolicy=&quot;strict-origin-when-cross-origin&quot; allowfullscreen=&quot;allowfullscreen&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;Эти твои глазки&lt;br /&gt;меня околдовали,&lt;br /&gt;твой сладкий взгляд,&lt;br /&gt;мама!..&lt;br /&gt;меня загипнотизировал.&lt;br /&gt;&lt;br /&gt;Эльса, Эльса...&lt;br /&gt;клянусь тебе, что люблю тебя,&lt;br /&gt;что без тебя я бы умер,&lt;br /&gt;если бы мне не хватало твоей любви.. (повтор)&lt;br /&gt;&lt;br /&gt;Эльса... ах, Эльса...&lt;br /&gt;ах, Эльса...&lt;br /&gt;снимай туфельку...&lt;br /&gt;я уже больше не могу!..&lt;br /&gt;(Пусть играет кумбия, чтобы танцевать &lt;br /&gt;с Эльсой!)&lt;br /&gt;&lt;br /&gt;Смотри, как красотка шла,&lt;br /&gt;песок тебя зовёт, и&lt;br /&gt;иди, иди-иди, иди... я уже не могу!&lt;br /&gt;(Пусть играет кумбия, чтобы танцевать &lt;br /&gt;с Эльсой!)&lt;br /&gt;&lt;br /&gt;Говоряяят... иди, смотри, иди-иди!&lt;br /&gt;Я уже не могу!!&lt;br /&gt;(Пусть играет кумбия, чтобы танцевать&lt;br /&gt;с Эльсой!)..&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1545865&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1545865.html</comments>
  <category>видео</category>
  <category>музыка</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1545698.html</guid>
  <pubDate>Mon, 18 May 2026 08:53:10 GMT</pubDate>
  <title>Что мы знаем о лисе? Ничего! И то - не все</title>
  <link>https://vak.dreamwidth.org/1545698.html</link>
  <description>Народ часто обвиняет язык Си в примитивности. Типа подумаешь: высокоуровневый ассемблер. Пока не столкнётся с правилами приведения типов. Мне пришлось потратить изрядные усилия, чтобы залудить это дело в компиляторе. Вот краткий конспект.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://github.com/besm6/c-compiler/blob/main/docs/Type_Coercion.md&quot;&gt;Type_Coercion.md&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1545698&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1545698.html</comments>
  <category>программистское</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1545369.html</guid>
  <pubDate>Mon, 18 May 2026 05:05:25 GMT</pubDate>
  <title>Что такое HLS</title>
  <link>https://vak.dreamwidth.org/1545369.html</link>
  <description>Это когда пишем код на Си++ и &lt;a href=&quot;https://en.wikipedia.org/wiki/High-level_synthesis&quot;&gt;превращаем его в чип&lt;/a&gt;. Только не всякий Си++ годится. Вот пример реализации числа с плавающей точкой для Siemens Catapult:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://github.com/sergev/floatnum&quot;&gt;github.com/sergev/floatnum&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1545369&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1545369.html</comments>
  <category>программистское</category>
  <category>электроника</category>
  <lj:security>public</lj:security>
  <lj:reply-count>5</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1545122.html</guid>
  <pubDate>Sat, 16 May 2026 02:44:39 GMT</pubDate>
  <title>Есть ли у вас план, мистер Фикс?</title>
  <link>https://vak.dreamwidth.org/1545122.html</link>
  <description>Вот &lt;a href=&quot;https://github.com/besm6/c-compiler/blob/bc6dd13321e78010df6efe7037a18b691451f30f/backend/besm6/TODO.md&quot;&gt;план разработки кодогенератора для БЭСМ-6&lt;/a&gt;. Не хухры-мухры между прочим: длиной 38 &lt;strike&gt;попугаев&lt;/strike&gt; шагов. Разбит на несколько фаз:&lt;ul&gt;&lt;li&gt;Phase A &amp;mdash; Infrastructure&lt;/li&gt;&lt;li&gt;Phase B &amp;mdash; Instruction Selection&lt;/li&gt;&lt;li&gt;Phase C &amp;mdash; Static Data&lt;/li&gt;&lt;li&gt;Phase D &amp;mdash; Runtime Support Library&lt;/li&gt;&lt;li&gt;Phase E &amp;mdash; Addressing and Basing&lt;/li&gt;&lt;li&gt;Phase F &amp;mdash; Integration and Testing&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/fNWYD4Lad0I?si=VQuwMSnxJu-pDcGh&quot; title=&quot;YouTube video player&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&quot; referrerpolicy=&quot;strict-origin-when-cross-origin&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1545122&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1545122.html</comments>
  <category>бэсм-6</category>
  <category>программистское</category>
  <lj:security>public</lj:security>
  <lj:reply-count>5</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1544943.html</guid>
  <pubDate>Fri, 15 May 2026 23:29:44 GMT</pubDate>
  <title>Калахи бывают разные</title>
  <link>https://vak.dreamwidth.org/1544943.html</link>
  <description>Навскидку надыбал несколько опенсорсных калахов. В основном минимакс с альфа-бета-отсечением, но есть и обучение с подкреплением.&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;https://github.com/CaganKiper/mancala-ai&quot;&gt;CaganKiper/mancala-ai&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://github.com/simonmoesorensen/KalahaAI&quot;&gt;simonmoesorensen/KalahaAI&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://github.com/psimatis/Mancala-AI&quot;&gt;psimatis/Mancala-AI&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://github.com/HarmoniaLeo/Mancala&quot;&gt;HarmoniaLeo/Mancala&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://github.com/bediger4000/kalah&quot;&gt;bediger4000/kalah&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1544943&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1544943.html</comments>
  <category>программистское</category>
  <category>компьютерные игры</category>
  <lj:security>public</lj:security>
  <lj:reply-count>1</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1544654.html</guid>
  <pubDate>Fri, 15 May 2026 19:42:26 GMT</pubDate>
  <title>Made in Leningrad</title>
  <link>https://vak.dreamwidth.org/1544654.html</link>
  <description>Всю жизнь Анатолия Ивановича Волкова преследовали каверзным вопросом: кто такая Мадлен и что за роман между ними случился?&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://github.com/besm6/c-compiler/blob/main/docs/Madlen.md&quot;&gt;Madlen: The BESM-6 Autocode Assembler&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1544654&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1544654.html</comments>
  <category>хохмы</category>
  <category>бэсм-6</category>
  <category>программистское</category>
  <lj:security>public</lj:security>
  <lj:reply-count>3</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1544245.html</guid>
  <pubDate>Fri, 15 May 2026 08:08:24 GMT</pubDate>
  <title>Документирую компилятор и его компоненты</title>
  <link>https://vak.dreamwidth.org/1544245.html</link>
  <description>&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;https://github.com/besm6/c-compiler/blob/main/docs/C_Grammar.md&quot;&gt;C Grammar Reference&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://github.com/besm6/c-compiler/blob/main/docs/Memory_Allocation.md&quot;&gt;Memory Allocation in the C Compiler&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://github.com/besm6/c-compiler/blob/main/docs/String_Map.md&quot;&gt;String Map&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://github.com/besm6/c-compiler/blob/main/docs/Word_Oriented_IO.md&quot;&gt;Word-Oriented I/O&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://github.com/besm6/c-compiler/blob/main/docs/Technical_Reference.md&quot;&gt;Technical reference: BESM-6 C compiler&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1544245&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1544245.html</comments>
  <category>программистское</category>
  <lj:security>public</lj:security>
  <lj:reply-count>5</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1544172.html</guid>
  <pubDate>Thu, 14 May 2026 19:47:30 GMT</pubDate>
  <title>Разработчики ПО признают, что ИИ «разлагает» их мозги</title>
  <link>https://vak.dreamwidth.org/1544172.html</link>
  <description>(&lt;a href=&quot;https://tech.yahoo.com/articles/software-developers-admit-ai-rotting-155500689.html&quot;&gt;отсюда&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;Пока руководители Google хвастаются тем, что 75% их кода генерируется ИИ, разработчики по всей Кремниевой долине тихо наблюдают, как их фундаментальные навыки программирования постепенно атрофируются. Разрыв между восторгом топ-менеджмента и раздражением &amp;laquo;на земле&amp;raquo; показывает тревожную картину того, как индустрия подходит к внедрению ИИ.&lt;br /&gt;&lt;h3&gt;Цифры не показывают всей истории&lt;/h3&gt;Корпоративные метрики скрывают растущий кризис технического долга под поверхностью.&lt;br /&gt;&lt;br /&gt;Заявление Google о 75% кода, написанного ИИ, прозвучало одновременно с прогнозом Microsoft, что к 2030 году 95% их кода будет создаваться ИИ. Meta и Anthropic сообщают о схожих внутренних показателях использования &amp;mdash; свыше 90%. Эти цифры удобно оправдывают недавние увольнения: Meta сократила 10% сотрудников, а Microsoft продвигала программы добровольного ухода, затронувшие тысячи работников.&lt;br /&gt;&lt;br /&gt;Посыл ясен: если ИИ заменяет человеческий труд, значит можно сокращать и число сотрудников. Но сами разработчики рассказывают другую историю. Многие сообщают, что использование ИИ-инструментов стало обязательным и даже влияет на оценку их работы, а команды реорганизуют в так называемые &amp;laquo;AI-поды&amp;raquo;, которые больше похожи на показуху, чем на реальный рост производительности.&lt;br /&gt;&lt;br /&gt;Первоначальный энтузиазм сменился раздражением: pull request&amp;rsquo;ы на тысячу строк, сгенерированные ИИ, превращают ревью кода в кошмар, пожирающий целые вечера. Ограничения на количество токенов прерывают работу посреди задачи, а разбор &amp;laquo;крысиных гнёзд&amp;raquo; из ИИ-кода требует как раз той самой экспертизы, которую компании утверждают, будто ИИ способен заменить.&lt;br /&gt;&lt;h3&gt;Скрытая цена когнитивной разгрузки&lt;/h3&gt;Исследования подтверждают то, что разработчики и так уже подозревали относительно деградации своих навыков.&lt;br /&gt;&lt;br /&gt;И вот здесь становится по-настоящему тревожно: исследования Anthropic показывают, что &lt;span style=&quot;color: rgb(51, 153, 102);&quot;&gt;&lt;em&gt;&lt;strong&gt;помощь ИИ приводит к статистически значимому снижению уровня мастерства программистов&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;. Разработчики начинают забывать базовые API, теряют ментальные модели своих кодовых баз и испытывают трудности с навигацией по сложным системам без &amp;laquo;костылей&amp;raquo; в виде ИИ.&lt;br /&gt;&lt;br /&gt;Младшие разработчики приходят на работу, умея писать запросы для ChatGPT, но не способны отладить простой цикл. Знаете это неприятное чувство, когда Netflix зависает посреди просмотра? Примерно так же чувствуют себя разработчики, сталкиваясь с ИИ-сгенерированным кодом, который ломается в продакшене &amp;mdash; кодом, который они не могут починить, потому что уже передали своё мышление на аутсорс ИИ.&lt;br /&gt;&lt;h3&gt;Поиск баланса&lt;/h3&gt;Индустрии нужна устойчивая интеграция ИИ, а не показательное его внедрение.&lt;br /&gt;&lt;br /&gt;ИИ-инструменты отлично подходят для прототипирования и работы в незнакомых областях. Согласно исследованию Morgan Stanley, в конечном итоге ИИ приведёт к росту занятости благодаря повышению производительности. Проблема не в самой помощи ИИ &amp;mdash; проблема в демонстративном злоупотреблении им, продиктованном распоряжениями руководства, а не практической пользой.&lt;br /&gt;&lt;br /&gt;Индустрии нужен момент отрезвления. Пока компании не научатся отличать полезное усиление человеческих возможностей с помощью ИИ от полной замены человеческого мышления, разработчики будут продолжать наблюдать, как их ремесло деградирует, в то время как руководители празднуют показатели производительности, построенные на зыбучем песке.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1544172&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1544172.html</comments>
  <category>искусственный интеллект</category>
  <lj:security>public</lj:security>
  <lj:reply-count>41</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1543845.html</guid>
  <pubDate>Thu, 14 May 2026 04:59:17 GMT</pubDate>
  <title>Система команд БЭСМ-6</title>
  <link>https://vak.dreamwidth.org/1543845.html</link>
  <description>Я сделал описание системы команд БЭСМ-6, хвала &lt;strike&gt;всевышнему&lt;/strike&gt; ИИ. Покритикуйте пожалуйста.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://github.com/besm6/dubna/blob/main/doc/Besm6_Instruction_Set.md&quot;&gt;BESM-6 Instruction Set Reference&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1543845&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1543845.html</comments>
  <category>бэсм-6</category>
  <lj:security>public</lj:security>
  <lj:reply-count>14</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1543584.html</guid>
  <pubDate>Wed, 13 May 2026 22:02:53 GMT</pubDate>
  <title>Один умный человек советует</title>
  <link>https://vak.dreamwidth.org/1543584.html</link>
  <description>In Claude, in your profile, &quot;Settings -&amp;gt; Instructions for Claude&quot;,&lt;br /&gt;Put this:&lt;br /&gt;&lt;br /&gt;Follow these four rules:&lt;br /&gt;1. Don’t make assumptions. Don’t hide confusion. Surface tradeoffs.&lt;br /&gt;2. Minimum code that solves the problem. Nothing speculative.&lt;br /&gt;3. Touch only what you must. Clean up only your own mess.&lt;br /&gt;4. Define success criteria. Loop until verified.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1543584&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1543584.html</comments>
  <category>искусственный интеллект</category>
  <category>программистское</category>
  <lj:security>public</lj:security>
  <lj:reply-count>18</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1543416.html</guid>
  <pubDate>Wed, 13 May 2026 06:51:12 GMT</pubDate>
  <title>На входе Си, на выходе трёхадресный код</title>
  <link>https://vak.dreamwidth.org/1543416.html</link>
  <description>Давненько я не брал в руки &lt;a href=&quot;https://github.com/besm6/c-compiler&quot;&gt;бэсмовского Си компилятора&lt;/a&gt;. Начал я его ровно год назад, в мае. Но в июне отвлёкся на другие дела и выпал из темы. Сейчас только нашёл время продолжить его пинать. Компилятор наконец выдал первый результат. Берём простой код на Си:&lt;blockquote&gt;&lt;pre&gt;
int f() &lt;br /&gt;{ &lt;br /&gt;    int x = 10; &lt;br /&gt;    return x + 1; &lt;br /&gt;}&lt;/pre&gt;&lt;/blockquote&gt;Запускаем проходы компилятора. Преобразуем сначала в &lt;a href=&quot;https://en.wikipedia.org/wiki/Abstract_syntax_tree&quot;&gt;AST&lt;/a&gt;, а потом в &lt;a href=&quot;https://en.wikipedia.org/wiki/Three-address_code&quot;&gt;TAC&lt;/a&gt;. Выводим TAC в виде &lt;a href=&quot;https://en.wikipedia.org/wiki/YAML&quot;&gt;YAML&lt;/a&gt;:&lt;blockquote&gt;&lt;pre&gt;
$ cast test.c test.ast&lt;br /&gt;$ tacker --yaml test.ast test.yaml&lt;br /&gt;$ cat test.yaml&lt;br /&gt;- toplevel:&lt;br /&gt;  kind: function&lt;br /&gt;  name: f&lt;br /&gt;  global: true&lt;br /&gt;  body:&lt;br /&gt;    - instruction:&lt;br /&gt;      kind: copy&lt;br /&gt;      src:&lt;br /&gt;        kind: constant&lt;br /&gt;        const:&lt;br /&gt;          kind: int&lt;br /&gt;          value: 10&lt;br /&gt;      dst:&lt;br /&gt;        kind: var&lt;br /&gt;        name: x&lt;br /&gt;    - instruction:&lt;br /&gt;      kind: binary&lt;br /&gt;      op: add&lt;br /&gt;      src1:&lt;br /&gt;        kind: var&lt;br /&gt;        name: x&lt;br /&gt;      src2:&lt;br /&gt;        kind: constant&lt;br /&gt;        const:&lt;br /&gt;          kind: int&lt;br /&gt;          value: 1&lt;br /&gt;      dst:&lt;br /&gt;        kind: var&lt;br /&gt;        name: t.0&lt;br /&gt;    - instruction:&lt;br /&gt;      kind: return&lt;br /&gt;      src:&lt;br /&gt;        kind: var&lt;br /&gt;        name: t.0&lt;br /&gt;&lt;/pre&gt;&lt;/blockquote&gt;Можно нарисовать картинку через &lt;a href=&quot;https://en.wikipedia.org/wiki/Graphviz&quot;&gt;Graphviz&lt;/a&gt;:&lt;blockquote&gt;&lt;pre&gt;
$ tacker --dot test.ast test.dot&lt;br /&gt;$ dot -Tpdf test.dot -o test.pdf&lt;br /&gt;&lt;/pre&gt;&lt;/blockquote&gt;Осталось закончить генерацию TAC для всех конструкций языка Си, а потом соорудить бэкенд. То есть преобразовалку команд абстрактной машины TAC в конкретные инструкции процессора БЭСМ-6.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://pub.sergev.org/media/besm6-c-compiler-tac.svg&quot; width=&quot;640&quot; height=&quot;228&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1543416&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1543416.html</comments>
  <category>программистское</category>
  <lj:security>public</lj:security>
  <lj:reply-count>4</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1543039.html</guid>
  <pubDate>Wed, 13 May 2026 00:17:46 GMT</pubDate>
  <title>Серьёзной музыки вам в ленту</title>
  <link>https://vak.dreamwidth.org/1543039.html</link>
  <description>Филармонический оркестр Радио Франции исполняет &quot;Atom Heart Mother&quot; группы Пинк Флойд. Кто незнаком с музыкой Пинк Флойд - удачный момент приобщиться. Я с 12 лет их фанат.&lt;br /&gt;&lt;br /&gt;&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/K4uwbzlIwYc?si=cBx5eANaDJj1kO7Z&quot; title=&quot;YouTube video player&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&quot; referrerpolicy=&quot;strict-origin-when-cross-origin&quot; allowfullscreen=&quot;allowfullscreen&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1543039&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1543039.html</comments>
  <category>видео</category>
  <category>pink floyd</category>
  <category>музыка</category>
  <lj:security>public</lj:security>
  <lj:reply-count>11</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1542899.html</guid>
  <pubDate>Tue, 12 May 2026 22:23:55 GMT</pubDate>
  <title>Горячая финская песенка с Евровидения</title>
  <link>https://vak.dreamwidth.org/1542899.html</link>
  <description>&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/i8vlDO89YQA&quot; title=&quot;YouTube video player&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&quot; referrerpolicy=&quot;strict-origin-when-cross-origin&quot; allowfullscreen=&quot;allowfullscreen&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1542899&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1542899.html</comments>
  <category>видео</category>
  <category>музыка</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1542436.html</guid>
  <pubDate>Mon, 11 May 2026 22:31:32 GMT</pubDate>
  <title>Blaise</title>
  <link>https://vak.dreamwidth.org/1542436.html</link>
  <description>На одном FreePascal свет клином не сошёлся. Вот один крутой чувак пилит новый компилятор Паскаля, с чистого листа.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://github.com/graemeg/blaise&quot;&gt;github.com/graemeg/blaise&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1542436&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1542436.html</comments>
  <category>программистское</category>
  <lj:security>public</lj:security>
  <lj:reply-count>21</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1542327.html</guid>
  <pubDate>Mon, 11 May 2026 19:59:57 GMT</pubDate>
  <title>Будни войны</title>
  <link>https://vak.dreamwidth.org/1542327.html</link>
  <description>&lt;iframe src=&quot;https://player.vimeo.com/video/1191216356?badge=0&amp;amp;autopause=0&amp;amp;player_id=0&amp;amp;app_id=58479&quot; frameborder=&quot;0&quot; allow=&quot;autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share&quot; referrerpolicy=&quot;strict-origin-when-cross-origin&quot; title=&quot;Один против пятерых&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1542327&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1542327.html</comments>
  <category>политика</category>
  <lj:security>public</lj:security>
  <lj:reply-count>1</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>https://vak.dreamwidth.org/1542063.html</guid>
  <pubDate>Mon, 11 May 2026 05:44:02 GMT</pubDate>
  <title>Новости бэсмостроения</title>
  <link>https://vak.dreamwidth.org/1542063.html</link>
  <description>Покажу вам пару симпатичных картинок, случившихся за эти выходные.&lt;br /&gt;&lt;br /&gt;(1) Народ из МГУ выложил исходники эмулятора &lt;a href=&quot;https://kbd.news/pic/article/2160/videoton-vt340-2.jpg&quot;&gt;дисплея VT-340&lt;/a&gt;. Был такой в 70-е годы, венгерского производства. Делался ещё для БЭСМ-4. Эмулятор написан несколько лет назад Николаем Макаровым-Землянским, светлой памяти профессором МГУ и большим энтузиастом БЭСМ-6. Сделан эмулятор на Паскале для Windows. За выходные мне удалось, с помощью молотка (Cursor), зубила (Claude Code) и какой-то матери, упинать эти исходники под Линукс и макОС. Далеко не всё там работает, но хоть дышит кое-как. Уже не потеряно для истории.&lt;br /&gt;&lt;br /&gt;Исходники: &lt;a href=&quot;https://github.com/besm6/vt340&quot;&gt;besm6/vt340&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://raw.githubusercontent.com/besm6/vt340/main/doc/vt340-linux.png&quot; width=&quot;940&quot; height=&quot;646&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;&lt;br /&gt;(2) Не так давно Лёня&amp;nbsp;&lt;span style=&apos;white-space: nowrap;&apos;&gt;&lt;a href=&apos;https://spamsink.dreamwidth.org/profile&apos;&gt;&lt;img src=&apos;https://www.dreamwidth.org/img/silk/identity/user.png&apos; alt=&apos;[personal profile] &apos; width=&apos;17&apos; height=&apos;17&apos; style=&apos;vertical-align: text-bottom; border: 0; padding-right: 1px;&apos; /&gt;&lt;/a&gt;&lt;a href=&apos;https://spamsink.dreamwidth.org/&apos;&gt;&lt;b&gt;spamsink&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;восстановил исходники легендарной игры Калах. Тексты на Паскале, и разобраться в них было непросто. А надысь посредством ИИ Лёня перепёр их на Си++. Я добавил гуи, и теперь можно играть, в том числе на &lt;a href=&quot;https://vak.dreamwidth.org/1537550.html&quot;&gt;линуксном палмтопе&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Исходники: &lt;a href=&quot;https://github.com/besm6/kalah-ui&quot;&gt;besm6/kalah-ui&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://github.com/besm6/kalah-ui/blob/main/doc/kalah-gnome.png?raw=true&quot; width=&quot;640&quot; height=&quot;402&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1542063&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://vak.dreamwidth.org/1542063.html</comments>
  <category>программистское</category>
  <category>компьютерная археология</category>
  <lj:security>public</lj:security>
  <lj:reply-count>6</lj:reply-count>
</item>
</channel>
</rss>
