I often wondered why languages like c do not have simple syntactical allowances that would help readability. For example, large numbers such as 1073741823 can be hard to read so my opinion is modern day languages should allow delimiters such as , (comma) so you can write a statement such as x = 1,073,741,823. That is MUCH more readable. Perhaps you can do this in some languages using #DEFINE but it seems like such a simple thing should be native to the language.
Another feature I would like to see in general purpose languages are huge ints. That is, integers that are not limited to 16 or 32 or even 64 bits but some very large number of bits, perhaps 256. This would help with simulation of certain games with very large state spaces. Why burden the programmer with such tasks? I, as a user of a programming language, would expect some complexity to be hidden from me and handled by the compiler itself. Just like when we drive our cars, many people don't understand the inner workings of it but they don't need to.
It would also be nice if the math library had basic combinatorial functions such as choose(52,5) and the language also had direct syntax for factorial such as x = 52!/47!. That is "syntactical sugar" compared to Factorial(52)/Factorial(47).
Also when I was in college I proposed a computer language that would optionally use indenting to limit the scope of statement like IF, CASE, LOOP, FOR.... For example:
if cardcount < 52 ProcessNextCard() else deckfinished = TRUE next statement goes here and is not part of if statement cuz it is not indented.
Here is an even better example:
for c1 = 1 to 50 for c2 = (c1+1) to 51 for c3 = (c2+1) to 52 ProcessHand() nextstatement goes here but it is not part of any loop.
Ideally the programming environment would show indentation brackets to confirm the alignment and have a special printing program that does the same.
Of course if there are a lot of lines of code in the body of the if statement then it would be better (clearer) to insert the endif, ifend or fi "missing" part of the if statement. The compiler should allow both options. Forcing the programmer to indent is a good way to teach new programmers good programming practice and to penalize lazy programmers.
Also how about a language that self profiles (or at least assists) using a special directive? For example, if someone wrote a file compressor program and wanted to know where it was eating up most of the time and in what proportion, it would be nice if the language automatically inserted some markers or at least allowed the programmer to insert them easily and then the profiler would tell the programmer what proportion of the runtime was between each set of markers (such as A-A, B-B, C-C... Z-Z).
I could go on and on with a wish list of enhanced features to make programming easier but I will just stick with these few for now.
So my main question is why are many of these features lacking in modern day languages or are they actually there?