Rondo Dondo

Rondo Dondo

@maplant.com

NYC based programmer. I mostly talk about implementing functional programming languages

215 followers188 following1K posts

Your skills need constant honing and refinement and will atrophy otherwise. This is why when you go on a two week vacation you have to completely re-learn how to program when you get back

Favorite fun fact about PHP: they got the associativity of the ternary operator wrong in their original YACC(?) grammar and they just never fixed it

philpax@philpax.me

starting to see some unironic PHP defence and: none of that, please it is an objectively bad language that was designed wrong from day one. yes, recent versions have improved it. just like C, though, it is all living legacy code that should be phased out

my second most controversial PL opinion (the first is that macros are good) is that if you’re willing to accept a GC you should be willing to accept multi shot continuations

Hey Siri. Decompile and distill tetris. Add an 8th tetronimo

RedFade@redfade.bsky.social

No that same person posted this it’s somehow even sadder than you think

I wish there was a nice convention for specifying a TODO that must be completed in this PR vs a general "do this eventually". If you have a good idea for one tell me so I can start doing it

One thing that I wished was talked more in PL research instead of how we can make PLs play better with hardware is how we can make hardware play better with PLs

A little in awe of "Representing Control in the Presence of First-Class Continuations"... what a paper

The final form:

Rondo Dondo@maplant.com

None of the programs I tried for uploading worked, so I asked Claude to write me my own. I think it's because I wasn't running them as root, but still

None of the programs I tried for uploading worked, so I asked Claude to write me my own. I think it's because I wasn't running them as root, but still

Rondo Dondo@maplant.com

I’ve reached levels of pretension previously unheard of

I think that my belief that leaving the window open will make some of the flies that have previous flown in through the window eventually leave is running afoul of the second law of thermodynamics

CDs are amazing... they cost $10, you keep the music forever, and sometimes they come with a fun little poster on the inside

I've been using claude a lot more for a certain scheme-rs patchset since I have two broken fingers and getting the code to feel authentically my own is such a struggle that I may just hold off until my fingers completely heal

yes, “our age of bronze is collapsing“ is stupid, and maybe 90% of the dialog in The Odyssey is not great, but it can still be an amazing film and have stupid dialogue. Not every movie is my dinner with Andre

Using emacs with two broken fingers and only one ctrl key on the side of the hand with the broken fingers is an interesting challenge. Also I'm back from my backpacking trip...

Saw a man with a patch on his backpack that said "Don't mistake my kindness for weakness", which is an interesting way of saying "I'm kind and strong" in a threatening manner, which doesn't strike me as a particular kind thing to do

Buying a DAP. Buying a dumphone. Deleting my social networking accounts (including this one, eventually). I will be free

The other thing about AI is that it has replaced something I like - programming - with something I don't like - mindlessly scrolling the web and fixing bad code

Honestly kind of sick of AI tools in some cases. When you approach sufficiently difficult problems, they just don't produce good code. You get lulled in because the easy and rote stuff is done so much quicker, but past a threshold they just waste time.

Rust isn’t good because it’s “memory safe,” it’s good because it was the peanut butter spoon that forced system programmers to finally learn functional programming concepts

News aggregators have become insanely boring. I don’t need to read comments. I’m going back to RSS. If you have a blog (or know of some interesting ones) please send them to me/comment them!

Managed to write an algorithm that requires Read/Write locks and the ability to upgrade read guards/downgrade write guards and I must say it made me feel like the smartest person alive

Couldn't sleep so I did some optimizing. Well, that's not accurate. I couldn't sleep because I was doing some optimizing

The solution here is to switch to stack based continuations.

Rondo Dondo@maplant.com

Running scheme-rs on benchmarks with larger amounts of data showed pretty horrible performance. Came to a few conclusions: - Atomic reference counting, and concurrent cycle collection is expensive. Need to reduce the number of allocations.

Running scheme-rs on benchmarks with larger amounts of data showed pretty horrible performance. Came to a few conclusions: - Atomic reference counting, and concurrent cycle collection is expensive. Need to reduce the number of allocations.

- Can't switch to a conservative GC like BDW. I need tagged pointers, and it doesn't account for memory in other allocators. Arc + cycle collection is the only option. - Purely heap allocated GC continuations _could_ be fast, but not in a Rust safe embedded system.

- Basically, choosing to present a completely memory safe rust API has made creating a fast scheme implementation much more difficult than I anticipated

I can't help but think that the internet has gotten insanely boring. Maybe my standards are higher? Feels like there used to be so much weird stuff to find.