9 followers 0 articles/week
Are aarch64 atomics really this sensitive? (A: No)

I noticed a bug in Guile 3.0.9’s aarch64 atomics handling, and found a couple of apparent solutions (1, 2), but one of them is weird enough for me to write this post. (ETA: Nonstory. The problem was that the mov instruction isn’t idempotent! Hat tip to Andy Wingo for figuring out what the issue was. I’ve updated the rest of the article, and I’ll...

Mon Apr 22, 2024 14:02
More pitfalls regarding JavaScript's non-monadic promises

As is well-known, JavaScript’s Promise is not a monad. It will happily treat Promise<Promise<T>> as if it was Promise<T>: > [123, await Promise.resolve(123), await Promise.resolve(Promise.resolve(123))] [ 123, 123, 123 ] This can bite you in unexpected ways. Imagine you have a CSP-like Channel<T> class for sending...

Wed Jan 24, 2024 17:26
Python3 is removing crypt.crypt and not replacing it with anything ¯\_(ツ)_/¯

Python 3.13 will, for inscrutable reasons, remove the crypt module from the standard library. The excuses given in PEP 0594 boil down to “here are some good reasons why new code shouldn’t use this module.” What about existing code? Ah well. So anyway, for those of us who need some way of generating $6$ SHAcrypt SHA-512 shadow-password-database...

Sat Jan 13, 2024 19:20
Unmangling paths set by direnv on Windows 11

direnv works fine on Windows 11, but if an .envrc tries to set the PATH, the result will be a path in Windows format, not Unix format.1 Instead of adding eval $(direnv hook bash) to your .bashrc, try the following snippet: export _unmangle_direnv_names='PATH' _unmangle_direnv_paths() { for k in $_unmangle_direnv_names; do eval...

Thu Jan 4, 2024 13:47
On the harm caused by missing basic (basic!) functionality in Signal, WhatsApp, Android and iOS

Trusting Signal and/or WhatsApp and/or Android (google) and/or iOS (apple) with your precious photos, videos, and chats is a huge mistake. All the photos, videos and chat history on my mother’s phone are now completely inaccessible to us, despite having recent backups and all the necessary keys and passphrases. Signal Can I transfer Signal...

Sun Dec 17, 2023 02:39
Simpler Preserves Binary Syntax

I’ve just updated the Preserves spec to version 0.990.0. I feel like a 1.0-rc is approaching! The main change since spec version 0.7.1 has been to simplify the binary syntax for Preserves Values: Both “short” and “medium” SignedInteger representations (starting with tags 0x9x/0xAx) were removed. They weren’t pulling their weight....

Sun Oct 15, 2023 17:09

Build your own newsfeed

Ready to give it a go?
Start a 14-day trial, no credit card required.

Create account