Diseased Open Source Software Community - it's about ethics in Code of Conducts

  • 🐕 I am attempting to get the site runnning as fast as possible. If you are experiencing slow page load times, please report it.
Every language has some quirky little construct like this, which someone invented purely because they could, that might achieve a half microsecond improvement.
Not every language features shit like this. Ada, as an example yet again, was specifically designed to root out and entirely eliminate odd syntactical constructs like this, for even back in the 1980s there was a long track record of disastrous flaws made in such ways.
You're only singling these out in C because hating C is your autistic fixation.
No, I hate the C language too much for it to be a fixation of mine. Think of it like this: I pointed out a C language programming error, which had the same shape as most every other C language programming error, and the world is currently under a global outage caused by shitty programming practices in a kernel driver, which also shouldn't have been possible. The response I got, however, can be summarized as the following: If you don't program how I like, you are a chronic masturbator.

Yes, I'll make fun of that, any day of the week.
 
That's because these are the sort of hyper-optimisations that don't really achieve much and only exist for bragging rights. Every language has some quirky little construct like this, which someone invented purely because they could, that might achieve a half microsecond improvement. It even says "a special way to use switch", indicating that it's not normal. And as the other one says: Why might one want to do that? The simple answer is "because one is a pigeon". You're only singling these out in C because hating C is your autistic fixation.
Worth nothing was that these "devices" are constructs from the 80s.
But they are really clever and shows a deep understanding of how the language works.

Back then compilers were not very good at optimizing so you had to unroll loops manually or bypass expensive expressions in conditional evaluation manually.

Nowadays both these devices are used every day. In every single compiled language.
It is just that compilers do these optimizations for you when generating the code so you don't have to do it yourself for VERY hot and performance critical code.

Sure, C and its derivative languages are HARD to use correctly so definitely not a language for pajeets or trannies. But when you write low level code you are supposed to know what you are doing and to be careful.

For rust. Look at 97ab3e8eec0ce what is that ? A kernel NULL pointer dereference in rust code? Oh woy woy this should be impossible.... lol


The outage was not due to C language bugs. It was because a pajeet pushed out an untested piece of shit pajeet patch to 100% of prod. Anyone that has a process where "I will push to 100% of prod right away after miniman manual testing" is a problem.
 
I literally give no fucks if you like Rust, go be a preachy prick about it elsewhere.
Yup! This is exactly correct. It's also why people are growing to hate Rust. The Rust Evangelical Taskforce meme is real and they're annoying as fuck. I openly reject proposed architectures or tools at my job that involve Rust in any fashion because I know exactly what kind of bullshit comes with it, and honestly its technical problems are the least of my worries when someone starts singing its praises.

One thing I do enjoy about Rust and its dick-riders is it gives me endless opportunities to bring up Erlang (and its younger sibling Elixir), which always makes them seethe as it's been around in production use since the mid-90's providing absurdly good uptimes (think "seven nines" reliability) on mission-critical hardware (e.g. phone network switches), doing a lot of things other languages still struggle to do even today. Pure functional programming language, too. "Let it fail" is a fun and very insightful way to build reliable software.

Elixir is more modern, but has 100% runtime compatibility with Erlang and all its libraries (and runs on the same runtime under the hood). Phoenix (a webshit framework) is the de-facto standard tool for web development with Elixir, and in particular Phoenix + LiveView makes reactards fume like nothing else.
 
Duff's device is well-known compared to Pigeon's Device:
C:
int pigeons_device(int a, int b, int mode) {
int result;

/* Isn't C a wonderful language? */
switch (mode) {
case 0: if (gloop(a, b)) {
case 1: result = arfle(a, b);
break;
} else {
case 2: result = barfle(a, b);
break;
}
}
return (result);
}
The author of that article included this nice control-flow diagram:
pigeons-device-control-flow.png

I understand what this aberration is supposed to do after reading the webpage you've linked, and sure, the use-case presented[1] is valid.

However... HOWEVER... wouldn't one be able to express the same semantics in a much less niggerlicious manner by doing something like this?

C:
/* Assuming types of `arfile(a,b)` -> int; `a`, `b` -> int */

int (*func_to_call) (int, int) = NULL;

/* Find out which function to call on a,b */
switch (mode) {
    case 0:
        if gloop(a,b)
            func_to_call = arfle;
        else
            func_to_call = barfle;
        break;
    case 1:
        func_to_call = arfle;
        break;
    case 2:
        func_to_call = barfle;
        break;
}

result = (*func_to_call)(a,b);
return result;

Please excuse any mistakes in syntax, I haven't run this through a compiler nor do I usually work with function pointers.

What's the loss here, compared to Pigeon's """device"""? They both express the same thing (unless I'm a total nigger); is the point avoiding an indirect function call? Or does someone genuinely find Pigeon's Device easier to read and understand?


[1]:
If mode == 1, return some function of a and b. If mode == 2, return a different function of a and b. But if mode == 0, decide which function of a and b to return based on some other relation between a and b.
 
Last edited:
  • Thunk-Provoking
Reactions: UERISIMILITUDO
What's the loss here, compared to Pigeon's """device"""? They both express the same thing (unless I'm a total nigger); is the point avoiding an indirect function call?
Either that, or to deal with code fragments that aren't easily put into a separate function, where this trick avoids code repetition and the ever so slightly more expensive predicate mode == 1 || (mode == 0 && gloop(a,b)).
 
Ada, as an example yet again
is Ada the only language you know? I have a feeling your answer to everything is "Ada does it this way". Yeah. I'm sure it does and that's cool. That's why there are so many programming languages. C just happens to be the one to write low level code and kernels, of all the ones that compile to machine code. FORTRAN does too but nobody writes operating systems in FORTRAN nowadays. I wonder why, maybe it's because it's made for scientific computation?
 
I'm reminded of a very old post, which I can use by analogy to prove that the C language programming community may as well be a herd of lolcows:
Kentucky architecture circa 1700s.
View attachment 281217
View attachment 281218
View attachment 281219
The best some lazy ass white trash can cobble together in 2016.
View attachment 281222
Fuck you, dumpster dad. I hope Indians steal your woman, and I can't even a-log because everybody else is already going to die of dysentery because you literally shit where you eat. Daniel Boone wept.
Everyone can clearly see how the last photograph here is a degeneration. The shack isn't anywhere near as good as the log cabins. This may as well be most of the modern programming community in general, and it's only the general public's lack of knowledge regarding programming that hides this fact. The shack is actually not as bad as the programming, however, because the shack only affects those who live in it, and perhaps emergency services. A stupid fucking programmer, however, can harm hundreds of millions of people through negligence, as we've seen lately yet again.

It's okay bro, they reviewed the code and it's fine now bro, it doesn't have more problems bro. Google even wrote many fuzzing tests to detect flaws in WebP, which didn't work to uncover the flaw. Here's my source:
https://blog.isosceles.com/the-webp-0day/ (archive)

It's possible to write programs in a way where the specification must be met by the implementation, meaning even an Indian couldn't fuck it up; now, the Indian wouldn't be able to get any work whatsoever done, but still.
is Ada the only language you know?
No.
I have a feeling your answer to everything is "Ada does it this way".
It's kind of like how a doctor might talk about hygiene, to an Indian.
C just happens to be the one to write low level code and kernels, of all the ones that compile to machine code.
Yes, we see how well that's going. Fuck, I can't wait for 2038; thirty-two bit UNIX time will exhaust itself in that year, causing all manner of failures in embedded equipment using the Linux kernel. Now, for everything wrong and stupid about OpenBSD, at least they broke compatibility and forced sixty-four bit UNIX time many years ago. It's hilarious how these motherfuckers design interfaces they know are broken, and which will break within their lifetimes; it'll be a real Y2K fuckup.
 
sure would be nice if you faggots could take the programming autism to the programming thread so this can be about open source again.
Here, I can fix that. Here's a very informative article I've read about standardizing the #embed preprocessor directive for the 2023 C language standard:
https://thephd.dev/finally-embed-in-c23 (archive)

This person is responsible for getting the feature standardized, which apparently took five years. Now what's funny about this? Said person is an out and proud furry; here's the image of his, or her, fursona embedded in the article:
no_maidens.png
That's so cute and appropriate. Here's a better image, in colour:
thephd.png
I'm reminded of Soatok, that furry whose thread I'm still lazily writing, and whose cryptography articles are littered with his blue fox fursona shaking his head at people who don't understand that RSA is bad and other things.

I think it's great to see participation from minority groups like furries in the C language community, and would love nothing more than to see more. I see it's been over a year since this furry was mentioned, and only really in the context of a Rust conference, but that's no good. I want to shine a brighter light on this person's achievements. Many more additions to the C language are thanks to this person, most recently it seems to initialization rules, and I think that's great.
 
Here, I can fix that. Here's a very informative article I've read about standardizing the #embed preprocessor directive for the 2023 C language standard:
https://thephd.dev/finally-embed-in-c23 (archive)

This person is responsible for getting the feature standardized, which apparently took five years. Now what's funny about this? Said person is an out and proud furry; here's the image of his, or her, fursona embedded in the article:
View attachment 6219040
That's so cute and appropriate. Here's a better image, in colour:
View attachment 6219042
I'm reminded of Soatok, that furry whose thread I'm still lazily writing, and whose cryptography articles are littered with his blue fox fursona shaking his head at people who don't understand that RSA is bad and other things.

I think it's great to see participation from minority groups like furries in the C language community, and would love nothing more than to see more. I see it's been over a year since this furry was mentioned, and only really in the context of a Rust conference, but that's no good. I want to shine a brighter light on this person's achievements. Many more additions to the C language are thanks to this person, most recently it seems to initialization rules, and I think that's great.
If we're going to talk about C23 then it's clowns like this that nearly got the entire thing cancelled due to missing the ISO submission date.
Which is fine because C99 works perfectly well and adding XXD with a DSL to the C standard is exactly the sort of shit it doesn't need. Niggers can't into linkers.
 
sure would be nice if you faggots could take the programming autism to the programming thread so this can be about open source again.
They were always going to overlap, but I think a large part of this is because of Uerisimilitudo being banned from the other thread for pissing off Josh.

This person is responsible for getting the feature standardized, which apparently took five years. Now what's funny about this? Said person is an out and proud furry; here's the image of his, or her, fursona embedded in the article:
That's JeanHeyd Meneide, a borderline lolcow who is an abusive relationship with C. He reposts a lot of gender stuff; I get the impression he would have trooned out if he wasn't black.
 
Somebody posted this utility on hacker news and I thought it's a poster child for everything wrong with the homos that try to invade open source these days: https://github.com/eza-community/eza (discussion: https://news.ycombinator.com/item?id=41031112)

It's a pointless rewrite in Rust, of a tool that is already feature complete, oriented towards community building, with billions of extra features that nobody's going to use or need. They just can't accept that there are tools that are already sufficient.

This is how it's advertised:

eza is a modern, maintained replacement for the venerable file-listing command-line program ls that ships with Unix and Linux operating systems, giving it more features and better defaults. It uses colours to distinguish file types and metadata. It knows about symlinks, extended attributes, and Git. And it’s small, fast, and just one single binary.

  • "Maintained", as though ls was the kind of software that needs any maintaining
  • "small, fast" - several times larger and slower than ls
  • "one single binary" - as though no dynamic linking was an achievement or a feature worth pursuing
And of course it's developed by a host of transvestites and pajeets:


I don't even need to investigate these profiles, I only need a thumbnail of the avatar the size of a pinhead.
 
By deliberately making some decisions differently, eza attempts to be a more featureful, more user-friendly version of ls.
What do they mean by this? What is not user-friendly about ls? You type the command and it shows the files. If you want more out of it then you take 5 minutes to look at the manual. I guess you can argue ls --help has more words than eza --help. I also tried to "compare" (with my very scientific method, using time on ls -Ra &> /dev/null vs. doing the same to eza -Ra &> /dev/null on my entire fs) their performance using the time and the prebuilt binary they provide.

Ls:

1721660164114.png

Eza:

1721660176748.png


Am I doing something wrong? Is it because eza has more color, or is it because of all the new features? Is my computer just rust-phobic? I don't get it
 
Last edited:
"small, fast" - several times larger and slower than ls
I hadn't tested this myself, but what a difference this is.
ls -R / 3.55s user 10.68s system 93% cpu 15.229 total eza --group-directories-first -R / 8.10s user 59.08s system 62% cpu 1:47.13 total
I apparently trusted Rusttrannies too much after Ripgrep actually did reasonably adhere to its promises. After trying it a few times, eza got slightly better, but still 3-4 times slower than ls.
What do they mean by this? What is not user-friendly about ls? You type the command and it shows the files. If you want more out of it then you take 5 minutes to look at the manual. I guess ls --help has more words than eza --help. I also tried to "compare" (with my very scientific method, time & ls -Ra vs. eza ls -Ra on my entire fs) their performance using the time and the prebuilt binary they provide.

Ls:

View attachment 6220026
Eza:

View attachment 6220027

Am I doing something wrong? Is it because or color, or is it because of all the new features? Is my computer just rust-phobic? I don't get it
Apparently not just you; we had the same idea to test. Since this was posted while my autism demanded I repeatedly test the very slow eza, have the results for -Ra too as another data point.
ls -Ra / 5.42s user 13.11s system 81% cpu 22.746 total eza --group-directories-first -Ra / 10.97s user 61.13s system 91% cpu 1:18.94 total
ETA: --group-directories-first being apparently hurts eza a lot more than ls - one more test set for fairness for the remaining data points:
ls --group-directories-first -Ra / 5.80s user 18.81s system 99% cpu 24.739 total eza -Ra / 9.44s user 35.31s system 99% cpu 45.085 total
 
Last edited:
Which is fine because C99 works perfectly well and adding XXD with a DSL to the C standard is exactly the sort of shit it doesn't need.
I don't know, this article has compelling statistics disagreeing with that assertion:
https://thephd.dev/implementing-embed-c-and-c++ (archive)
Why can't we have this for this thread as well?
I reviewed the last seven pages, and the thread is surprisingly less derailed than I thought. I think everyone's got it out of his system for now.
That's JeanHeyd Meneide, a borderline lolcow who is an abusive relationship with C.
He seems to like abuse, going by his other interests:
https://twitter.com/__phantomderp/ (nitter)
It's just political and tranny shit not worth archiving.
 
Back