THE WRITER MUST EAT -> patreon.com/trn1ty <-

| \    |   | blah!
|\ | `\|\  | the rantings and ravings
|/ |(_|| | * of a depraved lunatic

<^>

2023-12-25

: bonsai

Emma Tebibyte (of tebibyte.media) and I have been collaborating (and by that I
mean fae has a lot of good ideas and I have been writing a lot of mediocre
implementations) on a core utilities suite called Bonsai. A lot of my own
coreutil implementations are leaving my own source tree and being incorporated
into there.

I am not big into maintenance. Maintenance is boring. I strive to write
programs that don't need to be maintained. Bonsai is something that, I hope,
will not have to be maintained -- it will cover the functionality in section 1
of POSIX and be done. I would like Bonsai to offer a POSIX interface despite
the tools being extremely different to prove its worth as being equal to or
better than POSIX. Also to make work easier for programmers who wish to support
Bonsai /and/ GNU or BSD or whatever.

Bonsai's catchphrase or whatever is "seek what they sought". A lot of existing
UNIX utilities are very nice but also jank as hell. See test(1), dd(1) for
overly featureful programs. Test's `!` is identical to Sh's. dd file2
is equivalent to cat file2 and tee file2 minus some buffering
shenanigans. Emma and I are in agreement on the fact that functionality should
be consolidated in some points and split into multiple programs in other points
and mostly in agreement about where those points are.

I'm excited about Bonsai as a compatible improvement to UNIX and excited to
work with Emma on this because fae and I disagree on topics niche and
fascinating and our arguments are always interesting. Not in a Queen / The
Beatles / every rock band ever sort of way where the arguments are cool until
"You don't really care about the band!" but in a way where the disagreements
point out that while UNIX's tools were certainly opinionated on how to do
things, it's hard to say another opinion is objectively better.

This is no sort of announcement, Bonsai is public already in
https://git.tebibyte.media/bonsai/coreutils and you can see the intcmp(1),
scrut(1), and other implementations of mine that have made their way over there
and been deleted from my own source tree. I intend to contribute as much as I
am able but am currently bogged down by the CONTRIBUTING necessitating GPG key
commit signing and my Alpine installation having weird issues with Assuan and
communicating with gpg-agent. It'll be nice to clear out this source tree junk
drawer and put all my dirty laundry out so the world can sniff the musks. I
encourage anyone reading this to file brutal issues and make me cry like a
little baby.

Today is Christmas. Happy Christmas I guess. I'm Buddhist and can now use that
excuse not to celebrate whereas before, when not a believer in any religion, I
would still be expected by many to celebrate Christmas because of consumerism
or whatever. But also I don't know many people who would expect that of me
anymore. I just like Buddhism and excuses to talk about it.

I would love to see Emma Tebibyte become the new Richard Stallman because fae's
just really fucking based. Everything Emma has to say is worth heeding whether
or not you agree with it. These coreutils might be the start of something the
same way GNU's coreutils were but in a way that isn't plagued with all the
baggage GNU and the FSF have had.

<^>

No rights reserved, all rights exercised, rights turned to lefts, left in this
corner of the web.