In order to understand languageONE it is appropriate to discuss why it has been developed in the 1st place. The reason lies back some 35 years when I first entered the computer industry. At that time students were initially taught binary maths, octal maths and hexdecimal maths as a foundation - and then moved on toward assembler code. As was the wont in those days, assembler coding was followed by (C)ommon(B)usiness(O)riented(L)anguage. It struck me at the time just how close to assembler COBOL actually was, but all the while presenting a english like paradigm. Cobol has sentences, paragraphs, verbs etc. Not long after, personal computers began hitting desk tops and the practise of coding became affordable to anyone that found it interesting. Along with the hardware came software - and assemblers, and in particular Macro Assemblers.

Macro Assemblers

A Macro assembler is an assembler that can perform macro substitution and expansion. The programmer can define a macro that consists of several statements and then use the macro name later in the program, thus avoiding having to rewrite the statements. For example, a macro called DISPLAY.AT may set the cursor position and display text on the console. The programmer can then insert an instruction such as DISPLAY.AT 01,05,"Hello World" in their assembly language program, and while assembling, the parameters that have been coded are swapped with the placeholders within the macro. ie:

    %macro DISPLAY.AT 3
   
mov rax, %1
   
mov rbx, %2
   
Call _CURSOR
   
lea rax, %3
   
Call _DISPLAY
    %endmacro

You can observe here that a Macro named DISPLAY.AT is defined as reciving 3 parameters for substitution. These 3 parameters are represented in the macro as %1, %2, and %3 so in the above example the assembler replaces %1 with 01, %2 with 05 and %3 with "Hello World"

It seemed clear to me at the time that it would not be that difficult to build a set of macros that would encompass an entire language. Sadly, earning a living and raising a family put languageONE on hold for 30 odd years, although the idea never completely left me. I am sure that I am not the only one who has made the link between macro assemblers and a complete programming language but I am unaware as to any product that has preceeded languageONE.