Hi,

On Thu, Jan 15, 2026 at 6:47 AM Paul Dufresne via Freedos-devel
<[email protected]> wrote:
>
> In fact, the real question for me is is it worth to continue my project to 
> run HAC ADA compiler for FreeDOS.
> My current version take sometime 30 mins to run Hello World on QEMU KVM, 
> while taking 5 seconds
> in VirtualBOX. I like the small, virtual machine code I think I could 
> understand on HAC. Thinking to had
> Allegro lib access.

Note: I have no idea why QEMU + KVM is so slow for you. Most cpus
since 2015 should have VT-X. KVM was always quite fast when I tried
it, but I haven't tried lately. Yes, VirtualBox is fast, but they gave
up 32-bit host OS support and non-VT-X cpus (unaccelerated) several
years ago. (The Windows builds of QEMU never seem to have VT-X
enabled, so admittedly that can be slow.) Keep in mind that most
bytecode interpreters are known for being slower than native code,
*especially* under emulators (e.g. DOSBox). What takes 1 second
natively could take 100 seconds when emulated. There is no quick fix
substitution for good coding algorithms (which, ironically, only show
up on legacy machines or emulators).

Ada seems cool enough, but it might be overkill. Objects, generics,
exceptions, tasking, fixed point, (un)bounded strings, named
parameters, overloading, etc. Then again, I suggest you look up the
old DOS version of GWU Ada. (I don't think SmallAda was very
functional.)

If you just want a classic Pascal, I'd suggest Scott Franco's Pascal
P5. (I thought about adding OpenWatcom graphics primitives to P4
[sic].)

If you just want good string support (a la TP), use Alice Pascal or
something functionally similar like REXX or AWK. Or maybe Euphoria. Or
maybe just BASIC. (FirstBASIC is a pretty good shareware version of
PowerBASIC. BBC BASIC is freeware for DOS now. And of course FreeBASIC
is pretty good.)

I've been doing some Modula-2 lately (and Oberon is also very good),
even in DOS, so you could explore more of those. GNU Pascal (GPC for
DJGPP) is also pretty darn good (if you insist on modules and strings,
e.g. Extended Pascal).

I hacked together a DJGPP build of PicoC (interpreter) in 2012, and it
seems to work, if you just want a small interpreter to play with.
Detlef Reimers also once ported the EiC interpreter to DJGPP.

Although I never learned Python and dislike its trendiness, some
people love it. The oldest classic version of that, 1.52, was very
popular for a while. I'm sure you could dig up a few old DOS builds.

Keep in mind that "doing everything in memory" is less of an advantage
when you can just (install your compiler and) compile atop a temporary
RAM drive anyways.

If you just want a *really* simple interpreter, go look at "esolangs"
(esoteric languages), e.g. Brainf***, Befunge, False, INTERCAL, Eta,
etc. Or take a look at SectorLisp (fits in a boot sector).

Oh, and Forth is pretty fascinating (if you don't mind being pretty
low level). It's some kind of mix of interpreter, compiler, debugger,
etc.


_______________________________________________
Freedos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to