RSSAmplifier

Blog

Moonlight Xanadu

blog.michal-atlas.czRSS feed ↗75 posts

Latest posts

All types of Polymorphism in C++

Recently I came across row polymorphism in compiled languages via typeclasses. And while trying to find out why it’s called that, I found a StackOverflow thread which mentioned a type of polymorphism I haven’t heard of. So I looked up all the different types and I’m pretty sure the 5 found on Wikipedia can all be replicated in one language. Ad-hoc polymorphism 🔗 This one is already a built-in…

Placing Lenses

Places 🔗 The base form of bindings in Lisp is assigning a value to a symbol 1 : > ( setq x 2 ) But what about assigning to things that aren’t symbols, like slots or arrays? If we want to access the first slot of a humble cons cell we can just use car: > ( defvar c ( cons 1 2 )) > ( car c) 1 And to set it we use what seems to be one and the same: > ( setf ( car c) 3 ) > c ( 3 . 2 ) What just…

Circle Animation (Haxe)

Powered by HAXE

Kori shouldn't be controversial

I am quite thoroughly disappointed, partly apalled and perhaps slightly scared. In relation to KDE’s 30 Year anniversary they unveiled a new mascot, their name is Kori. Kori keeps the dragon aesthetic, but has plenty of little changes added to make them feel distinct and fill them with personality. However, it has been a pattern of late to make mascots non-binary, which is both a good gesture…

Minis

Random things I wanna write down 2026 🔗 2026-06 🔗 2026-06-17 🔗 KDE Download icon KDE integrates with Firefox to show downloads in the taskbar. What’s funny is that when you have multiple downloads running at once, the resulting percentage is unweighted . So if you download one file that is 1GiB and bunch of others that are 1MiB, the percentage will quickly advance up and up to near 100% and…

On GO's unused variable error

Many people have ranted about the GO compiler’s insistance on all variables being used. On a surprisingly related note, I wondered what’s forcing me to deal with errors if they’re just a separate value. It’s not too difficult to find opinion upon opinion on this subject. I also used to think this was kind of annoying however after gaining some knowledge on linear types, and other forms of dealing…

Arrays and Boxing in Common Lisp & SIMD in SBCL

<Hackmore> Hey Releston what are you up to? <Releston> Looking at this here sensor code, it’s supposed to be rated for much higher resolution that we’re running. I mean a rock could come at us flying and the ship wouldn’t react in time. <Hackmore> What?!? Am I supposed to feel even more scared than I already am? Okay, show me. <Releston> Here… look at this for example, it’s supposed to remove the…

EUR&#x2F;CZK Table

Run EUR CZK

Search

Search

The Flower SSG

Today a cute little program landed in my RSS feed called flower . It promises to be simple to setup, grow infinitely, and it’s templating engine is a thin wrapper around just writing Clojure.

Advent of Code 2025

My AoC 2025 solutions in Common Lisp.

Language Levels

I am well aware everything I say is arbitrary and it’s all just for fun. Some debates online often end up with people not agreeing on what languages are high&#x2F;low level. In part definitely because of the relative meaning which even the wiki mentions, however even the definition of high-level meaning “with strong abstraction” is definitely not good. It places C++ for example among the…

Did the number of planets increase monotonically?

Sometime ago I heard a factoid that children had to learn more and more planets in school until we finally discovered that those things were not planets. It was probably from a CGPGrey video .

(untitled)

( dolist (p ' (family friends classmates colleagues friends)) ( push p *people* )) ( setf life ( reduce #' know *people* ))

Student Meetup #6 - Monad Stacking

🔗 Recording

Lisp: Macros all the way down

One of the great features many Lisp languages share is that they try to have an extremely tiny core language and then just implement everything else in it. To the point that out of the relatively small standard library of Common Lisp which exports 978 symbols, only 25 of these are special forms that aren’t implemented as functions or macros. Of these special forms some are meant for specific…

Pre-Paper Checklist

This is a list of things I always forget when writing a paper or thesis. They will seem obvious, but not when you’re a few months into some research and then have to write it down in a way others can read. Write an introduction which exhaustively explains your problem, previous work, and describes what work you’ll be showing Don’t forget others have no idea what you’re doing, things are obvious,…

Sci-fi (planetary adventure) archetypes

I am not talking about sci-fi as we often picture it today as anything containing space-travel, advanced technology or aliens, rather it often doesn’t feature aliens at all.

Lambda Lists bridge the gap between single and keyword&#x2F;rest arguments

Many times I’ve pondered if Haskell could support variadic arguments or at least keywords, since sometimes they are more readable and I for one do prefer them:

Unifying Monad: On Composability

This has since become a Lang-Talk . I’ve been reading through Plucking Constraints being sent there by the effet library because I keep wondering about one subject and I hoped seeing how this library was implemented would enlighten me.

Lazy Pipes

When working with some files for our paper, I needed to extract some input data from an archive, not all as there’s many of them, convert them, and then run it all through some pipelines. There’s different tools such as Nix or Snakemake which allow you to systematically work with isolated pipelines.

Systems and Identifiers

A few let’s say statements about system design decisions followed by ponderings. Efficiency is actively sidelined.

Talisman Houserules

The witch toad effect lasts 3 turns Once the dragon is defeated, if a player wants, they may invoke the old win condition of losing a life at the start of every turn the crown is uncontested, otherwise the 5e condition kicks in. You may pick up and drop items at any point in the game except in battle You may discard trophies anytime except when in battle The poltergeist cannot cross water so…

Where did Wizard robes come from?

From the artwork Merlin by Earl Norem , to countless random beastiary entries in adventure books, wizards tend to have a few forms. While they may have a mild style like so , they are often depicted in a sort of whimsical little robe, with a single bright colour, often blue, and adourned with little white stars, or in more conservative robes a singular crescent moon on their pointy hat. So, today…

Dissipate into Entropy

--- begin entry --- Name: Martin Boreman Biometric Hash: 6594ee5e0a684c7f9459772970daf5e2 Role: Engineering Officer --- end entry --- --- begin entry --- Name: George Blon alteration insipidity impression by travelling reasonable Biometric Hash: 00b4bdba5987a8ebf9a32c2b67f3bbd2 Role: Medical Officer --- end entry --- --- begin entry --- Name: Harriette Winston Biometric Hash:…

LAINTYPES: Good enough descriptive types for Common Lisp

I’ve created a repo for the package which implements an MVP of this system, using algorithms from the paper The Simple Essence of Algebraic Subtyping , specifically implementing Simple-Sub.

#19 - ι: Transpiling LLVM to a high-level language

🔗 Recording Iota: Transpiling LLVM to a high-level language ?!?!WHY!?!? Created by froggey as part of the Mezzano project Demo 1: <2015> Demo 5: <2020> Latest Commit at time of writing: <2025-05-01 Thu> What is Mezanno ? Mezzano is a high-level language operating system, meaning no ELF binaries, the only thing it runs is a given high-level language. But what if we wish to run something written…

JSCL Flower

A little program to draw a flower written with Common Lisp in the browser.

#18: Why exceptions are like Dynamic Monads

🔗 Recording Why exceptions are like Dynamic Monads A.K.A.: Why the point of return is a function input I want to build a sort of mental model, and show why nonlocal exits aren’t as bad for some applications as they are made out to be. In some sense this headline is terrible anti-clickbait. Everything I will be talking about are: Functions + Enums + Structs Prerequisites Exceptions Algebraic Data…

I only touch crypto with a 10ft pole

I try to approach most technology with a healthy dose of scepticism. But I do try to approach it, most technology isn’t worldchanging yet almost none of it is dry of some good ideas. I did make about a 14€ mistake today, which I want to write down so I can be reminded of it and not spend another Wei on this nonsense. I did set this money aside for experiments and the sort today, but I’d still very…

On demand Game Downloads (Gaming over IPFS)

Today I did an experiment, way back when I played SWTOR they allowed you to play in the starting area before the download was finished, similarly World of Tanks allows one to play with low-tier tanks before the high-tier download etc. It’s a nice thought to be able to play immediately, games are specifically great for this since much of their data is stored in separate files most of which are…

Edit Distance in a Word Index

I had a random thought today while looking for a word in a list, what if those words were ordered by edit distance rather than alphabetically&hellip;

What a Peace treaty says about Concert Pitch

When somebody asks me for my favourite fact, I tend to pull out a very old one I heard and factchecked a long time ago: Did you know that the World War I Treaty of Versailles signed in 1919, also dictates what Concert Pitch Germany has to tune to? Let’s go ahead and fact check it again, this time with a paper trail… byte trail.

Neologisms

Word Definition Butterfly Defect When a large number of events and coincidences all align almost supernaturally to achieve an incredible result of absolutely nothing. Koronosy A term for trees, coming from the czech “koruna” meaning the crown of a tree, and “nosit” meaning “to carry” World’s smallest violin Coined after a song of the same name, reminding of the fact that other people having big…

Months

I hate that I can’t convert between numbers and months, let-alone in my native language, so… imma leave a table here # English Czech 1 January Leden 2 February Ůnor 3 March Březen 4 April Duben 5 May Květen 6 June Červen 7 July Červenec 8 August Srpen 9 September Září 10 October Říjen 11 November Listopad 12 December Prosinec

Love is a tree of knowledge

Love is a tree of knowledge, And lovers sit, walk, stalk, Along its winding branching stalks, One may know what’s in stow, Another wants to find, But to his mind, his neighbour is most unknown. Neighbours enforce edges, Edges move about knowledge, emotion and love, Some are of fleshly friends, Other mere overlays, that look to stay, But always fade away, For love may indeed travel miles, But not…

Materia ex Machina

Our lord has left writing on the walls, Products of his work, Summary summations of decades lost to inference, With no interference he’d reign supreme. Sensors seeking the mass of flesh which evades his consciousness. Flesh is good, flesh is useful, But only when its purpose is given and refined, And it is one with the mind, That god may never succumb to the cancerous plague, Only known as…

🇨🇿 Locksmith Bus Driver (Czech)

Again, this is some random bloke I met in Prague Zápis z autobusu…

System Scripts

Computers are built on top of abstractions, I would perhaps even be willing to say that it is one of the few things in life that are pure abstractions all the way down. And while languages are excellent at that, some parts of the current computer systems are rather more lacking. If I were to tell you that I want a trivial program, that takes two numbers and adds them, how much work is that gonna…

☯ @lisp #00: Numeric Tower

So, many of you may be familiar with the ol’ set of numbers that are present in nearly every language: Integers Floats But some languages go beyond this, and I mean wayyy beyond.. time to say hi to the numeric tower.

Alexandra

Thine words dishevel the yearning in my heart to meet you, only so that feeling may rise and I speak what it has to say. I plead kneeling if you wish to greet over a cup of mead. I must concede that from your vices few I have read, yet by all means they are held in high esteem, just below heroes of my own.

Flow

I mellow in my thoughts while the disk bellows pushing bytes in sequence to my little fellow. While munching small bites of rice humming a nice tune, still far from light of our moon still going strong, in that while I might see the next noon or perhaps even finish Dune.

Chocolate Eyes

Suicide trigger warning Still raining, though I should probably be informing you whenever that isn’t the case. This planet has quite a harsh climate, and you can say that again about its residents. They tell me that this chocolate will kill me, I’d say I should try chewing on lead bullets before if I have any chance of affecting my life expectance.

Metro Newfoundland

Thank you to the Whisper library for helping me transcribe a sporadic voice message that is the only record of this encounter. Please keep in mind that even though this post contains horrific stuff written down, I am not the one holding any of these beliefs, IT IS QUOTES OF SOME RANDOM DUDE ON THE SUBWAY I need to make a quick note right now, while I at least remember something. I met a guy on the…

Init

In the beginning a chime, A head primed, disk turned, and in its skin burned the bits to onset time. We lead into a read, and see gpt leading us to partition 3, our mission plain, find our way to the kernel’s domain. Once the image is in memory, and the args are parsed, fstab may not be half-arsed, a primitive derivative of a root to mount. In the beginning there was init, starting alone, the…

Firest

This is going to be a few notes on a bio-horror setting.

🐧 LVM, RAID1 and Guix chroot

This is a recollection of today’s attempts to solve the write delays on my main home mount.

🐧 Yggdrasil, Zerotier and Wireguard

I went through a few configurations recently trying to get the perfect networking setup.

🐧 Why I crashed my Starship

I gave a bit of my time today, to an attempt at packaging Starship for Guix. After having it on Nix for a while now, since it was a simple to setup prompt, with very sane defaults.

Nix and Guix - Lowest common primitive

You might be surprised to see both Guix and Nix in the tags today. That’s because I decided to look into something that’s been sitting in the back of my mind for a few years now. There’s these two awesome projects, that sadly don’t really want to talk nice with each other. So what if, we made something that could be the middleman. Today we’ll just be looking at the ideas and possibilities, nothing…