"5 is the largest integer that is smaller than 6" i love university level mathematics
Alice ✨
@welltypedwit.ch
There’s no sense crying over every mistake. You just keep on trying ’til you run out of cake - GLaDOS https://welltypedwit.ch
My favorite summary of Rice’s theorem is Andrej Bauer’s here (cs.stackexchange.com/a/6928), framing it in terms of extensional properties: “a computable extensional property of programs either holds of all programs or of none.”
i keep getting surprised by just how little the average programmer actually knows about programming
is there anyone that actually understands how rice's theorem works omfg rice's theorem does not say that you can't prevent bad things from happening in a turing complete programming language.
does rust have an equivalent of strict-aliasing? i don't see any tbaa metadata in the generated llvm so i'm guessing no? that would be kind of surprising tbh since it would basically be free in safe code, wouldn't it?
great choice by rust to rename "object safety" to the much more intuitive "dyn compatibility (previously known as object safety)"
Haskell has one of the best C FFI in the world already :p
this idea i had about combining logic programming with type inference is so incredibly cool that i'm really wondering why i haven't seen it anywhere before (and also hoping that i'm not going to find out why ^^)
i have such a cool idea for vega but I will need type classes and effects for it so I can't implement it yet
i don't want to open this whole thing up again, but I think what really bothers me about the whole rust reaction to fil-c is that rust users have spent years arguing that the only important property is memory safety.
rust programmers write a monomorphic function challenge (impossible)
Anduril is no longer a sponsor of ICFP 2026!
in case you missed it, ICFP 2026 is sponsored by Anduril, who have gotten themselves a booth at the conference for the low, low price of almost 5 full student registrations icfp26.sigplan.org (and don't forget your Anduril merch swag bag!)
the just world fallacy is just undefined behavior for politics send tweet
i don't know if I can get used to rust using `!` for bitwise negation
in particular, what i find so incredibly unfortunate about this whole discourse is how adversial it all is. like, fil-C is a memory safe version of *C* (and C++) because that's the language that suffers the most under memory safety issues and so benefits the most from it. ...
it's so interesting to see how people that made liking a programming language their identity react when an actual alternative comes up
it's so interesting to see how people that made liking a programming language their identity react when an actual alternative comes up
soo, is there a build system for gluing together other build systems (stack, cargo, cmake) that doesn't suck?
omg i fixed it and i have absolutely no idea why but apparently the offsets in the stack map are all off by 16 bytes? (and i think making sure llvm can see the size of the call stack might have also been important)
how the fuck does llvm generate a stack map entry for a "pointer" ending in 1. how does that even happen omg
you know, i'm all for making your own website however you want it, but if i need to spend several minutes in devtools fixing your CSS to make it vaguely readable, you might want to reconsider a few things lol
how the fuck does llvm generate a stack map entry for a "pointer" ending in 1. how does that even happen omg
i think it would be kind of fun to try and write a slightly more memory safe moving garbage collector in rust (not necessarily *practical* but fun). in particular, i'm mostly working with raw pointers because they have lifetimes that are kind of hard to express in rust ("until the next gc")
i think the funniest haskell habit i have is that my first instinct when writing a for loop is to write `for_` also, blazingly hot take but `for_ array \x -> ...` has a more sensible argument order than `for x in array`
it's taking soo much self control not to make my gc parallel from the start. it would be soo easy (parallel garbage collection: a famously easy problem that is basically trivial to debug)
uh, why does my rust-analyzer think that subtracting 8 bytes from a *const u8 (`object`) should turn it into a *const HeapObject?
does rust(c) specify anywhere how it translates ffi types? like, if i use a &'static ... in a repr(C) struct or an extern "C" function, i'm *assuming* it will just become a pointer to the outside (with the implicit obligation that it has to always be valid), but is that specified anywhere?
ai bros are always like "talk to cLaUdE! it's like an expert that knows about all of the last 80 years of PL reasearch" and then you look at what that "expert" tells them and it's always either the most superficial bullshit or the sort of thing we thought was a good idea in the 70s