I often wonder what a programming language would look like if CPU and memory were infinitely fast and big.
Java++
.
Wirth acknowledged the modularity failings of Pascal in his Modula language family, but by that time he had missed the bus.
Interesting that it "missed the bus" on "modularity" issues against two languages that didn't even have the behavior of the modulo (%) operator properly defined and standardized until late in 1999 (C) and 2011 (C++) respectively.
C is better for doing embedded bit-twiddling
It isn't. Here's a textbook example of setting bit 4 on port A on an Atmel 8 bit processor, using gcc:
PORTA = PORTA | (1 << 4);
Looks atrocious? It actually is. The processor has a set bit instruction that would look like this in assembly:
SBI PORTA,4
which will set bit 4 on port A - *without* reading PORTA.
Now let's look at the gcc statement. One would think it *reads* PORTA first then it ORs the content with 0x10000 then *write* the result to PORTA, possibly having some collateral effects depending on the hardware attached to PORTA (as compared to setting bit 4 without reading the port). Right? Wrong. gcc will "optimize" it to a SBI PORTA, 4.
All this while they previously had a sbi() function to do exactly this, without any confusion. But they "deprecated" it so now you use the arcane method, praying that gcc will actually "optimize" it to SBI as promised.
Or, for some unfortunates, 3.5
Ah, the Sony ones... going as low as 2" (Mavipack).
"Gravitation cannot be held responsible for people falling in love." -- Albert Einstein