Avatar

mrkite

mrkite@programming.dev
Joined
0 posts • 35 comments

coder

Direct message

It was definitely DDJ… back in the early 90s, right? I once asked Walter Bright (creator of D) if they were related and he told me it was just a naming coincidence.

permalink
report
parent
reply

I prefer using the command line… but it is nice to be able to use a TUI to select the staging files, so this works out perfectly.

permalink
report
reply

One of the people reverse engineering the M1 GPU for Asahi Linux is a catgirl vtuber: https://www.youtube.com/asahilina

permalink
report
reply

State machines always make me think of the Disk II controller on the Apple II. It uses a state machine to implement reading and writing sectors to disk.

https://www.bigmessowires.com/2021/11/12/the-amazing-disk-ii-controller-card/

permalink
report
reply

What are you talking about? Compilers can and do flag undefined behavior as errors. I recommend you read up on the documentation of any compiler.

And I recommend you read Chris Latter’s essay on UB.

https://blog.llvm.org/2011/05/what-every-c-programmer-should-know_14.html

Where he gives plenty of examples of UB resulting in the compiler optimizing away safety and introducing security vulnerabilities silently. In part 3 he discusses the efforts clang has made to improve on this.

He then went on to make Swift and says this: “Undefined behavior is the enemy of safety, and developer mistakes should be caught before software is in production.”

and

“UB is an inseperable part of C programming, […] this is a depressing and faintly terrifying thing. The tooling built around the C family of languages helps make the situation less bad, but it is still pretty bad. The only solution is to move to new programming languages that dont inherit the problem of C.”

permalink
report
parent
reply

It violates the principle of least surprise. You don’t expect the compiler to delete your bounds checking etc.

The way c and c++ define and use UB is like finding an error at compile time and instead of reporting it, the compiler decides to exploit it.

permalink
report
parent
reply

Back before it was awful, sourceforge required your code to be in CVS and then later svn.

permalink
report
reply

Should focus on getting rid of undefined behavior.

permalink
report
reply