June 2007


Jun 12, 2007: 1. Assembly = hla + hide?


A recent finding on the internet relating to Assembly that I liked very much concerns HLA (High Level Assembly) and Hide (HLA Ide). Here are the main links:

Art of Assembly Language Programming and HLA by Randall Hyde is a very clear and complete course about programming in HLA by HLA's designer Randall Hyde.

It is a truly clear and complete introduction to programming, easily the best and most complete that I have read, and also quite interesting and instructive about programming in case you never were to program in HLA itself but want to learn a lot about programming a computer (running 32 bits Windows or Linux) on its most fundamental levels.

The website of Randall Hyde is very extensive, and has lot of excellent documentation concerning Assembly. As a website, it is not as slick as some, but for intellectual content about programming and Assembly it can have few if any peers.

Sevag Krikorian's Hide IDE: HLA exists approximately 8 years and is still in development, but there are two very nice IDEs for it, namely Ketil Olsen's RadASM , that has the advantage over Hide that you can program many assemblers in it, and Sevag Krikorian's Hide IDE, that is especially for HLA (and uses fasm as its assembler).

All of this is very interesting and very powerful, for HLA is undoubtedly the most comprehensive programming language I have programmed in, and it is certainly better in many ways, including documentation, than what Microsoft and Borland had to offer (respectively masm and tasm).

And personally I believe HLA to have great perspectives if it finds sufficiently many intelligent users and developers.

Apart from its very impressive capacities as a language and compiler, HLA has some other major advantages:

  • HLA is extra-ordinarily well documented;

  • it comes with the complete source-code for everything;

  • and everything in it is completely free:
    "free as in public domain", as Randall Hyde put it himself.

For more, see Randall Hyde's website.  There is also a good Wikipedia article about High Level Assembly that explains its possibilities well.

Note 27 Jul 2007:
I have added a question-mark in the title but otherwise left the text unchanged. My reasons for doing so can be gleaned from BAP6, BAP7 and BAP9 - and one should also realize that HLA at present is far less developed than e.g. RosAsm or GoAsm, which means that the latter are far better choices for novices in assembly.

Also, it should be remarked here that many seasoned assembler-programmers insist that HLA is not an assembler at all, but a pre-parser that outputs code that can be turned to an executable by a real assembler, like Fasm or Masm.

I will leave that discussion alone for the moment, but what is both true and quite important for novices, is that RosAsm and GoAsm + EasyCode (or for that matter Masm + MasmEd) have been developed to a much higher extent than HLA + Hide.

Also, the best tutorials for modern assembly that I have found (during 2 months of searching) are for RosAsm.

Hence, if you don't know assembly, HLA - whatever merits it may have in ten years time, when it may be well developed and properly debugged - does not seem to be the right choice for novices to assembly.

Maarten Maartensz


        home - index - top - mail