Berend de Boer wrote:
The point of having an extended pascal compiler is being portable, at least that's the goal.
I agree to the goal of being portable. But I don't think that we can reach this goal just by obeying the Extended Pascal standard.
(More about this in a separate mail.)
Assembler and Dos are not the way to go. The point of having a System, Crt, Printer of Graph unit is entirely uninteresting if it is not portable except if you want to port Dos Borland Pascal programs to Extended Pascal.
I want to port DOS Borland programs to *GNU Pascal*, and I am sure that many people intend the same. System, Crt, Printer and Graph for GNU Pascal would be *highly interesting* for those programmers who are accustomed to Borland Pascal and think about changing to GNU Pascal (instead of changing to Delphi or C++) in the future. To have those Units on the DOS platform only would be a starting point -- portable versions would be preferred, of course.
Why should anyone want to do this? I assume everyone is programming for Windows 95/Windows NT or Unix. Are programmers really running Dos today??
Yes, I am for example. More concrete, I am working in an OS/2 DOS box and in the Linux DOSemu (with Novell DOS 7). I do not intend to use Windows 95 or Windows NT, and it will take a long time to get my clients using UNIX (Linux). Up to that day, I will prefer writing good DOS programs to writing poor Windows programs (with a lot of special effects, but slow, uncomfortable, and unstable). In the long term, I intend to become completely platform independent with my BO5 library, i.e. my programs will run under Windows 95/NT, too, just be recompiling. But for the moment, I am stuck with DOS.
Quite a few calls in System or Crt do simply not apply in non-Dos environments.
There are really few of them, but since the source exists, I suggest that somebody ports *everything* to the DOS version of GPC, and we can make the "potentially portable" parts portable in a second stage.
A portable Printer library??
What's the problem? It would just be a Unit (Module) which "knows" the file name of the printer device for the actual operating system and opens a text file "lst", so the application program doesn't need to care about how the printer is named on the operating system.
The calls from System that are portable can for 90% be written in plain Extended Pascal.
However, it would be nice to have a compatibility Unit (Module) which simplifies the port of Borland Pascal programs to GNU Pascal.
We should do better by following existing standards and provide EP interfaces for that.
Borland's Units *are* an existing standard. There may be other standards, but I think these Units are very popular. Furthermore, we *have* the source for them, so I ask again:
******************************************************* We have free sources of Borland Units (CRT, Graph, ...) which cry for being ported to GNU Pascal.
Anybody wants to do the job? *******************************************************
Greetings,
Peter