Yeah, and I've done that. It doesn't work out as well as you say, nor is it that easy. Problems:

1. You have to reimplement it for every platform and every memory model.
2. For some systems, like Windows, there are a wide variety of assemblers. They all use slightly different syntax. Distributing an asm file means an *unending* stream of complaints from people who don't have an assembler or have a different one than yours.
3. Getting all the boilerplate segment declarations right is a nuisance.
4. Name mangling.
5. Next your asm code all breaks when you want to recompile your app as a shared library.
6. Asm files are a nightmare on OSX.

A language should be there to solve problems, not create them :-)

Paulo Pinto wrote:
Easy, just implement a small assembly funtion.

Not everything has to be in the language.

"Walter Bright" <newshou...@digitalmars.com> wrote in message news:i984lr$od...@digitalmars.com...
Walter Bright wrote:
It's hard to see how to implement, say, a storage allocator with no pointer arithmetic.
Here's another one. Try implementing va_arg without pointer arithmetic.


Reply via email to