Hi,

On Fri, Jul 8, 2022 at 11:37 AM Ralf Quint <freedos...@gmail.com> wrote:
>
> For Pascal, this is +95% wrong. The first widespread version of Pascal,
> UCSD Pascal, also sold for example under names like "Apple Pascal" (on
> Apple II/III) did introduce the concept of "units", which allowed not
> only for modular development, but also for code reuse, as well as basic
> data and code encapsulation, which are all part of the core
> functionality of object oriented programming (before that term and its
> use was totally perverted to today's levels). That was also introduced
> starting with Turbo Pascal 4.0 and is a staple of later Turbo/Borland
> Pascal versions as well Object Pascal implementations like Delphi and
> FreePascal.
> The exception was kind of only the very early versions of Turbo Pascal
> (up to 3.0), which by the overall design of the compiler used "one big
> file" (though you could "include" many different source files). A lot of
> pther compilers, like Digital Research Pascal MT+ 86 or Microsoft Pascal
> allowed for development, compilation and linking of separate modules. As
> far as the various Microsoft compilers of the DOS days are concerned,
> ,while observing a handful of rules, it was even possible to link for
> example FORTRAN, C, Pascal and assembler modules together to one program
> executable. Beside that a lot of compilers allowed for modular
> development and use of such modules via the use of overlays.

The IBM PC debuted in 1981 with PC-DOS and the 1979-era 8088 [sic], a
16-bit cpu addressing 20 bits of RAM (a maximum of 1 MB), but most
computers had much less (for various reasons), e.g. 128 kb. Later,
OS/2 1.x was meant to be a "better DOS" and debuted in 1987 (despite a
RAM shortage). That was still 16-bit (286 pmode, max. 16 MB of RAM)
and mostly Microsoft's work. (32-bit OS/2 2.x came later from IBM in
1992 without MS.) The 386 didn't debut until 1986 or so, and it took a
long time for software to catch up. Actually, the 386 was Compaq (and
Intel) "exclusive" for a while. For example, DJGPP debuted in 1989.

Turbo Pascal debuted in 1983 with support for CP/M and DOS via .COM
files (max. 64k size). When they dropped CP/M and .COM support in TP 4
(1987), then they were able to use separate "units" and DOS .EXEs for
larger code. (But TP 3 could still address 1 MB with the heap.) There
were other complications, too.

Byte magazine (issue Dec. 1986) has a comparison of four Pascal
compilers. Modula-2 (with modules) was no stranger as their Aug. 1984
issue covered it extensively. But of those four Pascal compilers (MS,
UCSD, Prospero, MetaWare, with sidenote for TP 3):

64K-byte code/data limit? no, no, no, no, yes
Chaining? no, yes, yes, no, yes
Export abstract data types? no, no, no, yes, no
Modules? yes, no, no, yes, no
External routines? yes, yes, yes, yes, yes
Include files? yes, yes, yes, yes, yes
Overlays? yes, no, yes, yes, yes
Segmentation? no, yes, yes, yes, no
unit libraries? yes, yes, no, no, no

Keep in mind the obvious fact that TP compiles/links in about 2
seconds that which takes about a minute (60 secs.) on most other
compilers. Plus, TP was $70 (while most others, besides $100 UCSD,
were roughly $300, $400, or $600).

There's a different article (same Dec. 1986 issue) about something
else entirely ("approximating integrals") that has unstructured BASIC
(GWBASIC??) code as an example. It's weird seeing so many competing
languages. There's even an ad for MS QuickBASIC compiler 2.0 bragging
about speed, EGA support, structured constructs (no GOTO required),
and "reusable modules" for $100.

My point is that everything "new" was getting obsoleted by everything
"newer" and then some. Things moved too fast, but progress was
definitely happening.

Relevant links:

* https://archive.org/details/byte-magazine-1984-08/
* https://archive.org/details/byte-magazine-1986-12/


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

Reply via email to