Re: a 'turbo' assembly language

From: Donkey (contact_nospam_donkey_at_shaw.ca)
Date: 01/01/05


Date: Sat, 01 Jan 2005 02:11:49 GMT

C is much faster to develop in than Assembler. IMO this is not due to
the fact that people can write code in C faster, but because of the
wealth of example code and libraries for C. A programmer without libs or
example code has to continually re-invent the wheel and this is the
bottleneck when programming in assembly language. In C you can find
either an example or a lib that does exactly what you want and use it
for instant success. Just consider how many times you had to peruse a C
example in order to translate to assembler and you will know what I
mean, if you don't at least understand enough C to translate it you are
lost in assembler or any "fringe" langauge for that matter.

The lack of suitable tools is also a problem for the reasons that Betov
gave. His RosAsm package is a step in the right direction but monolithic
source and lack of library support hinder it's acceptance. Also,
straying too far from MASM syntax is not a great idea, it creates
another Basic. In Basic there is probably the largest collection of
freely available source code around but unlike C there is no standard
syntax so each Basic compiler uses it's own and even at the source
level, example code is useless between two different compilers. This is
happening to assembler and will almost certainly be the cause of it's
eventual demise. Source level compatibility or at least syntactical
similarity between compilers is a must for a langauge to grow and prosper.

Many ASM programmers, rightly or wrongly, believe that ASM should only
be used for optimizing critical bottlenecks in an HLL program. For this
reason much of the ASM example code is esoteric at best and downright
useless out of context at worst. With Jeremy's GoAsm I am trying to
build a collection of open, free to use for any purpose source code that
I hope will help to correct this, though the going is slow. For myself I
see the "free to use for any purpose" as the most important feature,
after all if they can't make a living off of their work, many
programmers will stay away.

Finally, the main problem with ASM is that it is perceived as a
difficult language and discarded "out of hand". It is neither difficult
nor complicated to learn and use but if you want a job in programming
you had better learn C, because a quick perusal of the Want Ads doesn't
even show a single request for an ASM programmer. Just one that asks for
C with MASM experience an asset.

Donkey

Betov wrote:
> RR <RR@RR.RR> écrivait news:nhons0lg8anb5r9bj9f6qcurnul1j24ejn@4ax.com:
>
>
>>I say that if
>>you try this language you could write what you belive
>>impossible in the 1/50 of the time, with more +1000% of readability.
>>
>>This means that if you are an old assembly programmer and do 1kb
>>of code for one day, with this you could do 50kb code / day
>>
>>With this You will go more fast of a C (or whatever language you want)
>>programmer because debugging assembly program is easier.
>>
>>In few words: the nasm assembly language would be a subset of the
>>language so you can write old assembly nasm language too but
>>"/" is= to ";", ";" is= "\n", "|" is= "\n"
>>If some error is found you can read the .asm translation: find errors
>>in an assembly program should be trivial.
>>[...]
>
>
>
> Impressive, but there are several wrong assumptions, here.
>
> * "Writing Asm would be more time consuming than HLL". I do
> not know of any reason why this could be true, but i know
> of several, why it can be wrong. For example, the Debugging
> time. If Assembly is considered more difficult and more time
> consuming than HLL, this is for the single and simple reason
> that nobody ever wrote the required Tools Environnement for
> making Asm easy. The reason for this is that there is no
> money to make with such an Asm Environnement, and this is why
> only volunteers like me and some others are doing it (slowly),
> for free...
>
> * "Asm would not be Readable whereas C would be". As much proven
> by so many discussion, here, readability is, partially, a matter
> of individual tastes, choices and habits. Nevertheless, if we
> only consider the objective facts only, Assembly is, evidently,
> _way_ _more_ _readable_ than C is, at least, to me.
>
> * "Dev-Times are bound to the Language". Might be partially true
> but, even if partially true, as long as the language is "usable",
> this is not significant inside a whle Dev-Time, that is mainly
> spent at thinking, finding Doc and Debugging. Where the Tool
> might help, for this, is not directly with the _Language_, but
> with the Language Environnement. For example, when you have a
> Tool like RosAsm, coming with an integrated Source Level Debugger,
> with all of the facilities for Stepping, mem scanning, and so on,
> your Debugging time is pushed close to zero. No relationship with
> RosAsm Assembler Syntax, at all.
>
> * "A superset for NASM would be interresting". This has already
> be done several times. Up to now, the only result of these attempts
> has been that the Authors of the supersets have created their own
> private language, that nobody but them uses. Babelism. At best
> (should i say "at worst"... ;) such attempts as Randall Hyde HLA
> Pre-Parser can have some poor success in deturning some beginners
> from Assembly. So, to become something really interresting, such
> a superset would require that a significative number of Programmers
> would choose to use it. Unfortunately, this will not happend. Randall
> Hyde succeeded with this because he is a super expert in Propaganda,
> lies and swindling, but if your intentions are honest, you will much
> probably go nowhere with this.
>
> So said, i wish you that i would be proven wrong with the above
> paragraph, and that a significative number of Programmers would
> like to take your road. ;)
>
>
> Betov.
>
> < http://rosasm.org/ >
>
>
>



Relevant Pages

  • Re: Hey, what is all this off topic posting?
    ... >>> that's all you're using macros for, I can see why you don't much like ASM. ... > PL/I language constructs though. ... >> write the macros using some arcane assembler to do that on a new ...
    (sci.electronics.design)
  • Re: What micros do you actually hate to work with?
    ... with less than tiny asm ... hassle to work with 32 bit longs in assembler for an 8 bit uP, ... Microchip's C compiler tools and their assembly under MPLAB. ... In this case, also, I was the only programmer. ...
    (comp.arch.embedded)
  • Re: Learning ARM assembler...
    ... low-level language. ... would probably start off with using the assembler built into BASIC ... I started out with ARM assembly language programming using Nick ... I eventually abandoned ASM in favour of Acorn's ObjAsm ...
    (comp.sys.acorn.programmer)
  • Re: Arrrrrrrrrrrrggggg!!
    ... >> appropriated Language for the task. ... > implementing an assembler (nearly anybody in the software ... >> valid alternative to the HLLs. ... > Here you need an experienced assembly programmer (who is ...
    (alt.lang.asm)
  • Re: Catagories of Assembly Languages
    ... > them what to do because you care about them. ... as an assembly language teaching tool. ... >> The tool should have the flexibility to allow the programmer to ... It's only reasonable that an assembler, ...
    (alt.lang.asm)