Programming Leftovers
-
Stephen Kell ☛ Rambles around computer science
To follow on from my previous proof-of-concept and later musings, here's another form of self-remaking C program in one file. This one involves some shell code that generates C code, to be included, using some punning a bit similar to my shell-and-Make one-filer.
-
Malcom Coles ☛ Is the Unix Philosophy Still Taught in School? - pid1
To the software developer that is working on the next cool DevOps tool, please make it just work inside the Unix Philosophy by default. Let me opt-in to the cool features. The value tools bring to the ecosystem is being part of the ecosystem, not doing the unexpected.
-
Karl Seguin ☛ GetOrPut With String Keys
I've previously blogged about how much I like Zig's getOrPut hashmap method. As a brief recap, we can visualize Zig's hashmap as two arrays: [...]
-
Bertrand Meyer ☛ Blog Archive New preprint: Loop unrolling - formal definition and application to testing
Testing coverage criteria usually make a gross simplification: they assume that loops will have their bodies executed 0 or 1 time. How much (specificall,y how many bugs) are we missing as a result?
This article defines loop unrolling formally (removing common misconceptions of the topic), shows how loop unrolling was applied to a testing framework (using program-proving techniques as well), in line with our test-and-proofs work of the past several years), and presents detailed empirical evidence about the effect on finding bugs.
-
Shadaj Laddad ☛ Distributed Systems Programming Has Stalled
If you look online, there are tons of frameworks for writing distributed code. In this blog post, I’ll make the case that they only offer band-aids and sugar over three fixed underlying paradigms: external-distribution, static-location, and arbitrary-location. We’re still missing a programming model that is native to distributed systems. We’ll walk through these paradigms then reflect on what’s missing for a truly distributed programming model.
-
Phoebe ☛ Type-Flexible Matrices
In my university course for linear algebra we were tasked with a group project and part of the project was to implement and benchmark various matrix operations. I had initially created a naive implementation in rust, backed by an idea of having the matrix be applicable for arbitrary types. The base struct looked like this: [...]
-
Rlang ☛ Actions Speak Louder: Building Dashboard Features Users Actually Want
The most valuable feedback often comes not from what users say, but from what they do! When was the last time you clicked a “Give Feedback” button in an app? Exactly.
-
Amazon Inc ☛ Port .NET Framework workloads to Linux with Amazon Q Developer, Part 2: Test Projects