137
you are viewing a single comment's thread
view the rest of the comments
[-] sik0fewl@piefed.ca 15 points 2 days ago

Possibly because declarations were originally not statements in C? You could only declare variables at the start of a function, but not assign them to something at the same time.

Not sure why it still wouldn’t be allowed, though, especially if an empty statement can be a statement.

[-] daychilde@lemmy.world 7 points 1 day ago

if an empty statement can be a statement.

Sometimes saying nothing is the loudest statement you can make. ;-)

[-] nebeker@programming.dev 4 points 1 day ago

And NOP is a perfectly reasonable instruction.

[-] balsoft@lemmy.ml 9 points 2 days ago

I think it evolved like that:

  1. Declarations are separate entities to statements, because declarations do not translate to a machine code instruction
  2. Labels only make sense when attached to statements because they need to point to a particular machine code instruction <-- This should have been changed at least when declarations were allowed to be mixed with statements in compound statements
  3. Definitions are declarations plus an assignment, let's make them a subset of a declaration <-- I think this is the biggest mistake of them all
  4. "Well, it's already been that way for 40 years, too late to change it now!"
this post was submitted on 21 Sep 2026
137 points (99.3% liked)

Programmer Humor

33307 readers
388 users here now

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

founded 3 years ago
MODERATORS