HAL(ID:5858/hal002)


for High Level Assembler

Hamish Dewar, Edinburgh Regional Computing Centre, 1970s

Machine independant assembler(!) developed to cope with erratic instruction sets.



Places
References:
  • Philippsen, Michael "A survey of concurrent object-oriented languages" pp917-980 view details
          in Concurrency: Practice and Experience 2000 v12 view details
    Resources
    • Posting to edinburgh-computer-history
      As another example of overcoming hardware deficiencies, I devised HAL (High-Level Assembler) largely because I despaired of being able to produce a compiler for machines like the ICL 7502, which had about the worst machine instruction set that I ever encountered. (Not quite the worst. I think a machine called Arcturus was worse. It had 18-bit instructions and 16-bit data words. How you were supposed to load programs was a mystery. The only other thing I remember about it was that it had a SEX instruction -- Sign EXtend, natch, what did you think).external link
    • Edinburgh Computer History
      HAL had high-level language features like IFs, and did constant folding in expressions, i.e. it had some minimal features stolen from compilers but retained an essential assembly language feel.
      [...]
      I think all the software was written in a dialect of HAL, which was a multi-platform assembler as well as having high-level featuresexternal link