Rust is the only language in its space. Compiler-guaranteed zero-overhead memory safety. Someone in IRC is porting their multitasking kernel to Rust and has only had a single triple fault so far.
declaration-specifiers init-declarator-list SEMICOLON
This allows things like
which compiles with a warning. It can't be an error (for historic reasons), even though it's a useless declaration, because the grammar allows it.
Another example is the declaration-specifiers production, which allows all of the following declarations:
static const int n = 42;
const static int n = 42;
int static const n = 42;
The grammar is simple, which makes it easy to port, but it adds unnecessary complication to the language. Moving the complexity from the language to the parser would be an improvement, since the parser is only written once, but is used to produce countless other programs.
I thought the point of D was to be a drop-in replacement for C, while at the same time being easier to code in. So all existing C code can just be compiled in D and all new code should be easier to maintain and develop.
Am I right?
The examples I site are only two of many. Individually they are not significant, but the sum total may be. Image a C-like programming language without much possibility of an obfuscated code contest.I don't see any problem in your examples. What's wrong in having options in the ordering? The only piece I see that actually makes no sense is the "int;" declaration, but still, I don't see how it could happen except for doing it on purpose.
They added an endcase (or maybe end_case) keyword.How did they fix it? Did they just make it so a label stops execution when it came to a new label?
Last edited by bison; 01-10-2014 at 12:04 PM. Reason: correct gramatical error
That's useful, certainly.They added an endcase (or maybe end_case) keyword.