Re: Why there are so many assemblers.
- From: "randyhyde@xxxxxxxxxxxxx" <randyhyde@xxxxxxxxxxxxx>
- Date: 29 Nov 2005 10:57:47 -0800
Betov wrote:
> "randyhyde@xxxxxxxxxxxxx" <randyhyde@xxxxxxxxxxxxx> écrivait
> news:1133218762.807701.57500@xxxxxxxxxxxxxxxxxxxxxxxxxxxx:
>
> > I had a
> > lot of interest in the project and was following it until it was clear
> > they were deviating from Intel Syntax.
>
> Ass-hole, "Intel Syntax", is a generic wording
> for the overall basics of the x86 mnemonics list,
No, it is not.
"Intel Syntax" means that the assembler uses the language grammar
specified by Intel (or, at least, a reasonable facsimile). All that
NASM shares with the original Intel specifications are the mnemonic
names, register names, operand ordering, and a subset of the Intel
addressing mode syntax. Just about everything else is different.
You might want to read a book on formal language theory, so you can
learn what the term "syntax" really means with respect to a programming
language. By your usage of the term, we could claim that Pascal is
equivalent to C because they share common reserved words like "if",
"else", "while", and "for" as well as having similar arithmetic
expressions and function calls.
> and general syntaxic parameters order, and such
> very general points.
"Syntax" is roughly a synonym for "grammar" in language terms. And
Intel provided a *very* specific grammar for their assembly language
syntax. NASM doesn't use that grammar. It uses a different grammar.
Therefore, it is not an "Intel Syntax" assembler.
It's not like writing a true "Intel Syntax" assembler is impossible, or
anything like that; several outfits have come pretty close to doing
exactly this (I say pretty close, because technically if there is *one*
insignificant difference you have a different language, so we'll allow
for extensions and a few minor variations under the "generic" term
"Intel Syntax"). Examples include MASM, TASM, OptAsm, Incra, perhaps
WASM (haven't looked real close at it), and others. NASM doesn't come
close.
Now I understand why you are so vocal about how the "Intel Syntax"
label ought to be a sloppy one -- it would take a lot of slop in the
definition in order for you to claim that RosAsm is an "Intel Syntax"
assembler. And, as you're constantly knocking products like HLA because
they are different, being able to claim "Intel Syntax" for your own
product is important. But trust me, NASM isn't close, and RosAsm is
*far, far, away* from being an "Intel Syntax" assembler.
Today, the only assemblers in common use that are close to being Intel
syntax are MASM and (possibly, depending on how commonly you think it
is used) TASM. All of the other assemblers that reasonably supported
something similar to the original "Intel Syntax" are long gone.
>
> There never was anything else nor anything better
> called "Intel Syntax".
You mean, other than Intel's ASM86, ASM286, and ASM386 products?
Here's a reference of a product that I believe was based on Intel's
code (IIRC):
http://www.profimatics.com/products/irmx/manuals/asm_macr.pdf
>
> The most funny point of your bullshits, is that, on
> one hand:
>
> * NASM lost any interrest for you, because it was
> not conforming to the so called Standard.
That's correct. I saw absolutely no need for another "me-too" hobby
level assembler. Even today, the *one* product that still needs to be
written, IMO, is an "Intel-Syntax" (or better yet, MASM-compatible)
assembler that is portable across operating systems. Originally, I was
led to believe that NASM would be this product. When it turned out that
it was going to be yet another clone of A86 or the CP/M assembler, I
lost interest. If I wanted a portable, but incompatible assembler, I
could have used Gas.
>
> * When you wrote your absurd HLL Pre-Parser, the
> very first thing you did, was to completely break
> with any known standard, for no other reasons but
> the ones i explained (missleading beginners, creating
> confusion, locking the HLA victim outside Assembly).
Yes, only *you* know the reasons I created HLA. Well, let's say that
you're 100% correct. I guess I've been quite successful because you
don't see too many of those HLA users messing around with RosAsm, do
you? If HLA served no other purpose than that, I guess that would make
me happy :-)
>
> For the ones interrested with real historic facts,
> and serious considerations about Assembly Syntax, the
> only things that can be said about NASM Syntax, are:
>
> 1) NASM confroms to the "Intel syntax" basics.
Well, it uses the same mnemonics, register names, and operand ordering
as the Intel syntax. I guess if you want to call that subset the
"basics" then your statement would be true. But NASM has no more chance
of being able to assemble an "Intel syntax" compatible source file than
does Gas or HLA. So in a sense, NASM does the same thing you're
accusing HLA of doing: it breaks with the known standard, creates
confusion, and locks people out of using other assemblers.
>
> 2) NASM was a major improvement of the x86 Syntax, in
> the direction of simplicity and of logic.
Well, that may be your opinion. The truth is, NASM's syntax is a big
step backwards. It is clearly influenced (directly or indirectly) by
the syntax of the Zilog Z80 assembler. Indeed, this was always the big
draw to the TASM "Ideal Mode" (where NASM probably got the use of
brackets from): "it's just like writing Z-80 code". Now *that's* a
major improvement :-)
>
> 3) All of the Assemblers' authors who came afterward
> (me, Thomasz and Jeremy) conformed as closely as
> possible (with minor independant options and choices)
> to the NASM Syntax innovations.
What a complete joke this statement is.
Jeremy doesn't even *mention* NASM in his manual (he does mention MASM,
TASM, FASM, and even RosAsm).
FASM is certainly close to NASM, but not having discussed the genesis
of FASM with Tomasz, I couldn't tell you whether he based his syntax
off TASM (which is a common point of reference amongst assembler
writers) or NASM. Certainly, FASM and NASM are syntactical cousins, but
it is still the case that no NASM program will compile under FASM
without massive changes to the source files. This is hardly "as closely
as possible".
Now as for RosAsm, the *only* thing you share in common with NASM is
the choice of mnemonics and the operand order. *Everything* thing else
is different. This claim of your's is a prime example of how you try to
ride on the coattails of the popularity of other products. Again, there
is *no* similarity between RosAsm and NASM. Any attempt by you to claim
otherwise is just an attempted "swindling" to convince people you
belong in a class of well-accepted products, in hopes that some of that
success or popularity will apply to your's. How pathetic.
Cheers,
Randy Hyde
.
- Follow-Ups:
- Re: Why there are so many assemblers.
- From: Charles A. Crayne
- Re: Why there are so many assemblers.
- From: Betov
- Re: Why there are so many assemblers.
- References:
- Re: GAS struc
- From: Spam Killer
- Re: GAS struc
- From: James Buchanan
- Re: GAS struc
- From: Spam Killer
- Re: GAS struc
- From: James Buchanan
- Re: GAS struc
- From: Spam Killer
- What is an assembly language?
- From: randyhyde@xxxxxxxxxxxxx
- Re: What is an assembly language?
- From: The_Sage
- Re: What is an assembly language?
- From: randyhyde@xxxxxxxxxxxxx
- Re: What is an assembly language?
- From: The_Sage
- Re: What is an assembly language?
- From: randyhyde@xxxxxxxxxxxxx
- Re: What is an assembly language?
- From: The_Sage
- Re: What is an assembly language?
- From: Dean Kent
- Why there are so many assemblers.
- From: randyhyde@xxxxxxxxxxxxx
- Re: Why there are so many assemblers.
- From: Frank Kotler
- Re: Why there are so many assemblers.
- From: randyhyde@xxxxxxxxxxxxx
- Re: Why there are so many assemblers.
- From: Betov
- Re: GAS struc
- Prev by Date: Re: License Choice
- Next by Date: Re: Why there are so many assemblers.
- Previous by thread: Re: Why there are so many assemblers.
- Next by thread: Re: Why there are so many assemblers.
- Index(es):