memory heap
375 subscribers
2.56K photos
525 videos
52 files
3.16K links
science ∩ art = wonder

all memory blocks here are allocated by @a_v_p

GitHub: https://github.com/artyom-poptsov
Mastodon: https://fosstodon.org/@avp

https://memory-heap.org/~avp/
Download Telegram
Выпустил релиз Guile-DSV 0.5.1 с возможностью вывода данных в формате DSV/CSV в формат таблиц Markdown, и также возможностью применять произвольный код на Scheme на каждую ячейку таблицы, и фильтровать строки/столбцы табличных данных.

#guile #scheme #projects #dsv
Суперкомпьютер Cray X-MP из 1982 г. выглядит так, как будто пришёл с ретро-футуристических обложек журналов.

До 117МГц частота центрального процессора, 128Мб ОЗУ, 38.4 Гб на 32-х жёстких дисках 5.12 тонн — всё вместе 5.12 тонн веса за 15 миллионов долларов (без учёта стоимости дисков.)

Потреблял 345 КВт.

Фото отсюда:
https://computing.llnl.gov/about/machine-history

#computing #history
👍1
IMG_20220209_082917.jpg
3.4 MB
memory heap
IMG_20220209_082917.jpg
Напечатал студентам, которые участвовали в конкурсе проектов на Arduino в рамках учебной практики, призы. За первое место подарил мини-набор с Arduino.

Модельки орков брал отсюда:
https://www.thingiverse.com/thing:2991826

У автора этих моделей есть ещё интересные проекты, рекомендую посмотреть.

#3dprinting
А вот так можно решить проблему с отстутствием звука после вывода Ubuntu 20.04 из гибернации на ноутбуке Samsung NP530U4C:
$ pacmd set-card-profile 0 output:analog-stereo


Решение найдено здесь:
https://askubuntu.com/questions/1158593/sound-problem-ubuntu-18-04-no-sound-after-suspend

Там ещё скрипт предлагается сделать, который автоматически эту команду выполняет. Пока этот вариант не тестировал.

Вышеописанная проблема проявляется не всегда, но раньше, когда это происходило, решал её перезагрузкой.

#gnu #linux #ubuntu
Из чата @sci_fyi
Выпущен релиз GNU Guile 3.0.8:
https://www.gnu.org/software/guile/news/gnu-guile-308-released.html

Одна из новых возможностей называется "Меж-модульное встраивание". Ниже мой вольный перевод из NEWS-файла.

Хотя исторически Guile рассматривал модули в роли прославленных хэш-таблиц, большинство модулей на самом деле объявлены в декларативном стиле — т.е. они всего лишь опредляеют функции и переменные для предоставления их другим модулям к использованию, и не манипулируют модулями, как объектами первого класса.

Начиная с версии 3.0.0, Guile пользуется этой декларативной семантикой для того, чтобы позволить определениям верхнего уровня быть встроенными в местах их использования в той же единицы компиляции, при условии, что привязка (binding) никогда не присваевается и определена только один раз. Guile 3.0.8 расширяет эти возможности, позволяя некоторым экспортированным декларативным определениям быть встроенными в других модулях.

Эта возможность в основном прозрачна для пользователя и включена на умолчальном уровне оптимизации -O2. "Небольшие" определения могут быть встроены между модулями (при флаге -Oinlinable-exports, включённом в уровень оптимизации -O2.) Решение о встраивании принимается Guile на этапе частичного вычисления выражений (флаг-модификатор -Ocross-module-inlining modifier для -Opeval, включённого также при -O2).

Тем не менее следует заметить, что если некое определение изменяется в модуле А, то отдельно скомпилированный модуль Б, который использует изменившееся определение из модуля А, не будет автоматически перекомпилирован. Подобная же ситуация может наблюдатся в случае с макросами. Это ограничение мы [разработчики GNU Guile — прим. перев.] хотели бы исправить.

Ещё одним ограничением является то, что меж-модульное встраивание доступно только для импортов из модулей, которые уже скомпилироавны с оптимизацией -O2 (или, как вариант, с флагом -Oinlinable-exports.)

При принятии решения, нужно ли включать вышеописанную возможность по-умолчанию, мы взвесили проблемы удобства использования при "протухании" встроаенных привязок [т.е. если привязки, импортированные в модуль Б из модуля А были обновлены в модуле А — прим. перев.], и преимущества от возможности "размытия" границ между модулями, когда эти границы более не являются границами оптимизации. В конечном счёте, мы пришли к решению "сделаем это!" Тем не менее мы были бы рады услышать обратную связь от пользователей в свете того, стоит ли оставлять новую возможность включённой по-умолчанию — до тех пор, пока у нас не будет правильного представления о том, устарел скомпилированный файл , или нет.

#gnu #guile
Результат многочасового дебага дал свои плоды:
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=52975#14

Если коротко — похоже, получилось исправить очередной segfault в Guile-SSH.

#dev #projects #guile #ssh
1337 contributions in the last year.

#dev
- Что сказала функция в Python, когда её попросили сделать работу?
- Я pass.
🤔2
Media is too big
VIEW IN TELEGRAM
С практики по программированию микроконтроллеров. Проект под авторством Андрея Пегасина и Ильи Ёлкина.
#music

Любопытный альбом 1981 года, "Time" — под авторством Electric Light Orchestra:
https://www.youtube.com/watch?v=yxBZhHE-R7M
Выглядит эпично.