#rust #article #abnormalprogramming
Читателям моего блога, вероятно, знакомо такое понятие, как квайн: программа, организованная таким образом, что при запуске печатает собственный текст (буквальное обращение к файлу с исходником считается читерством).
Парочка наблюдений.
Для написания квайна на самом деле не требуется много выразительной силы языка.
Многие форматы для архивов являются фактически программами для восстановления исходных, несжатых, файлов, из серии инструкций, выполняемых интерпретатором — разархиватором.
Что из этого следует? Можно создать архивный аналог квайна: архив, который распаковывается в сам себя. В статье Zip Files All The Way Down рассказывается о том, как этого можно достичь.
Читателям моего блога, вероятно, знакомо такое понятие, как квайн: программа, организованная таким образом, что при запуске печатает собственный текст (буквальное обращение к файлу с исходником считается читерством).
Парочка наблюдений.
Для написания квайна на самом деле не требуется много выразительной силы языка.
Многие форматы для архивов являются фактически программами для восстановления исходных, несжатых, файлов, из серии инструкций, выполняемых интерпретатором — разархиватором.
Что из этого следует? Можно создать архивный аналог квайна: архив, который распаковывается в сам себя. В статье Zip Files All The Way Down рассказывается о том, как этого можно достичь.
Wikipedia
Quine (computing)
self-replicating program
#prog #rust #rustlib #abnormalprogramming
analog-literals
Поддерживаются также двухмерные и трёхмерные литералы (см. (а лучше не см.) документацию)
analog-literals
assert_eq!(
analog_literal! { I----I }
+ analog_literal! { I------I },
analog_literal! { I----------I },
);
Поддерживаются также двухмерные и трёхмерные литералы (см. (а лучше не см.) документацию)
docs.rs
analog_literals - Rust
Inspired by the abhorrent incredible Multi-Dimensional Analog Literals library created by Eelis back in 2006, I am proud to present `analog_literal!` - a Rust macro that enables embedding analog literals directly into Rust code.
#prog #game #abnormalprogramming
Verilog to Factorio blueprints compiler
https://github.com/Redcrafter/verilog2factorio
(thanks @GabrielFallen)
Verilog to Factorio blueprints compiler
https://github.com/Redcrafter/verilog2factorio
(thanks @GabrielFallen)
GitHub
GitHub - Redcrafter/verilog2factorio: This project will compile verilog (a hardware description language) into factorio blueprints.
This project will compile verilog (a hardware description language) into factorio blueprints. - Redcrafter/verilog2factorio
#prog #article #abnormalprogramming
McCarthy's Ambiguous Operator
Абьюз продолжений ради этого:
McCarthy's Ambiguous Operator
Абьюз продолжений ради этого:
# amb will (appear to) choose values
# for x and y that prevent future
# trouble.
x = amb 1, 2, 3
y = amb 4, 5, 6
# Ooops! If x*y isn't 8, amb would
# get angry. You wouldn't like
# amb when it's angry.
amb if x*y != 8
# Sure enough, x is 2 and y is 4.
puts x, y
www.randomhacks.net
McCarthy's Ambiguous Operator | Random Hacks
Random code snippets, projects and musings about software from Eric Kidd, a developer and occasional entrepreneur.
Блог*
#prog #rust #amazingopensource Typst is a new markup-based typesetting system that is designed to be as powerful as LaTeX while being much easier to learn and use. Typst has: * Built-in markup for the most common formatting tasks * Flexible functions…
#abnormalprogramming
https://t.me/al_tch/1170
Но из-за ограничений инструмента, понятное дело, тетрис пошаговый, и сид нужно вручную переставлять
https://t.me/al_tch/1170
Но из-за ограничений инструмента, понятное дело, тетрис пошаговый, и сид нужно вручную переставлять
Telegram
AlexTCH
https://typst.app/universe/package/soviet-matrix/
A Tetris implemented inside https://typst.app Can be played online. 😏
A Tetris implemented inside https://typst.app Can be played online. 😏
#game #abnormalprogramming #article
Simulating Rule 110 in Opus Magnum
Ввиду того, что симуляция сколько-нибудь большого пространства в игре затруднена, решение делается для закольцованного поля в 6 клеток. Но даже так это очень впечатляет.
Simulating Rule 110 in Opus Magnum
Ввиду того, что симуляция сколько-нибудь большого пространства в игре затруднена, решение делается для закольцованного поля в 6 клеток. Но даже так это очень впечатляет.
a blog by biggiemac42
Simulating Rule 110 in Opus Magnum - a blog by biggiemac42
As part of the 2022 Opus Magnum tournament, players had to design a machine to simulate the famous Rule 110 cellular automaton.