I hope we won’t still be using both gcc and compiler-specific pragmas in the 22nd century. Also,
s8 s16 s32 s64
u8 u16 u32 u64
is in my opinion a better way to denote signed and unsigned integers, as
i8 i16 i32 i64
is in my opinion unclear.
Why is address defined as *? It doesn’t make anything clearer and just adds a lot of line noise. That’s just ugly for things like char address address x; and the like.
char address address x;
And defining a string as a char *? That’s a great way to have someone who doesn’t know what they’re doing write a whole lot of bad code assuming that c “strings” work the same way strings work in other languages. C strings must be understood at a low level.
Those capitalized function names are making me cringe too.
Ugg, and I still don’t get the point of auto’s in C. I use them in C++ to get around using disgustingly long iterator types, but that’s more because the language sucks. I see no reason to use them in C except to add to the confusion of what’s going on.
I’m not against shorter type names, but I agree with FRIGN, that s8 is clearer than i8.
int x = 4 address 6;
There is no way C will get to 2100 and be 2 spaces instead of an 8 character tab.
Oh gawd! MORTRAN rides again.
Seriously, if you think C needs a bit of refresh, you right.
It’s call D, and it really quite nice.
But layers of macro lipstick on old pigs? Ja. Been there, done that. MORTRAN was a prime example.
I never got the hang of D. C has as its greatest advantage (to me, at least) that I can fit the whole language in my head at once. D seems…big.
C is two languages C and C preprocessor.
D at least unifies both as “There is only one language, D which is like a friendlier and more powerful C, but if you want to evaluate this chunk of D at compile time, and everything is known at compile time, you can”.
And oh yes, since the compiler already knows a huge amount about your code, it at least provides a way of querying and acting on that information. And it just looks like an accessor on the type.
This unification is a massive simplification compared to say C++.