Forwarded from Заповедник Матвеева
This media is not supported in your browser
VIEW IN TELEGRAM
Насколько у художника должно быть развито чувство пропорции, чтобы так рисовать
Forwarded from Nexi's channel
Брэм Моленар, автор редактора vim, скончался 3 августа в возрасте 62 лет от внезапно обострившейся болезни.
memory heap
https://groups.google.com/g/vim_announce/c/tWahca9zkt4
Третьего августа 2023-го года скончался Брэм Моленар, создатель редактора Vim — об этом было сообщено в списке рассылки редатора Vim пятого августа. Похороны состоятся в Недерландах.
Брэм Моленар — Голландский разработчик ПО и активист, который также был известен, как создатель, сопровождающий и пожизненный великодушный диктатор (benevolent dictator for life) текстового редактора Vim.
В дополнении к работе над Vim, Брэм Моленар также основал и поддерживал НКО "International Child Care Fund Holland" (ICCF Holland) — небольшую некоммерческую организацию, базирующуся в Нидерландах, которая помогала жертвам СПИДа в Африки. В бедных районах Африки множество взрослых является жертвами СПИДа и после их смерти дети остаются сиротами. Проект ICCF Holland нацелен на предоставление поддержки таким детям — в том числе, оплата обучения в школе и медицинское обслуживание.
С 1994 года Брэм Моленар выступал волонтёром от проекта ICCF Holland в городе Кибаале (Уганда), помогая решить вопросы с обеспечением водой и санитарными условиями. В 1995-м году Брэм Моленар сделал VIM "charityware" — то есть, редактор распростанялся бесплатно и свободно, но пользователям, решившим поддержать развитие редактора, предлагалось сделать донат в ICCF Holland. По приблизительным оценкам, удалось собрать $2000 за 1997-й год, $4000 за 1998-й $7000 а в 1999-м таким образом.
Брэм Моленар также был участником Голландской группы пользователей Linux (NLUUG), от которой он получил награду на двадцать пятую годовщину существования группы за вклад в её развитие, а также за развитие редактора Vim и вклад в развитие свободного ПО в целом.
Фамилия "Moolenaar" буквально переводится, как "Мельник" — согласно информации на странице Брэма Моленара. Он поддерживал на сайте список людей с фамилией "Moolenaar", в который мог добавиться любой через специальную форму.
Сайт Брэма Моленара и его копия в Архиве интернета (archive.org.)
Большая часть информации для поста взята и переведена из английской страницы Wikipedia о Брэме Моленаре и связанных страниц.
Брэм Моленар — Голландский разработчик ПО и активист, который также был известен, как создатель, сопровождающий и пожизненный великодушный диктатор (benevolent dictator for life) текстового редактора Vim.
В дополнении к работе над Vim, Брэм Моленар также основал и поддерживал НКО "International Child Care Fund Holland" (ICCF Holland) — небольшую некоммерческую организацию, базирующуся в Нидерландах, которая помогала жертвам СПИДа в Африки. В бедных районах Африки множество взрослых является жертвами СПИДа и после их смерти дети остаются сиротами. Проект ICCF Holland нацелен на предоставление поддержки таким детям — в том числе, оплата обучения в школе и медицинское обслуживание.
С 1994 года Брэм Моленар выступал волонтёром от проекта ICCF Holland в городе Кибаале (Уганда), помогая решить вопросы с обеспечением водой и санитарными условиями. В 1995-м году Брэм Моленар сделал VIM "charityware" — то есть, редактор распростанялся бесплатно и свободно, но пользователям, решившим поддержать развитие редактора, предлагалось сделать донат в ICCF Holland. По приблизительным оценкам, удалось собрать $2000 за 1997-й год, $4000 за 1998-й $7000 а в 1999-м таким образом.
Брэм Моленар также был участником Голландской группы пользователей Linux (NLUUG), от которой он получил награду на двадцать пятую годовщину существования группы за вклад в её развитие, а также за развитие редактора Vim и вклад в развитие свободного ПО в целом.
Фамилия "Moolenaar" буквально переводится, как "Мельник" — согласно информации на странице Брэма Моленара. Он поддерживал на сайте список людей с фамилией "Moolenaar", в который мог добавиться любой через специальную форму.
Сайт Брэма Моленара и его копия в Архиве интернета (archive.org.)
Большая часть информации для поста взята и переведена из английской страницы Wikipedia о Брэме Моленаре и связанных страниц.
:wq
Forwarded from Вееzzаrе
Оу май! Эта песня играла в конце десятого эпизода второго сезона и, если я правильно помню, создатели сериала хотели, чтобы вместа оригинала играл кавер, где некоторые слова были бы заменены на слово "Squanch".
[link]
[link]
YouTube
Rick Sanchez - Hurt - Johnny Cash (AI Cover)
🚀 Rick Sanchez Sings Hurt - Johnny Cash (AI Cover) 🌵
Create AI Songs with https://voicify.ai/?ref=AIMusicGuy
🎵 Brace yourself for an emotionally charged performance as Rick Sanchez takes on the hauntingly beautiful song "Hurt" by Johnny Cash in this extraordinary…
Create AI Songs with https://voicify.ai/?ref=AIMusicGuy
🎵 Brace yourself for an emotionally charged performance as Rick Sanchez takes on the hauntingly beautiful song "Hurt" by Johnny Cash in this extraordinary…
memory heap
Переписываю детерминированные конечные автоматы (ДКА) парсеров в проекте Guile-DSV с написанного вручную кода на Guile-SMC. По ходу дела дорабатываю описание ДКА в формате PlantUML, т.к. именно из этого описания теперь будет герерироваться программный код…
Сравнение скорости обработки текстовых данных через Guile-DSV.
В первом случае (верхняя синяя линия на графике) тест проходил на оригинальной версии Guile-DSV с рукописным ДКА, а во втором случае (оранжевая нижняя линяя на графике) — с ДКА, сгенерированным через Guile-SMC. Отладочный лог выключен. Используется реальное время работы программы, в секундах.
Размер тестового текстового файла:
https://gist.github.com/artyom-poptsov/d53c10875e85cb735dd34e5a0f428bbe
#dev #guile #dsv
В первом случае (верхняя синяя линия на графике) тест проходил на оригинальной версии Guile-DSV с рукописным ДКА, а во втором случае (оранжевая нижняя линяя на графике) — с ДКА, сгенерированным через Guile-SMC. Отладочный лог выключен. Используется реальное время работы программы, в секундах.
Размер тестового текстового файла:
$ wc datasets/covid.csvСкрипт сбора статистики:
53591 54463 3985948 datasets/covid.csv
$ du -h datasets/covid.csv
3,9M datasets/covid.csv
https://gist.github.com/artyom-poptsov/d53c10875e85cb735dd34e5a0f428bbe
#dev #guile #dsv
⚡1
memory heap
Сравнение скорости обработки текстовых данных через Guile-DSV. В первом случае (верхняя синяя линия на графике) тест проходил на оригинальной версии Guile-DSV с рукописным ДКА, а во втором случае (оранжевая нижняя линяя на графике) — с ДКА, сгенерированным…
Исправил ошибки в профилировщике детерминированных конечных автоматов из поставки Guile-SMC, исправления пойдут в следующий релиз.
Использование профилировщика на примере Guile-DSV:
Кусок файла
#dev #projects #guile #dsv #smc
Использование профилировщика на примере Guile-DSV:
$ dsv --log-driver file --log-opt=file=smc.log -F rfc4180 --to unix datasets/covid.csv > test.csv
$ smc profile smc.log
Total transitions: 1661324
Total time: 84173181 us
Stats:
read_quote: 30647003 us (36.4095 %)
read_quoted_field: 27615130 us (32.8075 %)
read_field_first_char: 23677038 us (28.1290 %)
add_row: 2233946 us (2.6540 %)
add_final_row: 35 us (.0000 %)
read_first_field_first_char: 29 us (.0000 %)
Кусок файла
smc.log:$ head smc.log
2023-08-10 21:19:05.522313 (DEBUG): [*] -> [read_first_field_first_char]
2023-08-10 21:19:05.522342 (DEBUG): [read_first_field_first_char] -> [read_quoted_field]
2023-08-10 21:19:05.522377 (DEBUG): [read_quoted_field] -> [read_quote]
2023-08-10 21:19:05.522427 (DEBUG): [read_quote] -> [read_field_first_char]
2023-08-10 21:19:05.522448 (DEBUG): [read_field_first_char] -> [read_quoted_field]
2023-08-10 21:19:05.522483 (DEBUG): [read_quoted_field] -> [read_quote]
2023-08-10 21:19:05.522508 (DEBUG): [read_quote] -> [read_field_first_char]
2023-08-10 21:19:05.522527 (DEBUG): [read_field_first_char] -> [read_quoted_field]
2023-08-10 21:19:05.522556 (DEBUG): [read_quoted_field] -> [read_quote]
2023-08-10 21:19:05.522585 (DEBUG): [read_quote] -> [read_field_first_char]
#dev #projects #guile #dsv #smc
GitHub
GitHub - artyom-poptsov/guile-smc: GNU Guile State Machine Compiler
GNU Guile State Machine Compiler. Contribute to artyom-poptsov/guile-smc development by creating an account on GitHub.
⚡1
Выпустил релиз Guile-SMC 0.6.2:
https://github.com/artyom-poptsov/guile-smc/releases/tag/v0.6.2
Ключевые изменения:
- Исправлена ошибка с процедурой
- Исправлена ошибка высчитывания отметок времени в модуле
- Исправлен рассчёт времени в модуле
- В модуль
- Теперь Guile-SMC позволяет задавать
- В модуле
- Обновлена документация.
Новый релиз обратно совместим с версиями 0.6.0 и 0.6.1.
#dev #projects #guile #smc
https://github.com/artyom-poptsov/guile-smc/releases/tag/v0.6.2
Ключевые изменения:
- Исправлена ошибка с процедурой
pre-action в модуле (smc context functional char): Теперь процедура во всех случаях возвращает контекст.- Исправлена ошибка высчитывания отметок времени в модуле
(smc trace-context). Теперь значение отметок времени всегда получается положительным, как и должно. При этом, если всё же обнаруживается уход времени в отрицательные значения, бросается ошибка.- Исправлен рассчёт времени в модуле
(smc cli command-profile) профайлера. Теперь профайлер Guile-SMC даёт правильные значения суммарного времени работы ДКА и времени для каждого отдельно взятого состояния.- В модуль
(smc context oop generic) добавлен недостающий модуль (smc core log). Его отсутствие приводило бы к ошибками при попытке использования (smc context oop generic).- Теперь Guile-SMC позволяет задавать
pre-action и post-action для ДКА прямо в PlantUML описании. Эти процедуры выполняются перед всеми остальными проверками для каждого состояния, и могут например использоваться для обновления счётчиков в контексте. Пример задания этих процедур в PlantUML файле описания ДКА:legend- Для класса
pre-action: custom-pre-action
post-action: custom-post-action
endlegend
<fsm> в модуле (smc fsm) теперь добавлены процедуры для задания pre-action (fsm-pre-action-set!) и post-action (fsm-post-action-set!). Также из модуля экспортированы процедуры fsm-pre-action и fsm-post-action для получения текущих значений pre-action и post-action соответственно.- В модуле
(smc core log) теперь регистрируется логгер по-умолчанию, под именем "guile-smc". Также добавлена процедура smc-log-default-logger.- Обновлена документация.
Новый релиз обратно совместим с версиями 0.6.0 и 0.6.1.
#dev #projects #guile #smc
GitHub
Release v0.6.2 · artyom-poptsov/guile-smc
Version 0.6.2
⚡1
Axis of Ordinary
The first room-temperature ambient-pressure superconductor? Discussion: 1. https://news.ycombinator.com/item?id=36864624 2. https://marginalrevolution.com/marginalrevolution/2023/07/claims-about-room-temperature-superconductivity.html Prediction market:…
Thunderf00t про нашумевший сверхпроводник LK-99:
https://youtu.be/p3hubvTsf3Y
Судя по этой информации, в этом LK-99 шума действительно больше, чем правды и пользы.
https://youtu.be/p3hubvTsf3Y
Судя по этой информации, в этом LK-99 шума действительно больше, чем правды и пользы.
⚡1
memory heap
Сравнение скорости обработки текстовых данных через Guile-DSV. В первом случае (верхняя синяя линия на графике) тест проходил на оригинальной версии Guile-DSV с рукописным ДКА, а во втором случае (оранжевая нижняя линяя на графике) — с ДКА, сгенерированным…
Провёл ещё один замер производительности Guile-DSV с новым ДКА, сделанным на базе Guile-SMC, используя датасет "Feed Grains: Yearbook Tables" на почти полмиллиона строк (498929 строк, если быть точным.)
Время на графиках в секундах.
Новая версия парсера работает быстрее старого на этом примере примерно в 15 раз.
Конечно, сорость обработки данных ещё зависит от самих данных и их формата. Например, парсер Unix-формата DSV работает быстрее, поскольку там нюансов меньше, и следовательно сам ДКА для Unix-формата проще.
#dev #projects #guile #dsv
Время на графиках в секундах.
Новая версия парсера работает быстрее старого на этом примере примерно в 15 раз.
Конечно, сорость обработки данных ещё зависит от самих данных и их формата. Например, парсер Unix-формата DSV работает быстрее, поскольку там нюансов меньше, и следовательно сам ДКА для Unix-формата проще.
#dev #projects #guile #dsv
⚡1
memory heap
Выпустил релиз Guile-SMC 0.6.2: https://github.com/artyom-poptsov/guile-smc/releases/tag/v0.6.2 Ключевые изменения: - Исправлена ошибка с процедурой pre-action в модуле (smc context functional char): Теперь процедура во всех случаях возвращает контекст.…
Guile-SMC 0.6.2 теперь в GNU Guix:
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=e28e76fc4ab2727a1bacbcfdead15298ea7d76fe
#gnu #guix #patches
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=e28e76fc4ab2727a1bacbcfdead15298ea7d76fe
#gnu #guix #patches