The Easy Language

Oct. 8th, 2025 01:00
vak: (Знайка)
[personal profile] vak
Помните книжку Этюды для программистов? Там в предпоследней главе было крышесносное задание: построить компилятор для паскалеподобного языка.
Easy Does It
                   or...
A COMPILER FOR AN
ALGEBRAIC LANGUAGE

A compiler is always a large program. To write one from scratch, even in a pedagogical environment, is a major undertaking. Although Easy is designed to reduce the pain while providing as much enlightenment as possible, this still is the hardest problem in the book. Do not tackle it unless you (and some helpful friends) have plenty of time and energy.

THE EASY LANGUAGE

Easy is a general-purpose, procedural, algebraic programming language. Its roots lie in ALGOL, ALGOL 68, and PASCAL. Like them, it is designed to be compiled, loaded, and executed on a reasonably conventional computer (the EC-1 described in Chapter 25 is a good example). The syntax is described by a context-free grammar suitable for parsing by LR(1) techniques. The semantics are similar to the languages described above, and we will let an informal description suffice, trusting to the reader’s skill to fill any gaps. In the text below, logically connected portions of the grammar are described with the associated semantics.
Так вот, один гениальный человек ([personal profile] begoon) такой компилятор зафигачил. Исходники проекта: github.com/begoon/easy

Пример кода на языке Easy, игра Жизнь: life.easy

Компилируем, запускаем:
git clone https://github.com/begoon/easy.git
cd easy
node easyc.ts life.easy
cc life.c -o life -I.
./life
Получаем:
** [ EASY LIFE ] ***************************************************************** 
* xx *
* xx xx *
* x x xxx *
* xx x xxx *
* x x x xx *
* xx x x x xx *
* xxx x x *
* x xxx xxx *
* xxxxx xx xx *
* xx x x x *
* x x xx *
* x xx *
* xxx *
* x *
* x xx x *
* xxx xxx x x *
* x x x *
* x x xx *
* x x *
* *
* *
* *
* xx *
* xx xx *
* xx *
**********************************************************************************
GENERATION: 104

coteditor

Oct. 7th, 2025 22:34
vak: (Знайка)
[personal profile] vak
Хороший текстовый редактор должен иметь отношение к котам. 😀 Вызывается командой "cot". Но только на маке. Устанавливается командой "brew install coteditor". Из удобств: легко настраивать расцветку синтаксиса для ранообразных файлов и языков программирования.
Попросил Грока, он мне быстренько наваял описание синтаксиса Алгола 60 для которедактора: Algol 60.yml.

vak: (Путиномедвед)
[personal profile] vak
Герман Обухов, "Большая ложь маленького человечка: что скрывает Путин"

Официальные источники гласят: Владимир Владимирович Путин родился 7 октября 1952 года в Ленинграде в семье рабочих. Отец — Владимир Спиридонович Путин, родился в 1911 году в деревне Поминово Тверской губернии. Мать — Мария Ивановна Путина (урождённая Шеломова), родилась также в 1911 году в деревне Заречье Тверской губернии, где и познакомилась со своим будущим мужем.

Это чистокровный фейк. На самом деле Володя Путин родился в больнице небольшого городка Очёр, Пермского края. Его настоящая мать жила до недавнего времени в грузинском селе Метехи, её зовут Вера Николаевна Путина - Осепашвили. Она родилась в 1926 году в селе Терехино, рядом с маленьким городом Очёр. В техникуме Очёра она познакомилась с человеком, которого звали Платон Привалов. Позже, будучи беременной, она случайно узнала, что он женат и ей пришлось вернуться к своим родителям в Терехино. Вскоре родился наш Вова, шел 1950 год, а не 1952.

дальше )

Google Pixel Tablet

Oct. 6th, 2025 23:02
vak: (Линукс)
[personal profile] vak
Лайфхак:Получаем симпатичный и удобный в работе компьютер для программиста. Настраиваем вход через SSH и можем пользоваться удалённо. Механическая клавиатура в ретро стиле IBM PC AT добавляет колорита. Через Alt-Tab переключаемся на обычные андроидные приложения.



Подробности конфигурации:Меряем скорость:
$ dhrystone

Dhrystone Benchmark, Version 2.1 (Language: C)
...
Nanoseconds for one run through Dhrystone: 21.1    
            Million Dhrystones per Second: 47.394  
                                    DMIPS: 26974.1
Это на 40% быстрее Raspberry Pi 5. Или в 3.5 раза быстрее Raspberry Pi 4.

Сравнительная таблица: vak.dreamwidth.org/1159708.html
juan_gandhi: (Default)
[personal profile] juan_gandhi

Напоролся на решение префекта (кавалера национального ордена "За Заслуги") на тему "Список лиц, уполномоченных проводить обучение кинологов и владельцев собак первой и второй категории".

В списке четыре человека (перечислять не буду).

vak: (Українець)
[personal profile] vak
Как был сделан козак в формате SVG? Расскажу по пунктам. Этим методом можно векторизовать любое (почти) растровое изображение. Из инструментов понадобятся magick, potrace и Python с пакетом svgutils.

1. Берем растровую картинку, которую будем векторизовать. В моём случае это kozak.png. Желательно чтобы картинка была в мультяшном стиле, то есть нарисована небольшим количеством цветов. Такой стиль ещё называют комиксным, или манга.

2. Определяем количество различных цветов в картинке. У козака четыре цвета: чёрный, белый, красный (шаровары) и бежевый (лицо, руки).

3. Упрощаем картинку, уменьшая количество цветов до 4 и убирая шум отдельных пикселей. Смотрим, какие цвета получились.
$ magick kozak.png -despeckle -colors 4 simple.png
$ magick simple.png -format %c histogram:info: | sort -n -r
1178809: (254,254,254) #FEFEFE srgb(254,254,254)
179431: (6,5,5) #060505 srgb(6,5,5)
117463: (214,91,69) #D65B45 srgb(214,91,69)
97161: (224,192,156) #E0C09C srgb(224,192,156)
4. Зная точные значения цветов, разделяем цветную картинку на три чёрно-белые: каждый цвет отдельно. Фоновым делаем белый цвет.
white="#FEFEFE"
black="#060505"
red="#D65B45"
beige="#E0C09C"
magick simple.png -fill black -opaque $black \
-fill white -opaque $white \
-fill white -opaque $beige \
-fill white -opaque $red black-layer.pbm
magick simple.png -fill black -opaque $red \
-fill white -opaque $white \
-fill white -opaque $black \
-fill white -opaque $beige red-layer.pbm
magick simple.png -fill black -opaque $beige \
-fill white -opaque $white \
-fill white -opaque $black \
-fill white -opaque $red beige-layer.pbm
5. Векторизуем каждый из слоёв в отдельный SVG file, восстанавливая цвета близко к исходным.
potrace black-layer.pbm -s --turdsize 15                   -o black-layer.svg
potrace beige-layer.pbm -s --turdsize 15 --color "#EFAC78" -o beige-layer.svg
potrace red-layer.pbm -s --turdsize 15 --color "#C21919" -o red-layer.svg
6. Объединяем слои в одну картинку. Задействуем Питон и пакет svgutils.
from svgutils.compose import *
from svgutils.transform import fromfile

width, height = fromfile('black-layer.svg').get_size()
Figure(width, height, # Canvas size
SVG('beige-layer.svg'), # Bottom layer
SVG('red-layer.svg'), # Middle layer
SVG('black-layer.svg'), # Top layer
).save("kozak.svg")
Результат можно видеть здесь: kozak.svg. Все скрипты собраны в кучу на Гитхабе: sergev/vak-opensource/tree/master/utilities/vectorize.
vak: (Знайка)
[personal profile] vak
Какой нынче имеется простой способ писать документацию? Чтобы не заморачиваться, и чтобы сразу и HTML вариант и PDF вариант образовывались.

Есть такой метод! Показываю. Ключевые моменты: Pandoc и Tectonic.

Документы пишем в формате Markdown. Выглядит как простой текст, без мудрёных команд. Можно вставлять рисунки, делать таблицы, использовать математические формулы. Вот пример документа:
# Задача

В школьной столовой Петя заметил, что количество котлет на тарелке уменьшается по формуле
$$
K(t) = K_0 - t,
$$
где $K_0$ — начальное число котлет, а $t$ — время в минутах, прошедшее с момента, как Петя сел за стол.

Если у Пети было 5 котлет, то через сколько минут Петя обратится к маме со словами:
*«Мам, а добавки можно?»*

# Таблица умножения

| | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
|---|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
| 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 2 | 2 | 4 | 6 | 8 | 10| 12| 14| 16| 18|
| 3 | 3 | 6 | 9 | 12| 15| 18| 21| 24| 27|
| 4 | 4 | 8 | 12| 16| 20| 24| 28| 32| 36|
| 5 | 5 | 10| 15| 20| 25| 30| 35| 40| 45|
| 6 | 6 | 12| 18| 24| 30| 36| 42| 48| 54|
| 7 | 7 | 14| 21| 28| 35| 42| 49| 56| 63|
| 8 | 8 | 16| 24| 32| 40| 48| 56| 64| 72|
| 9 | 9 | 18| 27| 36| 45| 54| 63| 72| 81|

![](kozak.svg){width=100}
Преобразуем это дело в HTML:
pandoc example.md -o example.html --standalone --mathjax
Получаем:


Аналогичным образом соорудим PDF:
pandoc example.md -o example.pdf --pdf-engine=tectonic --template=template.tex
Сравниваем:


Стиль PDF-документа можно задавать, меняя template.tex. Для HTML тоже есть аналогичный флаг --css=style.css.
juan_gandhi: (Default)
[personal profile] juan_gandhi

https://memuarist.com/ru/members/509.htm

Местами довольно нудно, особенно про Сорбонну, где все употребляют героин да кокаин (30-е).

"Мама купила домик в Истре за 10 тысяч, которые я получила за Борю. Илье телеграмма из Владивостока: будто Боря в лагере. Оказалось очередная утка, но сколько волнения!

Радио всего мира отвратительно!

Я должна ехать от ВОКСа в Киев или Таллинн.

Гостил Гриша, очень похож на Любу. Я устала от «семейной» жизни.

Мир занят тем, чтобы мы не получили атомной бомбы. По Лондону проехал первый автомобиль на атомной энергии.

Я позорно халтурю для радио, самой тошно, но нужны деньги и в большом количестве.

К Фане приехал человек от брата, брат едет в Палестину." (это май 1945-го)

"Сельвинского послали в армейскую газету за то, что выступил с защитой символистов."

"Веселое беспечное население Одессы недовольно приходом советских войск: при румынах — частная торговля, было полно товаров, а какая мануфактура! Евреев они, правда, расстреляли, но сделали это под нажимом немца, а сами никому зла не желали.

"В Москве идет с успехом «Мадемуазель Нитуш». Еще модны собольи пелерины. Под Новый год творилось безумие — всем хотелось встречать: елки и жратва. Видимо, люди соскучились по «хорошей жизни», а война так далеко. "

"Фаня рассказала о себе. Она жила в Дубровицах. Их вывели из гетто (где они все, от мала до велика, вязали теплые вещи для германской армии) на площадь, на которой стояли пулеметы. Отец крикнул: «Бежим!», — но мать от ужаса не могла сдвинуться, а обе сестры Фани повисли на ней. Фаня мчалась за отцом через какие-то огороды до самого леса. Спасшихся оказалось несколько человек. Отец отвел девочку на хутор к знакомому сапожнику, который покупал у него кожу. Отец Фани был кошерным мясником. Два его сына, как полагается в еврейской семье, учились в городе, в Ровно. Их судьба неизвестна, но мне кажется, что их нет в живых. Отец ее был убит бендеровцами."

"За это время взяли Париж. Взяли сами французы. У нас замалчивают. Илья поет «Марсельезу»."

"Во мне есть еврейское свойство — находить, что все плохо."

Там много всякого. Но училась она в Сорбонне.

Из интервью, 1995-го года:

"

— Ваши любимые женские образы в поэзии?

—           Татьяна в «Евгении Онегине» Пушкина.

— Ваш любимый художник?

—           Марке.

"

Векторный козак

Oct. 3rd, 2025 22:46
vak: (Українець)
[personal profile] vak
Сварганил козака в формате SVG: пользуйтесь кому надо.

Tectonic и SVG

Oct. 3rd, 2025 12:17
vak: (Знайка)
[personal profile] vak
Как нарисовать дерево Штерна—Броко? Задействуем TeX для прикола. Вот такой малопонятный код мне Грок насоветовал.
\documentclass{standalone}
\usepackage{forest}

\begin{document}
\begin{forest}
  Stern Brocot/.style n args={5}{%
    content=$\frac{\number\numexpr#1+#3\relax}{\number\numexpr#2+#4\relax}$,
    if={#5>0}{% true
      append={[,Stern Brocot={#1}{#2}{#1+#3}{#2+#4}{#5-1}]},
      append={[,Stern Brocot={#1+#3}{#2+#4}{#3}{#4}{#5-1}]}
    }{}}% false (empty)
[,Stern Brocot={0}{1}{1}{0}{5}]
\end{forest}
\end{document}
Давно не брал я в руки шашки ТеХ. Когда-то по молодости много ним занимался, и всегда с ТеХом было сложно. Но давеча появился новый инструмент: Tectonic. Народ упёрся и наваял (на Rust!) поверх старого доброго кнутовского ТеХа удобную обёртку. Ставится командой brew install tectonic на маке, или sudo snap install tectonic в Линуксе. Превращаем .tex в .pdf:
tectonic tree.tex
Полученный файл PDF можно для удобства превратить в векторный рисунок SVG. Его можно смотреть любым браузером или вставлять в документы:
pdftocairo -svg tree.pdf tree1.svg
svgcleaner tree1.svg tree2.svg
Здесь pdftocairo создаёт SVG, а svgcleaner его оптимизирует, уменьшая размер. Вот такое пятиуровневое дерево получается:



Если в теховском исходнике в третьей строчке с конца заменить {5} на {8}, получим восемь уровней. Кликайте на картинку, зумьте и проворачивайте вправо-влево:

Review: TooHot

Oct. 3rd, 2025 14:55
jducoeur: (Default)
[personal profile] jducoeur

Having just finished the leftovers, a few conclusions about TooHot, a new restaurant in Harvard Square:

  • Far as I can tell, it is seriously authentic Szechuan, not something one often comes across in these parts.
  • As a consequence, the name of the restaurant is accurate. The waiter asked whether I wanted it "mild", and I said no, I like spicy, so "medium" maybe? As I suspected, "medium" is somewhere near the top of my spice tolerance: this place really likes its peppers.
  • It's already impressively popular (after being open just a few months), especially with people who are actually Chinese (based on glancing at the crowd) -- at 6pm on a Tuesday, they had to think about whether they could seat three people without reservations.
  • The specialties of the house are also pretty authentic.
  • Authentic Szechuan apparently involves a lot of frog.
  • Frog mostly tastes like chicken, except with a lot more bones.
  • So many bones.
  • Too many bones.

So overall: excellent restaurant, especially if you like spicy food. But I think the frog dishes may be more effort than I'm willing to put in.

Дроби вам

Oct. 2nd, 2025 23:39
vak: (Знайка)
[personal profile] vak
Оказывается, есть такой алгоритм: Штерна—Броко называется. Простым, но неочевидным способом вычисляет все неприводимые дроби (включая целые числа). Очень остроумно. Мне раньше не попадался почему-то.

1. Создаем список из двух дробей:


Не шарахайтесь от деления на единицу и нуль, так нужно.

2. Берём соседнюю пару дробей и между ними вставляем новую дробь. Пусть исходная пара была:


Новая дробь будет:


3. Повторяем итеративно до бесконечности.

Нетрудно доказать, что всякая неприводимая дробь будет рано или поздно вычислена. При этом никакое значение не повторится дважды.

белый дыбр

Oct. 2nd, 2025 20:20
juan_gandhi: (Default)
[personal profile] juan_gandhi

Снилось мне ой. Лететь собрались в Норвегию - я, жена, Стёпа и Иван Тарасов (в жж он был юзер navi). А в аэропорту выяснилось, что у меня посадочного нет - забыл взять. Ну поехал. Только почту я на работу получал, а я уже неделю как не работаю. Поехал на работу. Это оказалось в том интернате в Ленинграде, где я учился. Захожу такой, спрашиваю у секретарши. А она такая: "вся почта у Петренко." А что за Петренко, - говорю, -директор же не Петренко! -Петренко - это председатель. -И где он? -На втором этаже. Захожу там на втором этаже в секретариат, секретарш полная комната. Стучу по столу у главной. При этом разбиваю экран своего телефона. Мне выдают почту, где, в пачке, и посадочный. Ну я поехал в аэропорт. А там надо по дороге с трамвая, после Васина, то ли на десятый автобус, то ли на десятый троллейбус. Захожу в троллейбус. Смотрю на телефон - а он только помаргивает, сломан же. Спрашиваю у мужика, у него двое часов; он посмотрел на правой руке, где у него дамские. Полшестого. Ой бля, мой самолёт в полпятого. Ну и чо теперь? Куда податься? Телефон не работает.

Ну и проснулся.

А так-то сегодня весело. Мы с Клодом программировали ("мы пахали"). Первую часть проектика не доделали, но близко. Завтра. Жена-то с утра ходила в художественную студию. По-моему, по-русски это называлось "изостудия".

К двум я пошёл в класс; там уже собрались "все такие наши".

В класс набилось человек типа двадцать, в том числе шесть мусульманок. Как их мужья отпускают? Они такие весёлые, улыбаются, чуть ли не глазки строят.

Кристин некоторых переспрашивает. "Vous êtes Bob ?", спрашивает Боба. "Vous êtes Bob", отвечает Боб.

А потом, потом, Кристин таки сделала ошибку, написав chanté вместо chanter.

И ещё писали сочинение: написать письмо кому-нибудь из твоих profs, благодарность за науку, и всё такое. Чота я долго думал. Написал Евгении Георгиевне Воробьёвой, которая нам английский вдалбливала в интернате (см. выше). Она за урок умудрялась каждого из 20 с лишним человек выдернуть отвечать раза так три. Надрессировала нас - я с тройки в начале девятого класса перекатился на пятёрку в конце десятого. И мы с Ником Шекспира переводили, сонеты. From fairest creatures we desire increase... etc. Или "Take all my loves my love..." При этом Евгения Георгиевна была секретарём парткома и жаловалась нам (мне и жене, потом уже: мы соседями были - что наш интернат занимает первое место по эмиграции выпускников. Перегнали 239 и тридцадку. Вау. Мы гордились. А на самом-то деле кто уехал-то, из нашего выпуска? Боб Иохин, Юра Докшицер, Лия Гуревич, Лёня Райз, да я, грешный. При этом Юра как бы вернулся уже.

А потом чо, а потом ничо. Класс будут разбивать на два, на уровни B1 и A2. Беён - это я туда пойду. У меня какой-то наконец прорыв произошёл, я понимаю, что мне говорят. Если не дети говорят, конечно. Язык детей - это вообще особое, верно?

Затем мы с женой обедали; это Франция; такого качества свинины в Америке не купишь (я думаю).

Ну и опять с Клодом дальше программировали. Ему-то это минутное дело, а мне думай, как дальше там это.

И пошли погулять, уже на закате (нет, не с Клодом).

И сейчас остаётся доделать дуолинго, да и спать. А то поздно.

Google Pixel 7 Pro

Oct. 2nd, 2025 12:51
vak: (Default)
[personal profile] vak
Вдогонку к таблету Fire HD протестирую Термукс на мобильнике. Имеем: fastfetch, cpuinfo и lscpu.
OS: Android REL 16 aarch64
Host: Google Pixel 7 Pro
Kernel: Linux 6.1.134-android14-11-g66e758f7d0c0-ab13748739
Uptime: 23 hours, 32 mins
Packages: 126 (dpkg)
Shell: bashc
WM: WindowManager (SurfaceFlinger)
Terminal:
CPU: GS201 (8) @ 2.85 GHz
GPU: Mali-G710 [Integrated]
Memory: 8.50 GiB / 11.17 GiB (76%)
Swap: 3.00 GiB / 3.00 GiB (100%)
Disk (/): 1021.93 MiB / 1.00 GiB (100%) - ext4 [Read-only]
Disk (/storage/emulated): 89.67 GiB / 109.91 GiB (82%) - fuse
Local IP (rmnet16): 100.65.111.18/32
Local IP (wlan0): 192.168.86.29/24
Locale: en_US.UTF-8
Меряем скорость:
$ dhrystone

Dhrystone Benchmark, Version 2.1 (Language: C)
...
Nanoseconds for one run through Dhrystone: 15.5
            Million Dhrystones per Second: 64.447
                                    DMIPS: 35731.5
Это почти в 5 раз быстрее, чем Raspberry Pi 4. Или почти в 2 раза быстрее Raspberry Pi 5.

Сравнительная таблица: vak.dreamwidth.org/1159708.html

Клод отжигает

Oct. 2nd, 2025 17:56
juan_gandhi: (Default)
[personal profile] juan_gandhi
Я его прошу вставить в каждый файл линк на следующий. А он такой - а давайте я напишу  питоний скрипт про это и выполню его! Дык, мужик, ты уже не интёрн, ты уже классный пацан! Давай!
vak: (Знайка)
[personal profile] vak
Купил я пять лет назад амазонский таблет, побаловаться с Андроидом. Тогда на распродаже это дело стоило $80. Ставил туда кучу разного софта, всё работало, но "не радовало". 😀 По интернету бродить и фильмы смотреть удобнее с айпада, а книжки читать приятнее на черно-белом Киндле.



Собирался уже выбросить, но решил напоследок глянуть на тему Линукса. Поставить туда полноценный Линукс не удаётся, слишком всё защищено. Однако имеется Termux с входом через SSH. Я собрал там Bash Commander, текстовый редактор, все дела. Компиляторы работают, даже Rust, Golang и Zig. Приятно посмотреть.

Из конфигурации Термукс мало что позволяет смотреть. Всё что имеем: fastfetch и cpuinfo.
OS: Android REL 9 armv8l
Host: Amazon KFMAWI
Kernel: Linux 4.4.146+
Uptime: 19 hours, 7 mins
Packages: 139 (dpkg)
Shell: bashc
WM: WindowManager (SurfaceFlinger)
Terminal: /dev/pts/1
CPU: 2 x MT8183 (8) @ 1.99 GHz
GPU: Mali-G72 MP3 [Integrated]
Memory: 1.15 GiB / 1.75 GiB (66%)
Swap: 230.35 MiB / 512.00 MiB (45%)
Меряем скорость:
$ dhrystone

Dhrystone Benchmark, Version 2.1 (Language: C)
...
Nanoseconds for one run through Dhrystone: 67.7    
            Million Dhrystones per Second: 14.768  
                                    DMIPS: 8405.0
Это на 8% быстрее, чем Raspberry Pi 4. Или 44% от скорости Raspberry Pi 5. Вроде и неплохой девайс. Непонятно только, куда приспособить. Хотя приятная особенность в том, что это 32-битная система. Сам процессор-то ARM64, но работает в 32-битном режиме. Где нынче ещё найдёшь 32-битный Андроид: редкость!

Сравнительная таблица: vak.dreamwidth.org/1159708.html

Lynx SAI50 MLSoC Modalix Module

Oct. 1st, 2025 12:25
vak: (Робот 1)
[personal profile] vak
Наши чипы пошли в продажу в Европе. Заказывайте модули SOM через Энклюстру: enclustra.com/en/products/edge-ai-mlsoc/lynx-sai50/

Клод, мой интёрн

Oct. 1st, 2025 18:32
juan_gandhi: (Default)
[personal profile] juan_gandhi

Сейчас я пофиксил один тест кейс, и строго попинал Клода, чтоб он пофиксил остальные, которые стали рушиться после его переделок.

Трудится, шуршит. 

UPD. И тут он, посреди работы, сообщил, что моя вчерашняя пятёра кончилась, и попросил ещё. Дал ему 25 баксов. Говорят, на моём дешёвом аккаунте можно до 100 баксов в месяц платить этому боту.

А так ничо, работает. Построже с ними надо только.

vak: (Украина)
[personal profile] vak
Рідна Україна переможе!

vak: (Default)
[personal profile] vak
Из статьи biomarkerres.biomedcentral.com/articles/10.1186/s40364-025-00831-w

…Данное крупномасштабное ретроспективное исследование на уровне популяции, проведённое в Сеуле (Южная Корея), было направлено на оценку совокупной заболеваемости и последующих рисков развития всех видов рака в течение 1 года после вакцинации против COVID-19. Данные о 8 407 849 человек за период с 2021 по 2023 год были получены из базы данных Национального медицинского страхования Кореи. Участники были разделены на две группы в зависимости от их статуса вакцинации против COVID-19. Риски возникновения онкологических заболеваний оценивались с использованием многовариантных моделей пропорциональных рисков Кокса, результаты представлены в виде коэффициентов риска (HR) и 95% доверительных интервалов (CI). Через год после вакцинации было выявлено значительное повышение риска рака щитовидной железы (HR = 1,351; 95% CI = 1,206–1,514), желудка (HR = 1,335; 95% CI = 1,130–1,576), колоректального рака (HR = 1,283; 95% CI = 1,122–1,468), лёгких (HR = 1,533; 95% CI = 1,254–1,874), молочной железы (HR = 1,197; 95% CI = 1,069–1,340) и предстательной железы (HR = 1,687; 95% CI = 1,348–2,111). В зависимости от типа вакцины: cDNA-вакцины были связаны с повышением риска рака щитовидной железы, желудка, толстой кишки, лёгких и предстательной железы; mRNA-вакцины — с повышением риска рака щитовидной железы, толстой кишки, лёгких и молочной железы; гетерологичная вакцинация — с повышением риска рака щитовидной и молочной железы.

Повышение риска рака:
  • щитовидной железы - на 35%
  • желудка - на 34%
  • толстого кишечника - на 28%
  • лёгких - на 53%
  • молочной железы - на 20%
  • предстательной железы - на 69%

Profile

gemelen: (Default)
gemelen

June 2025

M T W T F S S
      1
2345678
9101112131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Oct. 8th, 2025 09:19
Powered by Dreamwidth Studios