POGtastic
@pogtastic.bsky.social
310 followers 420 following 2.2K posts
Software engineer, big blue semiconductor company. POG = Personnel Other than Grunt. Wife guy. Dog guy. Terrible chess player.
Posts Media Videos Starter Packs
pogtastic.bsky.social
I don't want either, but if I had to choose I'm taking away Jimmy's PlayStation instead of his insulin
pogtastic.bsky.social
Frankly (Ballpark frankly) ruining Christmas is simultaneously less harmful in the long run and somehow more visible than destroying everyone's healthcare and I'm here for it
pogtastic.bsky.social
Kibble-powered space heater!
pogtastic.bsky.social
There is TOO MUCH CALCIUM in my pancakes
pogtastic.bsky.social
I let my daughter crack the eggs when making the pancakes. I didn't realize she dropped HALF OF AN EGGSHELL into the mix

Mmmm crunchy pancakes
pogtastic.bsky.social
Speedrunning any% enlightenment by putting the cartridge onto a hot plate
pogtastic.bsky.social
OCaml if you don't mind the garbage collector, Rust if you do.
Reposted by POGtastic
gretchenmcc.bsky.social
Higgledy piggledy
Timothée Chalamet
Has a name meriting
Endless design

Much like his forerunner
Benedict Cumberbatch:
Hexasyllabically,
Easy to rhyme
tweet from childish branzino @absflora:
timothée chalamet is the new benedict cumberbatch in the sense that you can say ANYTHING and we know who you mean. tiffany chevrolet. timpanogos charlemagne. symphony cabernet. jiminy castaway.
pogtastic.bsky.social
I didn't want to burden everyone with yet another language, but I was really trying to do this in ReScript, and your approach worked just fine there too. Now to apply this example to the much more complicated thing I have in mind...

Thanks again!
type my_record<'a> = {internal: 'a, show: 'a => string}

type rec any_record = Any(my_record<'a>) : any_record

let show = (Any({internal:internal, show:show})) => show(internal)

let xs = [
  Any({internal:"foo", show:(s) => s}),
  Any({internal:42, show: (n) => Int.toString(n)})
]

let s = Array.map(xs, show)->Array.join(",")

Console.log(s) // produces "foo,42"
pogtastic.bsky.social
I can hear the handshake process now
A Windows 95-era window showing the "Dialing Process" of a modem to Al Gore's Internet
pogtastic.bsky.social
Large men, big strong men with tears in their eyes, coming up to me and telling me "your word recall is tremendous"
pogtastic.bsky.social
mods mods we need the Rude labeler
pogtastic.bsky.social
Ah - finding something in the GADT section of the manual, which has some similar syntax. ocaml.org/manual/5.3/g...
OCaml - Generalized algebraic datatypes
ocaml.org
pogtastic.bsky.social
Oh my goodness it works. Thanks a lot!

Can you explain or provide a link to the docs that describe the `any_record` type declaration? I can see that it's recursive, but I'm not sure what the heck it's doing, and I don't see that syntax in the manual.
pogtastic.bsky.social
This looks extremely promising!

Testing it on a concrete type like a string, OCaml complains "This field value has type string my_record, which is less general than 'a. 'a my_record." Do I need to somehow cast the record to make it more general?
utop # type 'a my_record = { 
  internal: 'a;
  show: 'a -> string
}

type any_record = {
  my_record: 'a. 'a my_record
}

let show { my_record } =
  my_record.show my_record.internal;;
type 'a my_record = { internal : 'a; show : 'a -> string; }
type any_record = { my_record : 'a. 'a my_record; }
val show : any_record -> string = <fun>
utop # show {my_record={internal="foo"; show=Fun.id}};;
Error: This field value has type string my_record which is less general than 'a. 'a my_record
pogtastic.bsky.social
Unless you are buying the Werksan plates that cost $BIGBIGBIGNUM, the average plate's quality control is "the guy at the factory in Shenzhen glanced at it and gave it a thumbs up." They can vary by something like ±10% (!!)

Extremely possible that one of your arrangements is slightly off balance
pogtastic.bsky.social
Metro still levies a couple, snarl grumble grumble
pogtastic.bsky.social
Hey when you're hungry you're hungry
pogtastic.bsky.social
One of the richest men in the world, permanently disfigured by a condition that became outright trivial to resolve by the 1970s
pogtastic.bsky.social
A single mom on food stamps can get treatment at any primary care clinic for rosacea, a condition that plagued J. P. Morgan so badly that his nose got permanently deformed. He was so self-conscious about this that he famously beat a reporter who took a picture of him without permission
J. P. Morgan and his extremely large, scabby nose swings a stick at a reporter as some guy tries to hold him back
pogtastic.bsky.social
Juneau has no road access at all, and I love that for them
pogtastic.bsky.social
I love tiny capitals so much. "We keep our state politicians in their little preserve, where they belong"
pogtastic.bsky.social
Ol-dum, of course.

But Newham next to it is "new-ham." Mixing them up instantly exposes you as Not From Around Here
pogtastic.bsky.social
I told a British friend what we'd done to all the other British town names and he wasn't happy about it

"Leominster is lemon-stir. We pronounce the 'ham' in exactly half of the hams. No, we won't tell you which ones are which."
pogtastic.bsky.social
Pronounced just like it's spelled!
pogtastic.bsky.social
> The average SAT score composite at Virginia Military Institute is a 1215

Wow, their student body is comparable to that of such august institutions as Portland State and UC Riverside