Rick Hohensee Jan 2008
rick_h...@email.com
<snip, or not>
The syntax of osim is the syntax of the unix shell, and the naming is
from ters with no trailing e for common stuff to
so_verbose_you_can't_possibly_mistake_this_for_something_you_need.
The
80386 assembler in osim is a new language, but it conciously remains
an
assembler, and not a compiler. A compembler maybe. A C compiler
toolchain makes about a dozen passes over a program. osim makes 3,
and
one is a quickie.
Simple things like better naming and indentation are a huge
improvement
over most assembler code. osim is a massive simplification of assembly
language programming. In addition to better naming, the x86 benefits
from the osim (Forth, BCPL) cell concept (for ease of use and
potential
portability), and the fact that osim is a 1-link toolchain residing
entirely in your shell's current state. If you know some shell you
already know the osim include and macro mechanisms, for example. osim
is
trivially extensible in (Ba)sh.
High level languages have not lived up to the hopes and the hypes. I
believe osim would be much easier to learn than C or Java, and unlike
Java, if you can write 386 programs in osim, you know how to code. I
have a 2.4Ghz laptop that was a free-to-good-home deal. Thanks Eric.
It
is time to reassess assembly, particularly for systems programming.
osim08.tgz includes my unixized 386INTEL.TXT, 2 example VGA fonts
written in osim, osim sourcecode and executables of 11 conversions
from
asmutils, the nasm-to-osim scripts I used for the asmutils guys, and
a
grub/Multiboot bootable demo. The executables supported are
x86/ELF/Linux, static. The 11 simple executable utils in osimutils
average 204 bytes each. There's also an osim hi-liter for GNU nano,
extensive html and interactive help, and so on. There's no
later-than-386 support or floating point math.