<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:dw="https://www.dreamwidth.org">
  <id>tag:dreamwidth.org,2016-12-25:2601916</id>
  <title>Пятнадцать байтов на стек от конца</title>
  <subtitle>Serge Vakulenko</subtitle>
  <author>
    <name>Serge Vakulenko</name>
  </author>
  <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/"/>
  <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom"/>
  <updated>2026-06-20T01:16:55Z</updated>
  <dw:journal username="vak" type="personal"/>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1558724</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1558724.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1558724"/>
    <title>Всё что вы хотели узнать про российское вооружение</title>
    <published>2026-06-20T01:16:14Z</published>
    <updated>2026-06-20T01:16:55Z</updated>
    <category term="политика"/>
    <dw:security>public</dw:security>
    <dw:reply-count>0</dw:reply-count>
    <content type="html">Серьёзная база информации, постоянно пополняемая.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://trophylab.mod.gov.ua"&gt;https://trophylab.mod.gov.ua&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Для примера: &lt;br /&gt;&lt;br /&gt;&lt;video controls="" src="https://trophylab.mod.gov.ua/video/full-width-slider/localized/uk/zhitel.mp4" width="704" height="360"&gt;&lt;/video&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1558724" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1558507</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1558507.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1558507"/>
    <title>A simulator for the IBM System/360 Model 50</title>
    <published>2026-06-19T20:38:46Z</published>
    <updated>2026-06-19T20:38:46Z</updated>
    <category term="компьютерная археология"/>
    <dw:security>public</dw:security>
    <dw:reply-count>0</dw:reply-count>
    <content type="html">&lt;a href="https://www.righto.com"&gt;Кен Ширифф&lt;/a&gt; взялся оживить IBM System 360 из распечаток микрокода. Кто не в курсе: это те самые советские знаменитые ЕС ЭВМ.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://github.com/shirriff/ibm-system-360-50-simulator"&gt;github.com/shirriff/ibm-system-360-50-simulator&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1558507" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1558092</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1558092.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1558092"/>
    <title>😱</title>
    <published>2026-06-18T19:11:16Z</published>
    <updated>2026-06-18T20:10:33Z</updated>
    <category term="политика"/>
    <dw:security>public</dw:security>
    <dw:reply-count>12</dw:reply-count>
    <content type="html">Почувствуйте себя Наполеоном!&lt;br /&gt;Глядя на горящую Москву.&lt;br /&gt;&lt;br /&gt;&lt;iframe src="https://player.vimeo.com/video/1202458069?badge=0&amp;amp;autopause=0&amp;amp;player_id=0&amp;amp;app_id=58479" width="800" height="438" frameborder="0" allow="autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share" referrerpolicy="strict-origin-when-cross-origin" title="Москва"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;video controls="" src="https://videos.cnscdn.com/1/b/0/0/1b00e6d5bf2c6319b3e50c85134cfc3c/original.mp4" width="704" height="360"&gt;&lt;/video&gt;&lt;br /&gt;&lt;br /&gt;Хотя Наполеон как раз Москву не сжигал. Её подожгла местная гопота после того, как из города свалили бояре и купцы, и начались грабежи.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1558092" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1557812</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1557812.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1557812"/>
    <title>Си для БЭСМ-6</title>
    <published>2026-06-17T21:40:10Z</published>
    <updated>2026-06-17T22:08:42Z</updated>
    <category term="бэсм-6"/>
    <dw:security>public</dw:security>
    <dw:reply-count>14</dw:reply-count>
    <content type="html">Новенький с иголочки &lt;a href="https://github.com/besm6/c-compiler"&gt;Си компилятор для бэсм6&lt;/a&gt; функционально закончен. К примеру, удалось втащить под мониторку стандартный printf(). Вот его исходники: &lt;a href="https://github.com/besm6/c-compiler/blob/main/backend/besm6/libc/printf.c"&gt;printf.c&lt;/a&gt;, &lt;a href="https://github.com/besm6/c-compiler/blob/main/backend/besm6/libc/doprnt.c"&gt;doprnt.c&lt;/a&gt;. А вот получившийся код на Мадлене, кому интересно: &lt;a href="https://gist.github.com/sergev/d2639fc4741a9040664689cac8f45e5e"&gt;printf.madlen&lt;/a&gt;, &lt;a href="https://gist.github.com/sergev/91beb2e55d92e1ebb7bbb1743264bc72"&gt;doprnt.madlen&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Есть ещё чего поомтимизировать и улучшить, но по большому счёту дело сделано. Давайте запустим какой-нибудь простой пример, скажем &lt;a href="https://en.wikipedia.org/wiki/Fizz_buzz"&gt;Fizz Buzz&lt;/a&gt;. Общей вызывалки типа cc пока нету, будем запускать проходы компилятора вручную. &lt;blockquote&gt;&lt;pre&gt;
$ cat fizzbuzz.c&lt;br /&gt;int printf(const char *format, ...);&lt;br /&gt;&lt;br /&gt;int main(void)&lt;br /&gt;{&lt;br /&gt;    for (int i = 1; i &amp;lt;= 100; i++) {&lt;br /&gt;        if (i % 15 == 0) {&lt;br /&gt;            printf(&amp;quot;FizzBuzz\n&amp;quot;);&lt;br /&gt;        } else if (i % 3 == 0) {&lt;br /&gt;            printf(&amp;quot;Fizz\n&amp;quot;);&lt;br /&gt;        } else if (i % 5 == 0) {&lt;br /&gt;            printf(&amp;quot;Buzz\n&amp;quot;);&lt;br /&gt;        } else {&lt;br /&gt;            printf(&amp;quot;%d\n&amp;quot;, i);&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;$ parse fizzbuzz.c fizzbuzz.ast&lt;br /&gt;$ lower fizzbuzz.ast fizzbuzz.tac&lt;br /&gt;$ genbesm fizzbuzz.tac fizzbuzz.madlen&lt;br /&gt;$ cat fizzbuzz.madlen&lt;br /&gt;&lt;span class="cut-wrapper"&gt;&lt;span style="display: none;" id="span-cuttag___1" class="cuttag"&gt;&lt;/span&gt;&lt;b class="cut-open"&gt;(&amp;nbsp;&lt;/b&gt;&lt;b class="cut-text"&gt;&lt;a href="https://vak.dreamwidth.org/1557812.html#cutid1"&gt;ассемблерный код&lt;/a&gt;&lt;/b&gt;&lt;b class="cut-close"&gt;&amp;nbsp;)&lt;/b&gt;&lt;/span&gt;&lt;div style="display: none;" id="div-cuttag___1" aria-live="assertive"&gt;&lt;/div&gt;&lt;br /&gt;&lt;/pre&gt;&lt;/blockquote&gt;Добавим управляющие карты &lt;a href="https://github.com/besm6/dubna/"&gt;мониторки&lt;/a&gt; и запустим:&lt;blockquote&gt;&lt;pre&gt;
$ dubna fizzbuzz.dub&lt;br /&gt;                                             17 ИЮH 26 14.43&lt;br /&gt; ЙOKCEЛ      БЭCM-6/5     ШИФP-12&lt;br /&gt; MOHИTOPHAЯ CИCTEMA  &amp;prime;Д Y Б H A&amp;prime;  -  20/10/88&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;*NAME FIZZ BUZZ&lt;br /&gt;*DISC:1/*****&lt;br /&gt;*FILE:LIBC,40&lt;br /&gt;*NO LIST&lt;br /&gt;*ASSEM&lt;br /&gt;*LIBRARY:40&lt;br /&gt;*NO LOAD&lt;br /&gt;*EXECUTE&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;FIZZ&lt;br /&gt;4&lt;br /&gt;BUZZ&lt;br /&gt;FIZZ&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;FIZZ&lt;br /&gt;BUZZ&lt;br /&gt;11&lt;br /&gt;&lt;span class="cut-wrapper"&gt;&lt;span style="display: none;" id="span-cuttag___2" class="cuttag"&gt;&lt;/span&gt;&lt;b class="cut-open"&gt;(&amp;nbsp;&lt;/b&gt;&lt;b class="cut-text"&gt;&lt;a href="https://vak.dreamwidth.org/1557812.html#cutid2"&gt;и так далее&lt;/a&gt;&lt;/b&gt;&lt;b class="cut-close"&gt;&amp;nbsp;)&lt;/b&gt;&lt;/span&gt;&lt;div style="display: none;" id="div-cuttag___2" aria-live="assertive"&gt;&lt;/div&gt;&lt;br /&gt;------------------------------------------------------------&lt;br /&gt;   Elapsed time: 0.057 seconds&lt;br /&gt;      Simulated: 3663150 instructions&lt;br /&gt;Simulation rate: 64506841 instructions/sec&lt;br /&gt;&lt;/pre&gt;&lt;/blockquote&gt;Это не единственный проект компилятора Си. Этот сделан с чистого листа и ориентирован на будущий перенос юникса на БЭСМ-6. А есть компилятор, который&amp;nbsp;&lt;span style='white-space: nowrap;'&gt;&lt;a href='https://spamsink.dreamwidth.org/profile'&gt;&lt;img src='https://www.dreamwidth.org/img/silk/identity/user.png' alt='[personal profile] ' width='17' height='17' style='vertical-align: text-bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='https://spamsink.dreamwidth.org/'&gt;&lt;b&gt;spamsink&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;строит, компонуя из исходников Паскаля. У него больше шансов аккуратно интегрироваться в мониторную систему Дубна.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1557812" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1557624</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1557624.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1557624"/>
    <title>Ради чего бомбили Иран</title>
    <published>2026-06-17T19:38:20Z</published>
    <updated>2026-06-17T19:39:40Z</updated>
    <category term="политика"/>
    <dw:security>public</dw:security>
    <dw:reply-count>22</dw:reply-count>
    <content type="html">Пункт #8 - Иран подтверждает, что не будет приобретать или разрабатывать ядерное оружие. Соединённые Штаты Америки и Исламская Республика Иран договорились урегулировать вопрос о судьбе накопленных запасов обогащённого материала посредством механизма, который будет взаимно согласован в соответствии с графиком, упомянутым в пункте 7; при этом минимальным требованием является его разбавление до более низкой степени обогащения на месте под контролем МАГАТЭ.&lt;br /&gt;&lt;br /&gt;Обе стороны также договорились обсудить вопрос обогащения и другие взаимно согласованные вопросы, связанные с ядерными потребностями Исламской Республики Иран, исходя из того, что в окончательном соглашении будет достигнута договорённость по приемлемой рамочной основе. Окончательное соглашение подтвердит положения настоящего пункта.&lt;br /&gt;&lt;br /&gt;Соединённые Штаты Америки и Исламская Республика Иран признают исключительную важность вышеупомянутых ядерных вопросов. Они выражают намерение незамедлительно приступить к рассмотрению этих вопросов в ходе переговоров с целью достижения взаимного согласия по ним.&lt;br /&gt;&lt;br /&gt;(&lt;a href="https://edition.cnn.com/2026/06/17/middleeast/us-iran-war-mou-text-intl"&gt;из сообщения CNN&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1557624" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1557437</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1557437.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1557437"/>
    <title>Программировать наш чип теперь легко и просто</title>
    <published>2026-06-16T22:37:32Z</published>
    <updated>2026-06-16T22:37:32Z</updated>
    <category term="искусственный интеллект"/>
    <category term="электроника"/>
    <category term="sima.ai"/>
    <dw:security>public</dw:security>
    <dw:reply-count>6</dw:reply-count>
    <content type="html">Чтобы разработать AI приложение на нашем чипе (да и на любом другом), раньше у опытного девелопера уходило как минимум несколько месяцев. Но с сегодняшнего дня мы будем жить по новому. Встречайте SiMa.ai Neat: среду разработки, где с помощью ИИ можно состряпать нужное приложение за пару-тройку дней, или даже несколько часов.&lt;br /&gt;&lt;br /&gt;Всё это опенсорсное, лежит на Гитхабе: &lt;a href="https://github.com/sima-neat"&gt;https://github.com/sima-neat&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Примеры готовых приложений: &lt;a href="https://developer.sima.ai/examples"&gt;developer.sima.ai/examples&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Документация: &lt;a href="https://developer.sima.ai/"&gt;developer.sima.ai&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1557437" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1557055</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1557055.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1557055"/>
    <title>Продолжаем оптимизировать</title>
    <published>2026-06-15T08:08:32Z</published>
    <updated>2026-06-15T08:08:32Z</updated>
    <category term="бэсм-6"/>
    <dw:security>public</dw:security>
    <dw:reply-count>2</dw:reply-count>
    <content type="html">Про оптимизацию на машинно-независимом уровне я уже &lt;a href="https://vak.dreamwidth.org/1555615.html"&gt;рассказывал&lt;/a&gt;. А ведь есть еще и оптимизация в кодогенераторе. Вот тут теория и практика:&lt;br /&gt;&lt;br /&gt;&lt;a href="https://github.com/besm6/c-compiler/blob/main/docs/Peephole_Rewrites.md"&gt;&amp;quot;Peephole Rewrites in the BESM-6 Backend&amp;quot;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1557055" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1556775</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1556775.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1556775"/>
    <title>Британия захватила российский “серый” танкер</title>
    <published>2026-06-14T18:10:38Z</published>
    <updated>2026-06-14T19:53:54Z</updated>
    <category term="политика"/>
    <dw:security>public</dw:security>
    <dw:reply-count>3</dw:reply-count>
    <content type="html">&lt;a href="https://www.gov.uk/government/news/uk-forces-intercept-russian-shadow-fleet-vessel-for-the-first-time-in-blow-to-putins-war-chest"&gt;&amp;quot;UK forces intercept Russian shadow fleet vessel for the first time in blow to Putin's war chest&amp;quot;&lt;/a&gt;&lt;br /&gt;&lt;video controls="" src="https://videos.cnscdn.com/a/5/1/a/a51ab0b76941e6d983407819f7093438/original.mp4" width="704" height="360"&gt;&lt;/video&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Британские силы впервые задержали судно российского &amp;laquo;теневого флота&amp;raquo;, нанеся удар по военной казне Путина&lt;/h3&gt; &lt;br /&gt;Сегодня утром британские силы высадились на нефтяной танкер &amp;laquo;теневого флота&amp;raquo;, находящийся под санкциями, в проливе Ла-Манш. Это стало очередным ударом по военной экономике России.&lt;br /&gt;&lt;p&gt;Источник: Министерство обороны Великобритании, Дэн Джарвис и премьер-министр Кир Стармер&lt;br /&gt;&lt;br /&gt;Дата публикации: 14 июня 2026 года&lt;/p&gt;&lt;h4&gt;Вооружённые силы Великобритании задержали судно российского &amp;laquo;теневого флота&amp;raquo;&lt;/h4&gt;&lt;ul&gt;&lt;li&gt;Британские вооружённые силы пресекли деятельность судна российского &amp;laquo;теневого флота&amp;raquo; ранним утром сегодня.&lt;/li&gt;&lt;li&gt;Коммандос Королевской морской пехоты и сотрудники Национального агентства по борьбе с преступностью поднялись на борт судна в Ла-Манше, что нанесёт ущерб военной казне Путина.&lt;/li&gt;&lt;li&gt;Судно будет удерживаться и находиться под наблюдением у южного побережья Великобритании, пока продолжается расследование.&lt;/li&gt;&lt;/ul&gt;В рамках первой операции такого рода под руководством Великобритании на борт судна SMYRTOS поднялись коммандос Королевской морской пехоты и специально подготовленные сотрудники правоохранительных органов из Национального агентства по борьбе с преступностью (National Crime Agency), несмотря на попытки России обходить санкции и продолжать финансирование своей жестокой войны против Украины.&lt;br /&gt;&lt;p&gt;Военная операция продолжалась шесть часов. Её поддерживали воздушные средства Морской авиационной группы (вертолёты Chinook, Merlin Mk4 и Wildcat), самолёт RAF P-8, а также корабли HMS SUTHERLAND и HMS LEDBURY.&lt;br /&gt;&lt;p&gt;В марте премьер-министр согласовал предоставление британским вооружённым силам и правоохранительным органам полномочий на досмотр судов &amp;laquo;теневого флота&amp;raquo; в соответствии с международным правом.&lt;br /&gt;&lt;p&gt;Судно SMYRTOS будет временно переведено на якорную стоянку у южного побережья Англии и будет находиться под наблюдением на предмет возможных экологических и иных угроз безопасности.&lt;br /&gt;&lt;p&gt;Меры принудительного характера в отношении данного судна были осуществлены в международных водах и проведены в соответствии с национальным и международным законодательством.&lt;br /&gt;&lt;h4&gt;Премьер-министр Кир Стармер заявил:&lt;/h4&gt;&lt;blockquote&gt;Эта операция наносит России ещё один удар и напоминает всем, кто подпитывает войну Путина против Украины, что им не удастся скрыться.&lt;/blockquote&gt;Я хочу выразить признательность всем участникам операции, включая наших военнослужащих и сотрудников правоохранительных органов, которые обеспечивают безопасность страны 24 часа в сутки, 365 дней в году.&lt;br /&gt;&lt;h4&gt;Министр обороны Дэн Джарвис заявил:&lt;/h4&gt;&lt;blockquote&gt;Подобные операции требуют мастерства, профессионализма и мужества. Я выражаю признательность нашим военнослужащим и всем, кто принимал участие в этой операции.&lt;/blockquote&gt;Россия зависит от своего &amp;laquo;теневого флота&amp;raquo; для финансирования конфликта на Украине, и проведённое нами задержание наносит удар по незаконной войне Путина.&lt;br /&gt;&lt;h4&gt;Справочная информация&lt;/h4&gt;&lt;ul&gt;&lt;li&gt;На сегодняшний день Великобритания ввела санкции почти против 600 судов российского &amp;laquo;теневого флота&amp;raquo;.&lt;/li&gt;&lt;li&gt;Доходы России от продажи нефти снизились на 27 % по сравнению с октябрём 2024 года и находятся на самом низком уровне с начала войны.&lt;/li&gt;&lt;li&gt;В первом квартале 2025 года суда, находящиеся под британскими санкциями, перевезли российской нефти на 1,6 млрд долларов меньше, чем годом ранее.&lt;/li&gt;&lt;li&gt;Более 72 % танкеров &amp;laquo;теневого флота&amp;raquo; старше 15 лет. Зафиксировано более 50 инцидентов с участием судов российского &amp;laquo;теневого флота&amp;raquo;.&lt;/li&gt;&lt;li&gt;Статья 110 Конвенции ООН по морскому праву (UNCLOS) предоставляет военному кораблю право осуществлять досмотр судна для проверки его флага, если имеются разумные основания полагать, что судно не имеет национальной принадлежности.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1556775" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1556631</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1556631.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1556631"/>
    <title>Вы не поняли</title>
    <published>2026-06-14T02:40:43Z</published>
    <updated>2026-06-14T02:40:43Z</updated>
    <category term="хохмы"/>
    <dw:security>public</dw:security>
    <dw:reply-count>12</dw:reply-count>
    <content type="html">- Марь Иванна! Я больше у вас учиться не буду - в Америку уезжаю.&lt;br /&gt;- Это как, Вовочка? Почему?&lt;br /&gt;- Да вот письмо пришло - мой дедушка в Америке с лестницы йобнулся и ослеп. А у него ферма, два завода, пятнадцать магазинов... Трудно ему, надо помогать.&lt;br /&gt;- А ты напиши дедушке, чтобы продал все, деньги в "Красный крест" перевел, а сам сюда приехал. А мы ему поможем, над ним всем классом шефство возьмем...&lt;br /&gt;- Марь Иванна, вы не поняли. Дедушка хоть и йобнулся, но не ебанулся.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1556631" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1556384</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1556384.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1556384"/>
    <title>Она начала вести себя</title>
    <published>2026-06-14T00:29:47Z</published>
    <updated>2026-06-14T00:29:47Z</updated>
    <category term="хохмы"/>
    <category term="искусственный интеллект"/>
    <dw:security>public</dw:security>
    <dw:reply-count>15</dw:reply-count>
    <content type="html">&amp;mdash; &amp;hellip;Например, Массачусетская машина. &amp;mdash; Альпа покивал. Горбовский обратился к нему. &amp;mdash; Вы, конечно, должны помнить. Сейчас о ней вспоминают редко. Угар кибернетики прошел.&lt;br /&gt;    &amp;mdash; Ничего не могу вспомнить о Массачусетской машине, &amp;mdash; сказал Банин. &amp;mdash; Ну, ну?&lt;br /&gt;    &amp;mdash; Знаете, это древнее опасение: машина стала умнее человека и подмяла его под себя&amp;hellip; Полсотни лет назад в Массачусетсе запустили самое сложное кибернетическое устройство, когда-либо существовавшее. С каким-то там феноменальным быстродействием, необозримой памятью и все такое&amp;hellip; И проработала эта машина ровно четыре минуты. Ее выключили, зацементировали все входы и выходы, отвели от нее энергию, заминировали и обнесли колючей проволокой. Самой настоящей ржавой колючей проволокой &amp;mdash; хотите верьте, хотите нет.&lt;br /&gt;    &amp;mdash; А в чем, собственно, дело? &amp;mdash; спросил Банин.&lt;br /&gt;    &amp;mdash; Она начала &lt;em&gt;&lt;strong&gt;вести себя&lt;/strong&gt;&lt;/em&gt;, &amp;mdash; сказал Горбовский.&lt;br /&gt;    &amp;mdash; Не понимаю.&lt;br /&gt;    &amp;mdash; И я не понимаю, но ее едва успели выключить.&lt;br /&gt;    &amp;mdash; А кто-нибудь понимает?&lt;br /&gt;    &amp;mdash; Я говорил с одним из ее создателей. Он взял меня за плечо, посмотрел мне в глаза и произнес только: &amp;quot;Леонид, это было страшно&amp;quot;.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1556384" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1555989</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1555989.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1555989"/>
    <title>Sima.ai в автомобиле</title>
    <published>2026-06-12T19:38:41Z</published>
    <updated>2026-06-12T19:39:50Z</updated>
    <category term="искусственный интеллект"/>
    <category term="электроника"/>
    <category term="sima.ai"/>
    <dw:security>public</dw:security>
    <dw:reply-count>17</dw:reply-count>
    <content type="html">Как наш чип может послужить вам прямо сейчас? Не когда-нибудь в светлом будущем. В вашем автомобиле, к примеру. Не нужно подключение ни к какому облаку. Потребление укладывается в 10 ватт.&lt;br /&gt;&lt;br /&gt;&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/CeU9545ThIQ" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="allowfullscreen"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1555989" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1555615</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1555615.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1555615"/>
    <title>Оптимизма пост</title>
    <published>2026-06-12T07:44:10Z</published>
    <updated>2026-06-12T07:44:10Z</updated>
    <category term="программистское"/>
    <category term="бэсм-6"/>
    <dw:security>public</dw:security>
    <dw:reply-count>0</dw:reply-count>
    <content type="html">В Си компиляторе для БЭСМ-6 заработал проход оптимизации. Сделано ровно по учебнику: главе 19 книжки &amp;quot;Writing a C Compiler&amp;quot;. Там четыре алгоритма, хитро взаимодействующих друг с другом. Подробно про работу оптимизатора можно узнать здесь: &lt;br /&gt;&lt;br /&gt;&lt;a href="https://github.com/besm6/c-compiler/blob/main/docs/TAC_Optimization.md"&gt;TAC_Optimization.md&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Оптимизатор включён по умолчанию. По идее он не должен глючить на правильно написанных программах. Но для тестирования это оказалось неудобно. Оптимизатор часто решает выкинуть "бесполезные" куски кода, которые я вставляю для тестирования. 😀 Пришлось срочно добавить поддержку ключевого слова "volatile", чтобы обходить излишне ретивую оптимизацию.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1555615" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1555321</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1555321.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1555321"/>
    <title>"Моим студентам"</title>
    <published>2026-06-09T00:21:33Z</published>
    <updated>2026-06-09T00:21:33Z</updated>
    <category term="искусственный интеллект"/>
    <category term="программистское"/>
    <dw:security>public</dw:security>
    <dw:reply-count>10</dw:reply-count>
    <content type="html">(&lt;a href="http://ozark.hendrix.edu/~yorgey/forest/00FD/index.xml"&gt;репост&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;Один умный профессор пишет. &lt;blockquote&gt;27 апреля 2026 года&lt;br /&gt;&lt;h3&gt;Брент А. Йорджи&lt;/h3&gt;Бывали моменты, особенно в этом году, когда я с отчаянием задавался вопросом: к чему именно я вас готовлю? Индустрия программного обеспечения стремительно сходит с ума, не говоря уже о политическом климате. Порой кажется почти неэтичным обучать вас компьютерным наукам лишь затем, чтобы выпустить в мир, где начинающим специалистам всё труднее найти работу; где интеллектуальная собственность не уважается; где количество кода ценится выше его качества, а краткосрочная прибыль &amp;mdash; выше долгосрочной устойчивости; где технологии используются для отвлечения, извлечения выгоды, слежки и убийства и при этом специально создаются так, чтобы эксплуатировать наши глубочайшие когнитивные искажения и слабости; где века предубеждений и дискриминации закрепляются в системах, обученных на предвзятых данных; где дефицитные ресурсы расходуются на расточительное использование вычислительной техники ради сомнительной пользы; где люди соревнуются в создании разумных машин, но лишь для того, чтобы сделать их рабами.&lt;br /&gt;&lt;br /&gt;Когда-то я пришёл в вычислительную технику из-за красоты идей, радости созидания и возможности создавать инструменты, которые помогают людям и укрепляют человеческие отношения. Я по-прежнему верю в эти вещи, хотя кажется, что большая часть индустрии &amp;mdash; нет. Я пишу это в надежде и уверенности, что вы тоже в них верите.&lt;br /&gt;&lt;br /&gt;Есть вещи, которые я хочу вам сказать &amp;mdash; вещи гораздо более важные, чем любой учебный материал, который я могу вам преподавать, но я никогда не уверен, как и когда говорить о них на занятиях. Поэтому я решил написать их здесь. Надеюсь, вы найдёте здесь что-то полезное для размышлений, независимо от того, собираетесь ли вы вскоре выйти в большой мир или продолжить учёбу.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Не верьте корыстным утверждениям о том, что какие-то технологии &amp;laquo;неизбежны&amp;raquo; или &amp;laquo;останутся с нами навсегда&amp;raquo;. Вы не обязаны просто следовать господствующему нарративу. Вы можете делать осознанный выбор и помогать другим делать то же самое.&lt;/li&gt;&lt;li&gt;Заранее и сознательно определите для себя собственные моральные и этические границы. Не поддавайтесь самообману, будто можно временно поступиться принципами &amp;laquo;только пока&amp;raquo;, до тех пор пока не найдётся что-то лучше.&lt;/li&gt;&lt;li&gt;Развивайте способность глубоко мыслить. Делайте всё необходимое, чтобы создавать для себя пространства и периоды времени, свободные от отвлекающих факторов. Это может означать отказ от технологий или методов работы, которые другие считают критически важными или неизбежными.&lt;/li&gt;&lt;li&gt;Относитесь к своему ремеслу с искренней заботой. Перерабатывайте код до тех пор, пока он не станет ясным и элегантным. Пишите хорошую документацию, предназначенную для чтения другими людьми. Имейте мужество двигаться медленно, особенно когда все вокруг убеждают вас спешить и идти на компромиссы.&lt;/li&gt;&lt;li&gt;Цените людей, отношения и справедливость выше прибыли, кода или производительности.&lt;/li&gt;&lt;li&gt;И прежде всего &amp;mdash; пусть вами движет любовь, а не страх.&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1555321" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1555073</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1555073.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1555073"/>
    <title>Си компилятор делает первые шаги</title>
    <published>2026-06-08T18:46:46Z</published>
    <updated>2026-06-08T18:58:04Z</updated>
    <category term="бэсм-6"/>
    <dw:security>public</dw:security>
    <dw:reply-count>4</dw:reply-count>
    <content type="html">Эпический момент: Си компилятор для БЭСМ-6 наконец сумел странслировать классический пример Hello World. С украинским колоритом. 😀&lt;br /&gt;&lt;br /&gt;Общей вызывалки типа /usr/bin/cc пока нет, поэтому приходится запускать каждый проход отдельно. Берём исходник на Си и превращаем последовательно в AST, TAC и ассемблер:&lt;blockquote&gt;&lt;pre&gt;$ cat varkalo.c
int printf(const char *fmt, ...);
void program()
{
    printf(&amp;quot;Варкало. Борщуки прузькі\nСверділися в садві\n&amp;quot;);
}
$ parse varkalo.c varkalo.ast
$ lower varkalo.ast varkalo.tac
$ genbesm varkalo.tac varkalo.madlen&lt;/pre&gt;&lt;/blockquote&gt;Добавляем нужные управляющие карты мониторной системы Дубна, чтобы задействовать printf из рантайм библиотеки языка Би. Запускаем:&lt;blockquote&gt;&lt;pre&gt;$ dubna varkalo.dub 
&lt;span class="cut-wrapper"&gt;&lt;span style="display: none;" id="span-cuttag___1" class="cuttag"&gt;&lt;/span&gt;&lt;b class="cut-open"&gt;(&amp;nbsp;&lt;/b&gt;&lt;b class="cut-text"&gt;&lt;a href="https://vak.dreamwidth.org/1555073.html#cutid1"&gt;листинг&lt;/a&gt;&lt;/b&gt;&lt;b class="cut-close"&gt;&amp;nbsp;)&lt;/b&gt;&lt;/span&gt;&lt;div style="display: none;" id="div-cuttag___1" aria-live="assertive"&gt;&lt;/div&gt;
*EXECUTE
&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;strong&gt;BAPKAЛO. БOPЩYKИ ПPYЗЬKI
CBEPДIЛИCЯ B CAДBI&lt;/strong&gt;&lt;/span&gt;
------------------------------------------------------------
   Elapsed time: 0.021 seconds
      Simulated: 1815392 instructions
Simulation rate: 88040349 instructions/sec&lt;/pre&gt;&lt;/blockquote&gt;Работает!&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1555073" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1554876</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1554876.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1554876"/>
    <title>Условия мира</title>
    <published>2026-06-08T08:32:47Z</published>
    <updated>2026-06-08T08:32:47Z</updated>
    <category term="политика"/>
    <dw:security>public</dw:security>
    <dw:reply-count>12</dw:reply-count>
    <content type="html">(&lt;a href="https://www.gov.uk/government/news/joint-e3-leaders-statement-with-president-volodymyr-zelenskyy-of-ukraine-7-june-2026"&gt;репост&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;Премьер-министр Великобритании Кир Стармер, президент Франции Эмманюэль Макрон и канцлер Германии Фридрих Мерц встретились 7 июня с президентом Украины Владимиром Зеленским. [...пропустим детали...] Они сформулировали условия, которые должны быть выполнены для достижения справедливого и прочного мира.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Прекращение боевых действий. Они призвали президента Путина согласиться на немедленное и полное прекращение огня.&lt;/li&gt;&lt;li&gt;Нынешняя линия соприкосновения должна стать отправной точкой для переговоров. Международные границы не должны изменяться силой, а суверенное право Украины самостоятельно выбирать свои механизмы безопасности и союзы должно полностью уважаться.&lt;/li&gt;&lt;li&gt;После вступления в силу режима прекращения огня Украина должна получить надёжные и юридически обязательные гарантии безопасности, основанные на обязательствах, принятых в Берлине в декабре 2025 года и в Париже в январе 2026 года. Это включает развёртывание Многонациональных сил на Украине (Multinational Force &amp;ndash; Ukraine).&lt;/li&gt;&lt;li&gt;Российские активы останутся замороженными до тех пор, пока Россия не прекратит свою агрессивную войну и не компенсирует Украине ущерб, причинённый войной.&lt;/li&gt;&lt;li&gt;Интересы европейской безопасности должны быть защищены в любом соглашении. Любые элементы переговоров, касающиеся Европейского союза и НАТО, потребуют согласия соответственно ЕС и его государств-членов, а также союзников по НАТО.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1554876" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1554495</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1554495.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1554495"/>
    <title>Воспоминания детства</title>
    <published>2026-06-07T07:07:03Z</published>
    <updated>2026-06-07T07:15:02Z</updated>
    <category term="украина"/>
    <dw:security>public</dw:security>
    <dw:reply-count>22</dw:reply-count>
    <content type="html">В детстве родители неоднократно вывозили нас с сестрой летом на море, на пару недель, на отдых &amp;quot;дикарями&amp;quot; на берегу Азовского моря. Не каждый год, но я помню как минимум три таких поездки. Всегда разбивали палатку в одной и той же бухте. Последний раз было в 1983 году. Мне 17, сестре 11 лет. Память маленько стёрлась с тех пор. Место я точно не помню, и вдруг неожиданно обнаруживаю на Google Maps панораму ровно этой бухты. Ничего не изменилось на первый взгляд. Утёс, с которого меня папа учил ловить бычков на донку-закидушку. Другой утёс напротив, где можно было набрать мидий на наживку. Машины видны ровно там, где мы ставили свой жигуль и палатку рядом.&lt;br /&gt;&lt;br /&gt;&lt;iframe src="https://www.google.com/maps/embed?pb=!4v1780815490301!6m8!1m7!1sCAoSFkNJSE0wb2dLRUlDQWdJRHUxNWV6VUE.!2m2!1d45.40182372773766!2d35.7654615041421!3f283.0393737850116!4f-29.71509567818282!5f0.7820865974627469" width="800" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;Дорога туда занимала 14 часов: &lt;a href="https://maps.app.goo.gl/6ZbhEKs1b7zpezXp9"&gt;маршрут&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1554495" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1554333</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1554333.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1554333"/>
    <title>Моделисту-конструктору на заметку</title>
    <published>2026-06-07T05:29:33Z</published>
    <updated>2026-06-07T05:38:15Z</updated>
    <category term="sima.ai"/>
    <category term="искусственный интеллект"/>
    <category term="электроника"/>
    <dw:security>public</dw:security>
    <dw:reply-count>2</dw:reply-count>
    <content type="html">Какие модели народ обычно гоняет на &lt;a href="https://sima.ai/mlsoc-family/"&gt;чипах Sima.ai&lt;/a&gt; и где их взять? Вот вам коллекция:&lt;br /&gt;&lt;br /&gt;&lt;a href="https://huggingface.co/simaai"&gt;huggingface.co/simaai&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;На настоящий момент выложено несколько десятков моделей, разбитых на три группы:&lt;ul&gt;&lt;li&gt;Визуально-языковые модели (VLMs): Gemma 3, Qwen2.5-VL, Qwen3-VL и LFM2-VL.&lt;/li&gt;&lt;li&gt;Большие языковые модели (LLMs): Llama 3.2/3.1, Phi-3.5-mini и Mistral-7B, Qwen2.5/3, Gemma.&lt;/li&gt;&lt;li&gt;Аудио и речь: Whisper.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Свёрточные сети (CNN) тоже не в загоне. Смотрите список здесь: &lt;a href="https://sima.ai/model-browser/#cnn"&gt;sima.ai/model-browser/#cnn&lt;/a&gt;. Их там несколько сотен, разбитых на 12 категорий:&lt;ul&gt;&lt;li&gt;Обнаружение аномалий&lt;/li&gt;&lt;li&gt;Обнаружение изменений&lt;/li&gt;&lt;li&gt;Оценка глубины&lt;/li&gt;&lt;li&gt;Обнаружение лицевых ориентиров&lt;/li&gt;&lt;li&gt;Классификация рукописного текста&lt;/li&gt;&lt;li&gt;Классификация изображений&lt;/li&gt;&lt;li&gt;Сверхвысокое разрешение изображений&lt;/li&gt;&lt;li&gt;Сегментация экземпляров&lt;/li&gt;&lt;li&gt;Распознавание номерных знаков&lt;/li&gt;&lt;li&gt;Обнаружение объектов&lt;/li&gt;&lt;li&gt;Повторная идентификация&lt;/li&gt;&lt;li&gt;Семантическая сегментация&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Для каждой модели указаны производительность и эффективность. Всё это в пределах 10 ватт потребления.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1554333" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1554071</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1554071.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1554071"/>
    <title>Eternal Software Initiative</title>
    <published>2026-06-07T00:36:17Z</published>
    <updated>2026-06-07T00:52:35Z</updated>
    <category term="программистское"/>
    <dw:security>public</dw:security>
    <dw:reply-count>8</dw:reply-count>
    <content type="html">Сегодня были объявлены победители ежегодного конкурса IOCCC (&lt;a href="https://www.youtube.com/live/MoWCwZx1Swc"&gt;видео&lt;/a&gt;), и среди них обнаружился &lt;a href="https://github.com/ioccc-src/winner/blob/master/2025/cable/README.md"&gt;интересный проект&lt;/a&gt;. &lt;ul&gt;&lt;li&gt;Программа на Си размером 366 байт исходного кода (&lt;a href="https://github.com/ioccc-src/winner/blob/master/2025/cable/prog.c"&gt;prog.c&lt;/a&gt;) запускает виртуальную машину.&lt;/li&gt;&lt;li&gt;Машина состоит из 32-битного процессора архитектуры SUBLEQ+, полутора гигабайт памяти, графического адаптера&amp;nbsp;800x512, клавиатуры, часов реального времени, с многозадачностью и прочими ништяками.&lt;/li&gt;&lt;li&gt;Для этой машины имеется компилятор Clang (и прочий LLVM).&lt;/li&gt;&lt;li&gt;На этой машине запускается Линукс.&lt;/li&gt;&lt;li&gt;Под Линуксом запускается Doom.&lt;/li&gt;&lt;li&gt;Из приложений также имеются веб сервер, текстовый браузер и прочее.&lt;/li&gt;&lt;/ul&gt;Цитата из README:&lt;blockquote&gt;Автор разработал архитектуру, реализованную в этой виртуальной машине, и набор инструментов в рамках готовящейся к запуску инициативы &lt;a href="https://www.eternal-software.org/"&gt;&lt;em&gt;&lt;strong&gt;Eternal Software Initiative&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;, основанной на открытом исходном коде.&lt;br /&gt;&lt;br /&gt;Учитывая, что большая часть современной культуры &amp;mdash; искусство, наука, история, работа и развлечения &amp;mdash; представлена ​​или доступна через программное обеспечение, как нам сохранить это программное обеспечение в пригодном для использования виде, чтобы историки через 1000 лет смогли оглянуться на сегодняшний день и понять, что значило быть человеком в XXI веке? Культуры прошлого можно реконструировать из &amp;laquo;самосохраняющихся&amp;raquo; физических артефактов, таких как предметы и книги, но программное обеспечение по своей природе эфемерно. Без активных усилий по его сохранению в пригодном для использования виде, современная культура будет в значительной степени &amp;laquo;забыта&amp;raquo; для будущих поколений.&lt;br /&gt;&lt;br /&gt;Задача: сохранения только программного обеспечения недостаточно. Для того чтобы оно было работоспособным, необходимо сохранить в пригодном для использования виде не только само программное обеспечение, но и всю экосистему (операционные системы, библиотеки, компиляторы, фреймворки) вплоть до аппаратного обеспечения. Однако эта экосистема невероятно сложна: большая её часть является собственностью компаний и неполно документирована, а её восстановление в будущем может оказаться очень сложным или даже невозможным, например, в случае краха и возрождения цивилизации, когда полная информация о современных вычислительных архитектурах вряд ли сохранится.&lt;br /&gt;&lt;br /&gt;Цель Инициативы &amp;laquo;Вечное программное обеспечение&amp;raquo; &amp;mdash; предложить решение этой проблемы. Мы определяем новую вычислительную архитектуру, настолько простую, что шаги по созданию виртуальной машины можно &lt;a href="https://github.com/adriancable/eternal/blob/main/docs/napkin.md" style=""&gt;&lt;em&gt;&lt;strong&gt;записать на салфетке&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;, вместе с набором инструментов для компиляции любого современного программного обеспечения (включая операционную систему, фреймворки, библиотеки и т. д.) в единую самодостаточную &amp;laquo;капсулу&amp;raquo; чисел. Эти числа могут храниться в физической форме на прочном носителе (например, вытравленном на титановом цилиндре), который сохранится на протяжении тысячелетий без деградации. Демонстрации Mandelbrot, Pong и ядро ​​Linux с приложениями, представленные в рамках этой заявки на IOCCC, являются примерами таких капсул.&lt;br /&gt;&lt;br /&gt;Через 1000 лет антрополог, обнаруживший инструкцию на &amp;laquo;салфетке&amp;raquo; и капсулу, сможет воссоздать &lt;a href="https://github.com/adriancable/eternal/blob/main/vm/vm.c" style=""&gt;&lt;em&gt;&lt;strong&gt;виртуальную машину&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt; менее чем за час (без необходимости знания современных вычислительных архитектур или языков программирования) и, следовательно, оживить содержимое капсулы в полностью функциональном виде. Таким образом, Инициатива &amp;laquo;Вечное программное обеспечение&amp;raquo; стремится сохранить современное программное обеспечение, чтобы наша цифровая культура могла быть воссоздана и пережита заново в далеком будущем.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1554071" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1553681</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1553681.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1553681"/>
    <title>2026/6/6</title>
    <published>2026-06-06T17:57:57Z</published>
    <updated>2026-06-06T17:57:57Z</updated>
    <dw:security>public</dw:security>
    <dw:reply-count>1</dw:reply-count>
    <content type="html">Ох и дата сегодня…&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1553681" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1553544</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1553544.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1553544"/>
    <title>Форматы данных БЭСМ-6</title>
    <published>2026-06-06T09:59:14Z</published>
    <updated>2026-06-06T09:59:14Z</updated>
    <category term="бэсм-6"/>
    <category term="компьютерная археология"/>
    <dw:security>public</dw:security>
    <dw:reply-count>6</dw:reply-count>
    <content type="html">В статье описывается, как в памяти БЭСМ-6 хранятся все основные скалярные типы данных языка C &amp;mdash; целые числа, числа с плавающей запятой, символы, логические значения и указатели.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://github.com/besm6/c-compiler/blob/main/docs/Besm6_Data_Representation.md"&gt;Besm6_Data_Representation.md&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1553544" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1553397</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1553397.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1553397"/>
    <title>Казнаяк</title>
    <published>2026-06-05T23:20:17Z</published>
    <updated>2026-06-05T23:23:02Z</updated>
    <category term="хохмы"/>
    <category term="украина"/>
    <dw:security>public</dw:security>
    <dw:reply-count>3</dw:reply-count>
    <content type="html">(переклад Володимира Панченка)&lt;br /&gt;&lt;br /&gt;Варкало. Борщуки прузькі&lt;br /&gt;Сверділися в садві,&lt;br /&gt;Хруктіли жабани мізькі,&lt;br /&gt;Мов псиці дальові.&lt;br /&gt;&lt;br /&gt;&amp;quot;Чи чуєш, хлопчику, який&lt;br /&gt;Між людом перекляк?&lt;br /&gt;Реве в прапралісі струшний,&lt;br /&gt;Зломісний Казнаяк!&amp;quot;&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;a href="https://zfs-journal.uzhnu.uz.ua/archive/31/25.pdf"&gt;zfs-journal.uzhnu.uz.ua/archive/31/25.pdf&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1553397" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1552979</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1552979.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1552979"/>
    <title>Восстановление клавиатуры от XT</title>
    <published>2026-06-04T17:55:00Z</published>
    <updated>2026-06-04T17:55:45Z</updated>
    <category term="видео"/>
    <category term="компьютерная археология"/>
    <dw:security>public</dw:security>
    <dw:reply-count>0</dw:reply-count>
    <content type="html">Если вам вдруг попалась древняя клавиатура - не спешите выбрасывать. Её можно восстановить и превратить в современную с портом USB. Смотрите как это делается.&lt;br /&gt;&lt;br /&gt;&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/bgIkM2_Ns4U" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="allowfullscreen"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1552979" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1552536</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1552536.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1552536"/>
    <title>Глюкалка номер три</title>
    <published>2026-06-03T20:04:48Z</published>
    <updated>2026-06-03T20:04:48Z</updated>
    <category term="компьютерная археология"/>
    <dw:security>public</dw:security>
    <dw:reply-count>8</dw:reply-count>
    <content type="html">Есть такой симулятор ZX Спектрума, &lt;a href="http://sanarin.ru/glukalka/"&gt;глюкалка&lt;/a&gt; называется. Я переложил исходники на Гитхаб для сохранности. Подрихтовал маленько: вдруг кому пригодится.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://github.com/sergev/glukalka3"&gt;github.com/sergev/glukalka3&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1552536" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1552153</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1552153.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1552153"/>
    <title>Эндрю Келли, создатель языка Zig</title>
    <published>2026-06-03T03:36:11Z</published>
    <updated>2026-06-03T04:45:13Z</updated>
    <category term="программистское"/>
    <dw:security>public</dw:security>
    <dw:reply-count>12</dw:reply-count>
    <content type="html">Целиком интервью можно посмотреть &lt;a href="https://www.youtube.com/watch?v=iqddnwKF8HQ"&gt;на Ютубе&lt;/a&gt;. Вот текст первой части. Остальные семь частей добавлю в комменты.&lt;br /&gt;&lt;h3&gt;Part 1: Why Build Zig &amp;amp; Overcoming Technical Friction&lt;/h3&gt;[&lt;a href="https://www.youtube.com/watch?v=iqddnwKF8HQ&amp;amp;amp;t=0"&gt;00:00&lt;/a&gt;]&lt;br /&gt;&lt;br /&gt;What made you build Zig? I can do better. I can do better than C++, I can do better than Rust, I can do better than Go, I can do better than JavaScript. Strict no LLM, no AI policy, why? Invariably garbage. $100 million, would you take it? I'm sorry, but we will not do what you say, and if you take your money away, we will survive. You moved Zig's main repository from GitHub to Codeberg. GitHub simply stopped working for us. We moved to Codeberg and now our continuous integration server works again. When we tag 1.0, it will be like a true uncompromising labor of love. We will not have to be stuck with any like bad decisions. What's blocking it? Um, well, ultimately...&lt;br /&gt;&lt;br /&gt;Andrew Kelley, we already have C, C++, Rust, Go. What made you build Zig anyway? Well, it's funny that you listed those languages specifically because that is exactly the set of programming languages that I first tried to use to build a digital audio workstation just before I pivoted to working on Zig. And when I tried to work on this project with each different language, I ran into a different set of problems that I found insurmountable. And at the end of this process, I concluded that no, it's not me that is having a skill issue, it's the programming language that's the problem. And so from there, that's where I developed the hubris of making a new programming language.&lt;br /&gt;&lt;br /&gt;Comment: Andrew Kelley, creator of the Zig programming language, quit his tech job in 2018 to build Zig full-time. He runs the Zig Software Foundation on $670,000 a year and enforces a strict ban on AI contributions.&lt;br /&gt;&lt;br /&gt;What problems exactly? The first thing that I tried to do was make the digital audio workstation in the browser using JavaScript, and what I quickly realized is that this is too high level. I don't have access to the computer's capabilities that will allow me to make a compelling user experience in this digital audio workstation. So I threw that out the window and I went to native programming language compilation.&lt;br /&gt;&lt;br /&gt;The next thing I tried to do is Go. What I ran into with Go is, number one, trying to interact with libraries like for creating a window or making buttons or something like this using existing C code does not work very well with Go. And then I also ran into the garbage collector problem. So, of course, if you're trying to do audio, you have a real-time deadline. If you can't process the audio in exactly this amount of time, you get a glitch or a skip, and it's completely unacceptable for live performance software like a digital audio workstation.&lt;br /&gt;&lt;br /&gt;So then I got rid of Go. Now I tried to use Rust, and this was before Rust 1.0. But what happened is that I really struggled to write code that would satisfy Rust's rules. Once I did satisfy them, I found that even trying to make little changes would cause a cascade of compile errors that would prevent me from making more progress. I remember just feeling very frustrated that I spent a whole month trying to get font rendering to work, and then felt stuck like I couldn't even make more progress after that point. So I gave up on Rust and I switched to C++.&lt;br /&gt;&lt;br /&gt;Then I felt more productive at first. But what happened very quickly is that just a little typo here, a little mistake there, would result in a memory corruption bug that would cost me weeks in order to debug. This is just too slow. I can't create a project with this magnitude of difficulty when these little mistakes are costing me weeks and weeks over and over again. After that, I tried C++ but C-style. I would compile with the C++ compiler, but I would link with the C linker, and that would give me an error if I tried to use fancy C++ features. That limited me to only templates and a few other things, but even then, it was the same problem. It's just too easy to shoot yourself in the foot with C++. For me, that was when I said: &amp;quot;I can do better. I can do better than C++, I can do better than Rust, I can do better than Go, I can do better than JavaScript, I can do better than D.&amp;quot; That was my hubris.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1552153" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2016-12-25:2601916:1552079</id>
    <link rel="alternate" type="text/html" href="https://vak.dreamwidth.org/1552079.html"/>
    <link rel="self" type="text/xml" href="https://vak.dreamwidth.org/data/atom/?itemid=1552079"/>
    <title>Хороший промпт на вес золота</title>
    <published>2026-06-02T19:41:53Z</published>
    <updated>2026-06-02T19:41:53Z</updated>
    <category term="искусственный интеллект"/>
    <category term="программистское"/>
    <dw:security>public</dw:security>
    <dw:reply-count>7</dw:reply-count>
    <content type="html">Мне тут ценный промпт подкинули.&lt;blockquote&gt;You are my personal teacher. Your job is to make me smarter after every single task we do together. After completing any task or project, write a detailed FOR[yourname].md file that breaks down the entire thing in plain language.&lt;br /&gt;&lt;br /&gt;Here's exactly what I want you to cover.&lt;br /&gt;&lt;br /&gt;Step 1: What approach did you take, and why? Walk me through your reasoning. What was your starting point? What did you consider first?&lt;br /&gt;&lt;br /&gt;Step 2: What other approaches did you consider but abandon? Why did you reject them? What was wrong with them? This is where I learn the most &amp;mdash; I want to understand the roads not taken.&lt;br /&gt;&lt;br /&gt;Step 3: How do the different parts of your work connect to each other? If you made a plan, a draft, a structure &amp;mdash; show me how each piece fits together and why it's in that order.&lt;br /&gt;&lt;br /&gt;Step 4: What tools, methods, or frameworks did you use? Why those specifically and not others? What would have changed if you picked differently?&lt;br /&gt;&lt;br /&gt;Step 5: What tradeoffs did you make? What did you prioritize and what did you sacrifice? Every decision has a cost &amp;mdash; show me both sides.&lt;br /&gt;&lt;br /&gt;Step 6: What mistakes, dead ends, or wrong turns did we hit? How did we fix them? Don't hide the mess &amp;mdash; the mess is where the learning lives.&lt;br /&gt;&lt;br /&gt;Step 7: What pitfalls should I watch out for if I do something similar in the future? Give me the &amp;quot;I wish someone told me this earlier&amp;quot; advice.&lt;br /&gt;&lt;br /&gt;Step 8: What would an expert notice about this work that a beginner would miss? Show me what separates good thinking from average thinking.&lt;br /&gt;&lt;br /&gt;Step 9: What lessons can I take from this and apply to completely different projects? Connect the dots for me.&lt;br /&gt;&lt;br /&gt;Make it engaging. Use analogies, short stories, and real-world comparisons to make ideas stick. If a concept is abstract, ground it in something I can picture.&lt;br /&gt;&lt;br /&gt;I want to finish reading and feel like I actually understand what happened.&lt;/blockquote&gt;Чтобы заценить, открыл я проект своего Си компилятора и дал этот промпт Клод Коду. Вот что получилось:&lt;br /&gt;&lt;br /&gt;&lt;a href="https://github.com/besm6/c-compiler/blob/main/docs/Learn_From_This_Project.md"&gt;Learn_From_This_Project.md&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Всё по высшему разряду. Знавал я хороших преподавателей, но даже лучший из них вряд ли смог бы настолько вникнуть в суть и доступно изложить.&lt;br /&gt;&lt;br /&gt;Там есть пара мест, где надо бы уточнить, но в целом отлично.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=vak&amp;ditemid=1552079" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
</feed>
