Hi again,

(Sorry in advance for the ramble.)

On Tue, Oct 27, 2020 at 2:06 PM Rugxulo <rugx...@gmail.com> wrote:
>
> On Sat, Oct 24, 2020 at 4:21 PM Steve Nickolas <usots...@buric.co> wrote:
> >
> > On Sat, 24 Oct 2020, Eric Auer wrote:
> >
> > > Regina REXX was not very small, while some others are small?

Regina was (IIRC) compiled with Watt-32 due to external stack queue or
whatever (rxqueue). You can almost certainly rebuild without it (I've
done it), but I don't think the code supports 16-bit cpus. Even the
smaller BRexx 16-bit build from 2003 isn't 8086-friendly (not sure,
186??), plus it's non-commercial only (not quite GPL). I also have a
newer DJGPP build of BRexx from 2011, it's only like 110 kb. (It's
always "interesting" testing code between various quasi-compatible
interpreters. There's always dozens of caveats and dark corners and
bugs. But it's amazing when portable code works!)

Years ago, I put old Perl 4 [sic!] (16-bit) on my RUFFIDEA floppy just
to have "something" scripting-wise, even though I never learned Perl.
It was really only useful for "ztouch" (touch .gz from internal date,
if found). Although I later wrote a sloppy and unportable (but
functional!) version in REXX (both Regina and BRexx supported)! I
never did finish writing a simpler C version (mktime(), utime()). I
also lamented not just throwing REXX on floppy instead, but perhaps
AWK (which?) would've been a better fit overall. I did recently
rebuild old MAWK with Turbo C++ 1.01. UPX'd it's only 60 kb (compared
to the family / bound DOS + OS/2 build which can't compress and is 160
kb). In some ways, MAWK is better than other ports (e.g. memory
efficiency). With one script of mine, it works where our 16-bit
(G.K.'s OW build, 2010) BWK's AWK doesn't. (32-bit builds of BWK work
fine, as does 32-bit DJGPP Gawk. Again, it's always good to test on
all available interpreters to weed out hidden bugs and non-portable
issues.)

> > Regina at least has some justification.  Some later versions of PC DOS
> > came with REXX.
>
> Yeah, it replaced QBASIC there.

QBASIC only gets about 160 kb free memory (at best), no overlays nor
extended memory, plus there's no modularity, not even include files
(sadly). Even AWK and REXX have modularity via separate files, which
is interesting and almost surprising. I actually dislike extreme
modularity where you have too many separate files all over the place,
but it can indeed be very useful.

> REXX is a very cool language (ANSI standard, too, in 1996).

It's almost too complex with all the (extra) features and extensions.
But the base language is quite simple, almost BASIC-ish. Not as simple
as Sed, but Sed is not a real programming language (no variables, no
arithmetic). But, like I said, Regina is 32-bit (or 64-bit) only,
AFAIK, so I don't think it'll build for 16-bit, which may annoy some
of us purists. But it's still quite good.

(Oh, there was CRX [Brian Marks' Compact Rexx] which was 16-bit, but I
never delved too closely into it. I think it was buggy, but it was
used for verifying standard code, back in the day. I forget the
license, but IIRC it was written in MASM. I should take another look.)

> Our Regina build (ANSI only, no OOP) is mine from 2012 using DJGPP.
> Later sources had bugs that I never dug into that made it refuse to build.

Trisquel had an even older Regina (3.6?)! Sheesh. Sometimes it's weird
how packages are never updated, but I don't blame them (tedious).
Anyways, you used to also be able to rebuild Regina via GCC/EMX, which
I've done a few times (years ago) for fun. Not sure that's really
"better" than DJGPP, though.

Anyways, I've just been messing around with PSR Invaders (yet again),
writing various scripts to convert MASMv4 syntax to various Free/libre
assemblers (e.g. NASM, FASM, TinyASM). So that's my limited
experience. Just FYI.


_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to