Is the world coming to an end?
Walter Bright
newshound2 at digitalmars.com
Sun Apr 3 11:03:54 PDT 2011
On 4/3/2011 2:39 AM, Ulrik Mikaelsson wrote:
> If you're looking for uncommonly used language-features that could
> easily be otherwise solved, go ahead and remove asm instead. I'll
> guess it's about as uncommon as octal literals (or maybe even more),
> have simple other solution (just compile it separately and link), and
> has much greater impact on the language and the compiler.
I've done assembler the old fashioned way - a separate .asm file assembled with
masm and linked in - for years. Having the inline assembler is an ENORMOUS
productivity improvement. Just a few off the top of my head:
1. MASM's syntax changes unpredictably from version to version. I'd get a lot of
grief from customers with "this doesn't assemble with *my* version of MASM", or
"I don't have MASM".
2. Different assemblers have utterly different syntax - see MASM and GAS.
3. MASM can't read struct declarations, meaning you now have parallel
declarations that manually must be synced.
4. MASM doesn't understand C++ or D name mangling.
5. Can't mix MASM files and D code in the same function.
6. Can't access D manifest constants from MASM.
7. D takes care of local variable stack addressing modes for you.
8. I can't fix MASM bugs.
9. And Adam's comments.
More information about the Digitalmars-d
mailing list