Sign in

Alyssa the Kate

@alyssa.codes
950 followers 971 following 1.1K posts

Formerly Rust firmware security at the big G 🦀 | opinions are her own | makes code smol *and* sound | probably a parody account | 🏳️‍🌈🏳️‍⚧️ alyssa.codes

PostsRepliesMedia
Alyssa the Kate @alyssa.codes · 29/08/2026
Protobuf's answer is essentially: we defined the semantic value of a field to work like that so you don't have to consider the presence unless you have a specific need to. It Just Works™ Protobuf makes the well-trodden path the well-lit path or else people write "convenience" wrappers
A person walking on a desire path cutting a corner.

The desire path is labeled `semantic value`

The corner path is labeled `wire val + presence` on one bend and `.unwrap_or_default()` on another
000
Alyssa the Kate @alyssa.codes · 28/08/2026
Yeah, presence overall has a History as different engineers steered the project proto2: singular fields have presence proto3 no field presence for "primitives" (ints, enum, and bytes/string). It literally treats "0"/empty and "not set" identically on the wire editions: proto2 presence by default
features.field_presence

This feature sets the behavior for tracking field presence, or the notion of whether a protobuf field has a value.

Values available:

    LEGACY_REQUIRED: The field is required for parsing and serialization. Any explicitly-set value is serialized onto the wire (even if it is the same as the default value).
    EXPLICIT: The field has explicit presence tracking. Any explicitly-set value is serialized onto the wire (even if it is the same as the default value). For singular primitive fields, has_* functions are generated for fields set to EXPLICIT.
    IMPLICIT: The field has no presence tracking. The default value is not serialized onto the wire (even if it is explicitly set). has_* functions are not generated for fields set to IMPLICIT.

Applicable to the following scopes: file, field

Added in: Edition 2023Default behavior per syntax/edition:

Syntax/edition, Default
2026	, EXPLICIT
2024, 	EXPLICIT
2023	, EXPLICIT
proto3, IMPLICIT*
proto2, EXPLICIT

* proto3 is IMPLICIT unless the field has the optional label, in which case it behaves like EXPLICIT. See Presence in Proto3 APIs for more information.
010
Alyssa the Kate @alyssa.codes · 22/07/2026
en.wikipedia.org/wiki/File%3A...
120
Alyssa the Kate @alyssa.codes · 19/07/2026
Incredible how the @caltrain.com train position indicator has had an OOM bug for years This could've been an LED The train software was contracted to a German firm and Caltrain forwards all bugs to them with unclear turnaround. In Silicon Valley. Why didn't we build up our local transit skills?
A blue screen with a folder with a face of swirled eyes and a stuck out tongue.

He's dead, Jim!

Either Chrome ran out of memory or the process for the web page was terminated for some other reason. To continue, reload or go to another page.

Reload buttonThe out of memory blue screen on a moving Caltrain
271
Alyssa the Kate @alyssa.codes · 01/07/2026
I'd guess he'd want to discuss the distinction between the genres! www.brandonsanderson.com/blogs/blog/s...
Begin quote

     The major distinction between fantasy and science fiction is, simply, that science fiction uses one, or a very, very few new postulates, and develops the rigidly consistent logical consequences of these limited postulates. Fantasy makes its rules as it goes along . . . The basic nature of fantasy is “The only rule is, make up a new rule any time you need one!” The basic rule of science fiction is “Set up a basic proposition—then develop its consistent, logical consequences.” 

End quote

I disagree with this soundly—but in Mr. Campbell’s defense, fantasy has come a long way since the sixties (when he wrote that in Analog.) Fantasy doesn’t have to be about stories where the authors simply make up whatever they need. Still, I think that it is a criticism we fantasy writers need to be aware of and wary regarding. If we simply let ourselves develop new rules every time our characters are in danger, we will end up creating fiction that is not only unfulfilling and unexciting, but just plain bad.
020
Alyssa the Kate @alyssa.codes · 27/06/2026
pretty common abroad what 😭
‘Shouldn’t happen’

A middle-aged woman who was staring at the building from the street said she was shocked by the incident.

“This kind of thing wouldn’t happen in Beijing. This is Beijing… It’s pretty common abroad, but in China, it shouldn’t happen,” she told AFP.

“I was very shocked.”
030
Alyssa the Kate @alyssa.codes · 01/06/2026
I agree with the first point, though with respect to options I do think there is room for respectful and reasonable discussion on how recent maintainer policies affect how downstream users treat the software (like a distro pinning earlier versions or perhaps negative socials). As a maintainer said:
Truncated GitHub comment

Begin quote 

    Well, where's the proper place to tell a maintainer that you disagree with the direction they're taking? That's feedback that they need to receive, even if they disregard it.

    I'll add my voice. Rsync is a fundamental tool. If downstream consumers are discussing pinning or a fork then that's a problem regardless of the cause.

End quote

https://github.com/RsyncProject/rsync/discussions

Opening an issue consisting only of some twitter clone screenshot with some "literally who" who found a bug called "Please Do Not Vibe Fuck Up This Software" ain't it.

That's not a way to tell a maintainer that you disagree with the direction they're taking. This issue is entirely useless.
A "fucked up vibe coded" bug report would have been better.
160
Alyssa the Kate @alyssa.codes · 31/05/2026
yeah I just copy paste from the page I screenshot with minor cleanup it's often easier than composing an abstract anyways
Comment by Justin P. Drew 14m

Andrea LaFlamme why are you just a write-in candidate? Why aren't you officially on the ballot?

Comment by Andrea LaFlamme 3m

I actually registered with the FEC back in June before any of the other candidates who are currently in the race. I was all set to announce my campaign when I had a sudden health issue that needed to be addressed. I spent months focusing on getting better and was finally able to announce my campaign at the end of February, at which time I only had three weeks to collect the 2000 signatures needed to get on the ballot. In three weeks I was able to get 1600 signatures, which is truly an incredible feat, but, of course, not enough. It was clear throughout that process that, had I been able to start one Jan. 1 with the other candidates, I wouldn't have had an issue. It was also clear from talking to voters that they were excited about my campaign and felt that I represented them in a way that the other candidates couldn't. In today's world, a health issue can sideline any of us at any time and medical care isn't always easy to come by. I made the decision to carry on in the race despite my delayed entry because I truly feel like I am the best person to take on Susan Collins and want all Mainers to have a chance to have their voices heard at the ballot box.

Comment by Andrea LaFlamme 1m

I would also like to point out that saying "just a write-in candidate" implies that I am somehow less of a candidate than those who got the signatures to have their names on the ballot. That couldn't be further from the truth. A vote for me counts just the same as a vote for any of them and I deserve the same consideration.
000
Alyssa the Kate @alyssa.codes · 24/05/2026
So excited about this! You can't `unsafe impl Allocator for StackArena` but you could for `&'_ StackArena` right? The ref allocator has no Drop, and it's inaccessible after &mut/move of StackArena I'd like to just deal with an (ideally) inlined double ref to use alloc::Box with a stack arena
Safety

Memory blocks that are currently allocated by an allocator, must point to valid memory, and retain their validity until either:

    the memory block is deallocated, or
    the allocator is dropped.

Copying, cloning, or moving the allocator must not invalidate memory blocks returned from it. A copied or cloned allocator must behave like the original allocator.

A memory block which is currently allocated may be passed to any method of the allocator that accepts such an argument.
021
Alyssa the Kate @alyssa.codes · 24/05/2026
seems we're safe from A/B/C/D tests (for now) support.google.com/youtube/thre...
How does it work? 

After you upload up to three titles or a combination of titles and thumbnails, YouTube will run these combinations evenly across your viewers for up to two weeks. At the end of the test, the tool automatically analyzes which version earns the highest watch time and applies the winning option to your video.
051
Alyssa the Kate @alyssa.codes · 24/05/2026
sometimes I wonder which title is the A and B in an A/B test
This Yarn Is Older Than The Incan Empire

@goodyarnbadknits 468 views 12h ago ...more
171
Alyssa the Kate @alyssa.codes · 14/05/2026
alas, N/A
Reward Details

The California Clean Fuel Reward is available to qualified customers who buy or lease eligible BEVs* for commercial operations in California. The reward is applied at the time of sale, reducing the upfront cost of BEVs and boosting sales opportunities.
Vehicle Class	Gross Vehicle Weight (Pounds)	Reward Amount
2b	8,501–10,000	$7,500
3–4	10,001–16,000	$15,000
5	16,001–19,500	$60,000
6–7	19,501–33,000	$85,000
8	>33,000	$120,000

* Available to qualifying businesses, public/government agencies, and nonprofits for commercial operations in California. Only new Class 2b–8 BEVs registered in CA are eligible. Reward for Class 2b vehicles limited to public fleets. Hybrid, fuel cell, used vehicles, and battery-electric motorcycles are not eligible. Other limitations and requirements apply; see program details.slate forums

Dimensions & Capacity

    Length: 174.6 inches
    Width: 70.6 inches
    Height: 69.3 inches
    Wheelbase: 108.9 inches
    Bed Length: 60 inches (5 feet)
    Bed length with tailgate down: 81.6 inches
    Bed Width: 42.9 inches
    Front Trunk (Frunk Space Capacity): 7.0 cubic feet
    Payload Capacity: Up to 1,433 lbs
    Towing Capacity: Up to 1,000 lbs
    Curb Weight: Approximately 3,600 lbs
000
Alyssa the Kate @alyssa.codes · 10/05/2026
Pre-1.0 Rust did use sigils for indicating heap exclusive-ownership like Box does, though it was removed (in part) to simplify the language by moving more into libraries manishearth.github.io/blog/2017/01... blog.rust-lang.org/2014/09/15/R...
Back in these days, we didn’t have Box<T>, Vec<T>, or String. We had ~T, ~[T], and ~str. The second two are not equivalent to Box<[T]> and Box<str>, even though they may look like it, they are both growable containers like Vec<T> and String. ~ conceptually meant “owned”, though IMO that caused more confusion than it was worth.

You created a box using the ~ operator, e.g. let x = ~1;. It could be dereferenced with the * operator, and autoderef worked much like it does today.

As a “primitive” type; like all primitive types, ~T was special. The compiler knew things about it. The compiler knew how to dereference it without an explicit Deref impl. In fact, the Deref traits came into existence much after ~T did. ~T never got an explicit Deref impl, though it probably should have.

Eventually, there was a move to remove sigils from the language. The box constructor ~foo was superseded by placement box syntax, which still exists in Rust nightly2. Then, the ~T type became Box<T>. (~[T] and ~str would also be removed, though ~str took a very confusing detour with StrBuf first).
041
Alyssa the Kate @alyssa.codes · 20/04/2026
They also think the shot never should have been taken as-is and should only mirror what the human eye would see
That's kind of the point. The human eye is never going to see what the Artemis image shows. Sure, you can jack up the ISO and throw on a f1/8 lens and hold the shutter open for a few seconds and make the night sky bright as hell. But it's not representative of what we see. It's what a sensor sees.
120
Alyssa the Kate @alyssa.codes · 19/04/2026
Curiously, this is what I see? It pops up the article for just a second and then disappears. I tried Firefox and Vivaldi/webkit
An archive.org capture from Apr 16 2021 which shows only a white page with three black ovals of decreasing width
120
Alyssa the Kate @alyssa.codes · 19/04/2026
No, this is fake. All of the official Artemis images are here: www.nasa.gov/artemis-ii-m... A common tell for fake astrophotography is seeing both stars and the lit earth at the same time: that doesn't happen with a normal camera and requires HDR/image composition. The clouds are also too high up.
Most or all of this image was edited or generated with Google AI. For more information, you can visit support.google.com/gemini?p=synthid.
100
Alyssa the Kate @alyssa.codes · 19/04/2026
Love both of those. The wild thing about that second image is that it's the nighttime side of Earth! That's why it's so grainy. Notice the aurora near the poles and city lights. This is a similar shot without the high ISO/exposure
A view of the globe Earth, nighttime side. There's an arc of light peeking through the atmosphere at the edge
110
Alyssa the Kate @alyssa.codes · 19/04/2026
THIS IS FAKE IT IS NOT A PHOTOGRAPH DELETE THIS GARBAGE
Most or all of this image was edited or generated with Google AI. While the composition mimics a view from orbit, certain visual elements appear inconsistent with authentic satellite photography.
160
Alyssa the Kate @alyssa.codes · 13/04/2026
Like Google Photos moving all of its search features behind an LLM, which requires new consent agreements I never wanted. It's an all-or-nothing assault on privacy where you give Gemini access to your whole life or get scraps of features Every day they're giving me new reasons to de-Google
Google Photos interface with "Ask" at the bottom, replacing the previous search feature entirely
000
Alyssa the Kate @alyssa.codes · 10/04/2026
(with alt text)
In the style of the Zelda: Tears of the Kingdom art, the logo has its text replaced with "Anju the Innkeeper from Majora's Mask is on the Epstein List"
020
Alyssa the Kate @alyssa.codes · 06/04/2026
Artemis II has now set a new record for the humans farthest from Earth, last set by Apollo 13 in 1970! They proposed names for two craters they saw: Integrity for their spacecraft, and Carroll in honor of the commander's wife who passed in 2020. The crew had a moment ❤️😭
The cramped cabin of Artemis II. Two astronauts on opposite sides embrace the mission commander between them, whose face is hidden from view. Tears are wiped from their faces after they separate.
04914
Alyssa the Kate @alyssa.codes · 02/04/2026
Login for Chromebooks will probably break for a few hours, and "Login with Google" used on non-Google sites might break entirely depending on how that site works
Potential issues to keep in mind

Gmail addresses are also used to sign in to other Google services like YouTube, Google Docs as well as third-party websites and apps. But the company warns that some non-Google apps and services might not recognize you with the new Gmail address, so it provided some troubleshooting tips on a help page.

Google also says Chromebook users might encounter problems, though many issues will go away after a few hours. It advises users to check a troubleshooting page but warned that if the problems persist, “you may need to change back to your previous Google Account email,” although the new address can still be used to send and receive messages.
120
Alyssa the Kate @alyssa.codes · 09/03/2026
Seems like it! www.freetaxusa.com/forms/
freetaxusa.com/forms

Federal forms we file:

Form 1040
Form 1040-SR
Form 1040-X
Form 1040-ES
Form 1040-V
Schedule 8812
Schedule 1
Schedule 1-A
Schedule 2
Schedule 3
Schedule A
Schedule B
Schedule C
Schedule D
Schedule E
Schedule EIC
Schedule F
Schedule H
Schedule LEP
Schedule R
Schedule SE
Form 461
Form 982
010
Alyssa the Kate @alyssa.codes · 06/02/2026
With alt text
Screenshot of tweet by @DecisionDeskHQ:

Decision Desk HQ is retracting its projection in the NJ-11 Democratic primary.

We have deleted the race projection tweet.

At the time of our initial projection, all absentee and early vote had been recorded in all three counties, and we had 66/240 precincts in Essex County (expected to be Analilia Mejia strongest) that had reported election day vote & two election day vote drops in Morris County (expected to be Thomas Malinowski's strongest).

Malinowski had a 4,900 raw vote lead, and the margin he was losing the election day vote in Essex combined with the margin he was winning the election day vote in Morris, provided him a sizable cushion. Even if Mejia's projected margins were doubled, Malinowski was still projected to win by more than 1,000 votes.

As the night progressed, margins in Morris County quickly tilted toward Mejia; Mejia began winning drops by 20%-30%, representing a swing of 65 points compared to the absentee vote.

This trend reversal prompted us to re-examine our race projection and ultimately retract it.

Our apologies for the inaccurate projection on this race, and we hope our swift retraction and transparency are seen as a sign of our intent to be quick and accurate in all things elections now and going forward.

Nested screenshot: 

Decision Desk HQ projects Tom Malinowski to win the Democratic Special Election Primary in New Jersey's 11th congressional district
0161
Alyssa the Kate @alyssa.codes · 27/01/2026
Further context:
Also: I love the real Canadians, but boy if a Canada flag in bio isn’t a clear bot/troll warning here.

IF YOU ARE NOT A BOT/TROLL, THIS ISN'T ABOUT YOU. 

I AM AWARE THAT CANADA IS A REAL PLACE WITH REAL PEOPLE. 

I LOVE HEATED RIVALRY. 🇨🇦 🏒🍁Really? Why bc we're proud of our country?"I love the real Canadians ..."

If you're real, no reply was necessary!I don’t think you understand 

You may love us, but you constantly disrespect us.

For decades we have been the butt of your jokes & the dismissive language as if it’s there there and this attitude can be seen clearly in this interaction’s tone!

I’m real I’m in Montreal & I’m done!
0130
Alyssa the Kate @alyssa.codes · 19/01/2026
this is probably my favorite recurring tumblr post
A poll on Tumblr by the user teabree-shark.

Do you think Microsoft understands consent?
 
"Yes" with 0.8% of the vote
"Remind me in 3 days" with 99.2%

Final results from 10,522 votes
04815
Alyssa the Kate @alyssa.codes · 31/12/2025
It's like Santa Clara County doesn't want folks voting—this is the "ballot drop off locations" url they texted me at caearlyvoting.sos.ca.gov
Vote California


Early Voting and Vote-by-Mail Ballot Drop-Off Locations

Any registered voter can go to a county elections office in person to request and receive a vote-by-mail ballot.

Definition of services available:

    Early Voting: A voter may pick up and/or vote a vote-by-mail ballot at this location.
    Same Day Voter Registration: Voters can conditionally register and vote after the 15-day voter registration deadline at this location. For more information please go to Same Day Voter Registration
    Ballot Drop-Off: A secured box where vote-by-mail ballots may be dropped off.

Information will be coming soon from county elections offices for the 2025 election cycle.
010
Alyssa the Kate @alyssa.codes · 27/12/2025
Any good Python programmer reviewing that would insist it be fixed to comply with PEP 8: peps.python.org/pep-0008/#pr... Python does not have a direct way to test for object identity in a container—it'd require two hashes per set/dict key. A `.get()` or iteration combined with `is` is infallible.
Comparisons to singletons like None should always be done with is or is not, never the equality operators.

Also, beware of writing if x when you really mean if x is not None – e.g. when testing whether a variable or argument that defaults to None was set to some other value. The other value might have a type (such as a container) that could be false in a boolean context!
131
Alyssa the Kate @alyssa.codes · 22/12/2025
Markets historically make stupid mistakes and crash, which happens due to overconfident executives and investors. Seriously, does this look normal to you?
The AI bubble infographic
010
Alyssa the Kate @alyssa.codes · 04/12/2025
not helping, gboard
screenshot showing drafting the post above, with antizionism underlined in red.

the keyboard suggests fixes of antisemitism, antisocial, and enthusiasm
010
Alyssa the Kate @alyssa.codes · 04/12/2025
oof these tidbits of antizionism ≈ antisemitism only make the research worse
Highlighted text "describe Israel as a colonial state"

Full text

The survey’s first major finding is that the overwhelming majority of the Current GOP reject racism, antisemitism, and conspiratorial thinking in politics. But a meaningful minority—17%—meets our definition of Anti-Jewish Republicans. A respondent falls into this category if they (1) self-identify as both racist and antisemitic and express Holocaust denial or describe Israel as a colonial state, or (2) do not self-identify that way but nevertheless hold both of those extreme positions. Anti-Jewish Republicans are typically younger, disproportionately male, more likely to be college-educated, and significantly more likely to be New Entrant Republicans. They are also more racially diverse. Consistent church attendance is one of the strongest predictors of rejecting these attitudes; infrequent church attendance is, all else equal, one of the strongest predictors of falling into this segment.
130
Alyssa the Kate @alyssa.codes · 10/11/2025
it's octover

central text overlaid a walkway in autumn with red leaves and treesit's Nowember

central text overlaid a walkway in autumn with trees having relatively few leaves
020
Alyssa the Kate @alyssa.codes · 22/10/2025
The 1919 is a crop of a larger tattoo that says "est. 1919" bsky.app/profile/mica...
A&W root beer can, with "Since 1919" circled and the SS logo drawn next to it.

1919 is a Nazi code term for SS, short for Schutzstaffel. S is the 19th letter of the alphabet.

A parody of Nazi tinnitus—the phenomenon where, due to overexposure, one sees dog whistles in the most mundane of sources.

Like, damn this guy is an idiot and should never be Senator but can we please cry a little less wolf?
010
Alyssa the Kate @alyssa.codes · 13/10/2025
oof it doesn't render correctly on mobile
A mobile webpage with a left margin of whitespace and the right hand side cut off
110
Alyssa the Kate @alyssa.codes · 12/10/2025
Been thinking about this If a binding can access a value, it owns the value or is borrowing its place. `&'static T` is a borrow of a static place To exclude static references from borrows makes many statements about types awkward to be fully consistent about, like "&str is a borrowed string slice"
From the Rust Reference:

String literal

A string literal is a string stored directly in the final binary, and so will be valid for the 'static duration.

Its type is 'static duration borrowed string slice, &'static str.
100
Alyssa the Kate @alyssa.codes · 19/08/2025
On the Apple store, yeah. It's currently #8 in free productivity apps on the main Android store
Play store top free productivity apps: 

1. ChatGPT
2. Microsoft Copilot
3. Grok Smartest Al Advisor
4. Microsoft 365 Copilot
5. Google Gemini
6. All Document Reader & Viewer
7. PDF Reader - PDF Viewer
8. Focus Friend by Hank Green
100
Alyssa the Kate @alyssa.codes · 13/08/2025
From Wikipedia:

Jim Starkey coined the term "blob"[when?] working at Digital Equipment Corporation to refer to opaque data entities. The terminology was adopted for Rdb/VMS. "Blob" is often humorously explained to be an abbreviation for "binary large object". According to Starkey, this backronym arose when Terry McKiever, working in marketing at Apollo Computer felt that the term needed to be an abbreviation. McKiever began using the expansion "Basic Large Object". This was later eclipsed by the retroactive explanation of blobs as "Binary Large Objects". According to Starkey, "Blob don't stand for nothin'." Rejecting the acronym, he explained his motivation behind the coinage, saying, "A blob is the thing that ate Cincinnatti [sic], Cleveland, or whatever," referring to the 1958 science fiction film The Blob.
140
Alyssa the Kate @alyssa.codes · 19/06/2025
Maybe also have a lint for deprecated characters?
D13 Deprecated character: A coded character whose use is strongly discouraged.

    Deprecated characters are retained in the standard indefinitely, but should not be used. They are retained in the standard so that previously conforming data stay conformant in future versions of the standard.
    Deprecated characters typically consist of characters with significant architectural problems, or ones which cause implementation problems. Some examples of characters deprecated on these grounds include U+E0001 LANGUAGE TAG (see Section 23.9, Tag Characters) and the alternate format characters (see Section 23.3, Deprecated Format Characters).
    Deprecated characters are explicitly indicated in the Unicode code charts. They are also given an explicit property value of Deprecated = True in the Unicode Character Database.
    Deprecated characters should not be confused with obsolete characters, which are historical. Obsolete characters do not occur in modern text, but they are not deprecated; their use is not discouraged.
020
Alyssa the Kate @alyssa.codes · 19/06/2025
Right, I do think it's reasonable to add a warn-by-default lint for any noncharacter in a literal, but it shouldn't be part of the validity of a `str`.
D14 Noncharacter: A code point that is permanently reserved and that will never be assigned to an abstract character. Noncharacters consist of the values U+nFFFE and U+nFFFF (where n is from 0 to 1016) and the values U+FDD0..U+FDEF.

    Noncharacters are not intended for interchange, but may be used by an implementation for internal purposes.
120
Alyssa the Kate @alyssa.codes · 19/06/2025
Correct. They went with Unicode Scalar Values, which is everything that can be encoded in UTF-8. There's no reason to exclude BOM? www.unicode.org/versions/Uni...
Because the UTF-8 encoding form already deals in ordered byte sequences, the UTF-8 encoding scheme is trivial. The byte ordering is already obvious and completely defined by the UTF-8 code unit sequence itself. The UTF-8 encoding scheme is defined merely for completeness of the Unicode character encoding model.

While there is obviously no need for a byte order signature when using UTF-8, there are occasions when processes convert UTF-16 or UTF-32 data containing a byte order mark into UTF-8. When represented in UTF-8, the byte order mark turns into the byte sequence <EF BB BF>. Its usage at the beginning of a UTF-8 data stream is not required by the Unicode Standard, but its presence does not affect conformance to the UTF-8 encoding scheme. Identification of the <EF BB BF> byte sequence at the beginning of a data stream can, however, be taken as a near-certain indication that the data stream is using the UTF-8 encoding scheme.
110
Alyssa the Kate @alyssa.codes · 10/06/2025
😔 my hacky strategy
120
Alyssa the Kate @alyssa.codes · 05/04/2025
the image is originally from an economist article, but I didn't find another source with the overlay text www.economist.com/content-asse...
Trump holding his hand up silhouetting a sun with rays on a red sky ordering the crowd of people in red
140
Alyssa the Kate @alyssa.codes · 14/03/2025
yeah this should be a clickable link
catra.top bluesky page with the website component circled
030
Alyssa the Kate @alyssa.codes · 02/01/2025
It's many publications' 2024 Game of the Year
Balatro
Developer
LocalThunk	
Publisher
Playstack	
Released
Feb 20, 2024
The poker roguelike. Balatro is a hypnotically satisfying deckbuilder where you play illegal poker hands, discover game-changing jokers, and trigger adrenaline-pumping, outrageous combos.
030
Alyssa the Kate @alyssa.codes · 20/12/2024
That's some slick rendering! Defer has always been my favorite Go feature, and I'd love to see scope-based versions like this become a first class feature in all systems languages 🌠 My only mild critique is maybe this should say "S" instead of "D's statements"?
If a non-local jump (e.g. longjmp) is used within E but before the execution of D:
— if execution leaves E, D’s statements will not be executed;
— otherwise, if control returns to a point in E and causes D to be reached more than once, there
is no effect.
030