Labelling the crab as C is sure to ruffle some exoskeletons..
Programmer Humor
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
As at least one nautically themed childrens' book surely has it: C is for crab.
Coming at programming sideways feels more like a Haskell or Prolog thing, though.
Apple is for ADA
Ball is for BASH
Crab is for C
Dog is for D
Elephant is for Ecsmascript
Fox is for F#
Goat is for Go
House is for Haskell
Igloo is for
...okay I got stuck there.
Java has Duke
Ugh, I accidentally got a fake transparent background. Oh well.
Branding fail so bad that everyone forgets that Java even has a mascot.
There are dozens of us! Millions of devices and dozens of us know about Duke!
Fun fact, Duke is released to the public. I forget in what way exactly, but Oracle freed them (him? it?).
I mean, at the end of the day, if you really understand your language of choice, you know that it is jusf a bunch of fancy libraries and compiler tricks of top of C. So in my mind, I'm a fully evolved programmer in a language, when I could write anything I can write in that language in C instead.
only true if your language compiles to c. fortran peeps are safe.
I'm an 80's/90's BASIC bitch, so I'm still irrelevant!
10 PRINT "FARTS"
20 GOTO 10
It's not what you can use that language to do - all general purpose languages are Turing Complete, so what you can do with them is exactly equal. It is about what the language will do for you. Rust compiler will stop you from writing memory unsafe code, C compiler cannot do that.
...are Turing Complete, so what you can do with them is exactly equal.
But they're only equal in the Turing complete sense, which (iirc) says nothing about performance or timing.
But how does the Rust compiler do that? What does it actually check? Could I write a compiler in C that does this check on a piece of Rust code?
C is so simplictic, that if I can write a piece of functionality in C, I must understand its inner workings fully. Not just how to use the feature, but how the feature works under the hood.
It is often pointless to actually implement the feature in C, since the feature already has a good implementation (see the Rust compiler for the memory safety). But understanding these features, and being able to mentally think about what it takes in C to implement them, is still helpfull for gaining an understanding of the feature.
Or, rather, most compiled languages are just syntactic sugar on top of assembly, and that's especially true with C. (Oh, you can use curly brances and stuff for blocks? That's sure easier to read than the label mess you get with assembly.)
I mean, yeah, most languages are turing complete.
Rust: Downloading 7390327 crates...
I feel like Rust would be some complaint from the compiler saying that some apparently unrelated struct can't be Send/Sync for some inscrutable reason. Or something about pinning a future.
Rust is still in the locker room having an argument with their coach (borrow checker).
C++ is home sick, currently the doctor (compiler) is not sure whether it's got the flu or a terminal cancer.
terminal cancer
"I'm sorry, you've been diagnosed with :(){:|:&};:"
"You have a couple seconds to live."
Why is the crab not Rust. This is outrageous, it’s unfair
Rust would be some borrow checker compile error like
borrowed data escapes outside of associated function
argument requires that `'1` must outlive `'static`
rust errors are funny if you don't know rust
News at Ten: Borrowed Data Escapes Outside of Associated Function
Not a word of a lie, I saw a "segmentation fault" error in JavaScript.
Can't remember how we resolved it, but it did blow my mind.
Technically any language runtime can end in a segmentation fault.
For some languages, in principle this shouldn't be possible, but the runtimes can have bugs and/or you are calling libraries that do some native code at some point.
Ive also seen this, but not from js but node
I have seen a Java program I wrote terminate with SIGSEGV. I think a library was causing it.
C trying to take the shortest path to the goal.
Would probably have won (and broken the universe), if the referee didn't exist.
Python is being even smarter by trying to underflow the distance to the finish line.
"npm install" in particular is getting me.
This implies that Javascript will get moving in the correct direction once it finishes installing dependencies, but it's just going to get fucked with incorrect behavior that doesn't even have the courtesy to throw an actual error.
I find it funny that the pufferfish blows up at its own gunshot
Why is openbsd the referee?
The puffer fish is Bash
Yep, it's the one starting everything.
And doing nothing else. And still something manages to no be right.
Rust isn't shown because it's already completed the course
Noob should've used PNPM
and then there's ruby who didn't even qualify but still would have done better than the others.