Robert Widmann

@cfi
846 Followers
106 Following
490 Posts
Desktop developer. Programming language enthusiast. reenignE. Aspiring Type Theorist. λΠω Lover. Math@CMU 2019. Swift@Apple.
Bluesky@cfi.bsky.social
I have yet to find a recipe that Alton Brown’s onion dip prep method didn’t improve. Make the onions up to the end of the browning step, then mix them in a quiche, in a dressing, in a stew. So much improved by a sweet onion bomb.

@whitequark @cliffle with statement expressions, you can mix in UB from indefinite argument evaluation order and construct Duff's Russian Roulette

switch (rand())
foo(({ case 0: a; }), ({ case 1: b; }), ({ case 2: c; }), ...);

@cliffle that's my favorite way to print a comma-separated list

switch (i = 0, count) for (; i < count; ++i) {
printf(", ");
default:
printf("%d", elements[i]);
case 0:;
}

since NYT games has revealed people like constraint solving, i figured i'd pitch them a struct packing game

it'll just cost them a copy of libclang - a measly half a gigabyte of text

Build your compiler upside down. Have objects demand codegen demand sema demand parse.

AOT is a compiler demanding object files
A JIT is a compiler demanding codegen
An IDE is a compiler demanding sema
An indexer is a compiler demanding parse

Establish stable identities for your intermediates; your compiler is a database engine. Its demands are the queries.

Build something like it’s 2025.
https://mastodon.social/@cfi/115209288255249990

Google’s AI has credulously reported an April Fools YouTube video as fact.

Do not eat rosin. Do not make rosin from maple tree sap. Do not eat rosin made from maple tree sap.

There’s something about async init that feels uncomfy to my brain. Maybe it’s muddling the notion of isolation with initialization. I want to think of init as the (near-)instantaneous creation of a value. Any isolation hops are a language-mediated effect on top. I prefer an async static func isolated to an actor if I need it.
This being the hammerklavier the hard part is not fingering piano like an organ, the hard part is doing it at tempo and reaching this point with enough stamina after having survived the first half
I think there’s a point (which I shall call “Chopin’s Limit”) where music editors give up all dogma about which fingers ought to go on what keys and you get shit like this. Otherwise you’d simply run out of fingers.
forget formal methods have we tried expressing lock placement and ordering as train signaling problems in factorio?