matt
@stavola.xyz
79 followers 140 following 360 posts
Posts Media Videos Starter Packs
stavola.xyz
Others I found:

2048.blue
anisota.net
leaflet.pub

Weirdly enough, I don't see them for bsky. I figured if any app would have it set up, it'd be the first one!
stavola.xyz
So stream.place uses the ATProto standard _lexicon TXT DNS record to point to where the lexicon defs are stored.

Any other services do this? I tried a few and got nada.
stavola.xyz
Do lexicons support conditional fields like that?
stavola.xyz
Any thoughts on representing a closed union? Having | _ felt "natural" as a hole in the set, but I can't quite place the opposite as of yet. I was avoiding a keyword here just because it'd make it awkward to work name clashes with a token.
stavola.xyz
Yeah this is actually a good idea. I had gone back and forth on the required/optional thing, but I think !: would work really well here.
stavola.xyz
At this point I'm just excited to see people "just do things" and ship whatever thing they find cool and interesting. Quite literally, the more the merrier.
stavola.xyz
I felt the same way once I saw Typelex 😁. I had just started mlf.lol and was wondering if I should bother, but I realized that this early on there *needs* to be multiple attempts/iterations.

Like, AT wins if we start seeing like 3 Reddit clones and 5 attempts at an AT web framework or whatever.
stavola.xyz
I dunno, I'd take an 'ol Burr vs Hamilton every now and then over what goes on today.
stavola.xyz
ProtonPDS would go hard, ngl.
stavola.xyz
Okay, no more weird DSLs, tomorrow we're going back to Rokkenjima and we'll stay there for a while.
stavola.xyz
The more I play with this, the more I love it.

Even if I'm the only one using mlf.lol to generate #atproto lexicons, it has been worth it. It really hits the pleasure centers of my brain just right.
A screenshot of the mlf.lol playground, displaying an example of ATProto lexicon generation from a source MLF file. The MLF source uses inline types, def types, tokens, records, constraints, references, and references to a "standard library." Thematically, the source refers to posters on an old school forum.
stavola.xyz
No island murder mysteries tonight, but mlf.lol now has com.atproto.* as part of its "standard library" with some additional bug fixes.

Still undecided how I want to handle things like key specifiers and encoding... easy way out is @ annotations, but I had other ideas in mind for those.
stavola.xyz
I could continue to work on mlf.lol and get key specifiers and the com.atproto.* prelude working, but I am feeling the call of Umineko...
stavola.xyz
I think about this more and more every day.

I know it's a massive huff of copium, but just how things are playing out and the timing of it all reads as strange to me.
stavola.xyz
With a lot of the changes that have been happening and how the BSky team has been emphasizing the open aspect of the platform and protocol, this might be a canary in the coal mine situation.

I have to wonder if they are anticipating impending federal intervention or if it has already happened.
jay.bsky.team
1. Bluesky doesn’t downrank links
2. You can choose your own algorithm from among thousands
3. The whole app is open source

This keeps it a free and open platform by design, leading to better click-throughs and traffic to your site.

We 💙 the open web.
stavola.xyz
Yes this is "illiberal" in a sense, but this isn't a society. Nobody is being summarily executed. It's fucking social media!

It's in everyone's best interest to identify well known harassers, bigots, provocateurs, etc *before* they establish a foothold. Protect the people you supposedly care about!
stavola.xyz
This isn't some random who caused Discord drama or part of some sub-reddit power struggle. He's well known in the public sphere for being a bad faith agitator for an incredibly narrow and targeted selection of vulnerable minorities.

You shouldn't always need a "letter-of-law" reasoning to ban.
stavola.xyz
This is one of those things that are completely and objectively true, something you can immediately understand and sympathize with...

... but at the heart of it, there are still definite exceptions, Singal being the relevant one. Some people are just noted bad actors, they make their name on it!
aaron.bsky.team
People often ask why we don’t act on off-platform evidence when investigating reports. Here’s an example of how complex that can get. 1/9
stavola.xyz
Since making ATProto Lexicon Languages is the hot new thing, here is my take: mlf.lol

Still rough around the edges and I'm still missing some stuff, but I like the direction it's heading in.
MLF - Matt's Lexicon Format
A human-friendly DSL for ATProto Lexicons
mlf.lol
stavola.xyz
Your history is correct, but at this point the colloquial Luddite has diverged from the historical Luddite.

Bernie is communicating to people on terms they currently understand in the most direct manner possible. He could give a history lesson as well, but it's not germane to the point he's making.
stavola.xyz
I've been working on something similar (even down to having a website with the playground) and Claude has definitely been a major help. It's kinda crazy how far this stuff has come, even a couple of months ago I'm not even sure it'd be this useful.
stavola.xyz
Like, are there conceptual or syntactical "missing links" that would bridge these gaps? Will there be an obvious-in-retrospect advance that fundamentally challenges the above?

This is a big reason why I hate seeing "ugh, a new lang?" posts; we haven't figured everything out, we need to experiment!
stavola.xyz
More useful "baggage" in types is ostensibly a good thing. However, every bit you add creates both visual noise and mental overhead. You end up really having to budget here to make sure everything you add doesn't weigh things down too much for the user.

I often wonder about alternative expressions.
tonofcrates.bsky.social
here's a carousel of baggage
Koka docs OxCaml source code Scala capture typing example MaPLe disentanglement type example