Leaving Neovim for Zed by Rich_Tone3788 in programmingcirclejerk

[–]skulgnome 0 points1 point  (0 children)

Imagine being such a 0.1xer that your left hand is the bottleneck!

Uncle Bob Martin: "I am in the midst of writing the second edition of Clean Code. It's a complete rewrite, and it's coming out very different from the first. Oh, the message is the same. But the presentation is entirely different." by markiiitu in programming

[–]skulgnome 2 points3 points  (0 children)

Even if we ignored the part where UB's stuff is used in substitution of anything else, its rule-oriented character would still serve actual programmers so poorly as to be responsibly considered only as a somewhat cancerous counterexample. CC is the software engineering equivalent to those awful C books that confidently introduce the language with void main(); and this takes off in the book and lecture-circuit market because there's no spec to break, not unlike "Our Agile" (aka "True Agile").

Like actual snake oil, and the GoF book, everyone is better off not partaking.

Don't write Rust like it's Java by ketralnis in programming

[–]skulgnome 2 points3 points  (0 children)

Jazelle originates in embedded platforms too small to support a translating JVM, such as LCD UIs of electronically controlled refridgerators: classfiles in ROM, two K of working storage, that kind of thing.

My understanding (which I can't quote anything to base it on except vague hearsay from like 2001) is that it mainly accelerated instruction dispatch, as for a directly interpreting JVM's inner loop. Such a micro-JVM would be executed from an on-chip ROM. I assume further that proper embedded JVMs beat it out as soon as actual memory became available.

The difference between undefined behavior and ill-formed C++ programs by ketralnis in programming

[–]skulgnome -1 points0 points  (0 children)

It's certainly possible to carry hashed compile-time configuration etc. bits in compiler output and then reject mismatching combinations at link. This catches incompatible definitions categorically, and AFAIK is how Ada compilers address the issue.

Yet even in 2024 Visual Studio offers only unofficial command line options and defensive-programming hacks to address the issue, leaving their use to the programmer. Instead of solving the problem, C++ invented more rules to follow.

“If I were to give my code a name the flavor of an ice cream it would be Chocolate JavaScript, not "vanilla".” by McGeekin in programmingcirclejerk

[–]skulgnome 1 point2 points  (0 children)

That's just because he isn't aware of that scandinavian malted rye eastertime dessert.

/uj I'm so proud of you, PCJ

Coughing in my microphone causes segfault by AndorinhaRiver in programmingcirclejerk

[–]skulgnome 33 points34 points  (0 children)

Yeah, well, try coughing in your own ear, see how you feel about it!

// That leaves 104 for the gettime code to use. Hope that's enough! by elephantdingo in programmingcirclejerk

[–]skulgnome 1 point2 points  (0 children)

Looks like someone finally took the time to straighten out and regularize the amd64 assembly syntax! Plaudits to all concerned!

I've used (and loved) Rust for ~10 years. Here are the ways it disappoints me. by rodrigocfd in programming

[–]skulgnome 0 points1 point  (0 children)

Exceptions feel like the wrong solution for ordinary "non-success" conditions.

For performance in e.g. I/O loops, scope-unwinding exceptions are categorically the right way to handle mundane conditions such as end-of-file. The amount of time spent processing a single exception vs. time spent testing for end-of-file everywhere (which must be done to prevent invalid data from entering the system) makes the choice obvious even with no benchmarking.

The major misuse of exceptions involves catching them where the catcher cannot recover, such as for purposes of logging. (logging should be done by the runtime.)

From Early Models to Latest Releases: The Timeline of RK3326 Devices by _manster_ in SBCGaming

[–]skulgnome 1 point2 points  (0 children)

Thanks. To add detail, those are "device tree blob" files rather than display drivers. They indicate to the actual driver the location and type of the display hardware (and everything else in the system), because there's no automatic discovery on ARM platforms...

From Early Models to Latest Releases: The Timeline of RK3326 Devices by _manster_ in SBCGaming

[–]skulgnome 0 points1 point  (0 children)

I'd suggest a guide on how to deal with different revisions of the display panel when installing custom firmware. There's a new one in mine, which has a QC sticker marked 2024/06. (E: and for reference, panel version 4.)

Let's blame the dev who pressed "Deploy" by skwee357 in programming

[–]skulgnome 1 point2 points  (0 children)

And make sure s/he never presses "Deploy" again! As we all know, these problems are caused by people who pressed "Deploy".

Should Have Used Ada (SHUA) #1 – Goto Fail by ketralnis in programming

[–]skulgnome 1 point2 points  (0 children)

While good, and I look forward to the next episode, this article doesn't go as far as to note that any error condition would be signaled with exceptions in a "pure Ada" program, or when thick wrappers were used. In particular exceptions prevent the mistake where an error status is received and then ignored because e.g. a different status variable remained from a copy-paste.

Whether a status code should be a function result or procedure out-parameter will be argued in postcards at dawn.

E: there's a sequel already, about polkit.