On Sun, Jan 19, 2003 at 03:48:54AM +0100, Frank Heckenbach wrote:
Urks! Da haben wir doch recht unterschiedliche Vorstellungen. Festplattenplatz ist vielleicht wirklich kein Problem mehr, aber für die Weitergabe Diskettenplatz... und vor allem Downloadzeit!
Downloadzeit sehe ich vielleicht noch ein (andererseits, wenn ich mir meine Server-Logs so anschaue, habe ich den Eindruck, dass sich viele auch 20 MB-Dateien erst mal runterladen, bevor sie überlegen, ob sie sie brauchen ...),
Aber bestimmt nicht die Leute mit analogen Modems (wie ich).
Diskettenplatz eher weniger. Ein kurzes Programm braucht bei mir ca. 100 KB (gestrippt und bzip2-komprimiert), statisch gelinkt 150 KB. Das ist gerade mal 1/10 einer Diskette ...
Nun gut, wenn du _ein_ großes Programm schreibst mag das okay sein. Aber wenn du viele kleine Tools schreibst, wird das doch zum Problem.
In dem Fall würde ich auch dynamisches Bibliotheken gutheißen: Entweder ganz, oder gar nicht.
Prinzipiell geht das auch. Allerdings muss man dabei mit den Versionen aufpassen (bei den Systembibliotheken z.B. zwischen verschiedenen Linux-Distributionen, und die GPC-Laufzeitbibliothek ändert sich i.a. mit jeder GPC-Version). Da erfahrungsgemäß etliche Leute damit Probleme hätten und letztlich mir dann wieder zusätzliche Arbeit beim Fehler-Beheben verursachen würden, lasse ich diese Möglichkeit vorerst "undokumentiert".
Wenn man viele kleine Tools schreibt, macht es durchaus auch Sinn, die Bibliothek separat dabeizulegen.
Die Möglichkeit gibt es also schon? Es wäre vielleicht doch gut, wenn ihr die mal dokumentieren könntet. Ihr könnt ja dabei schreiben, dass ihr davon abratet.
Nunja, aber gerade hier liegt der große Vorteil von FPC. Die machen kleinere Binärdateien (ua. auch durch Smartlinking) und für die libc haben die auch einen Ersatz in Pascal selbst geschrieben. Vor allem aber unter DOS/Windows muss man weit weniger Aufwand treiben. Dafür gibt es aber wiederum den GPC für weitaus mehr Systeme...
Hmmm? Meinst du standard Pascal versus Borland Pascal? Das versucht gpc ja schon zu vereinen und das ist wirklich der große Pluspunkt, den ich dem gebe.
Aber FPC leider nicht. Von Standard-Pascal halten die Entwickler nicht viel.
Ja, wie gesagt, das ist der große Pluspunkt von GPC gegenüber FPC. Ein anderer ist, dass es auch den Compiler selbst für wesentlich mehr Systeme gibt.
Ähnlich sieht es bei Portabilität aus. FPC hält am dem BP-Prinzip fest, Code nur für ein System zu schreiben, während GPC-Code i.a. auf jedem System laufbar sein sollte.
Nunja, FPC geht auch dazu über, abstraktere Units zu schreiben. Und der Weg ist vielleicht auch gut so. So hat man dann sowohl systemspezifische, als auch abstrakte Units zur Verfügung und kann beim Programmieren selbst wählen, ob einem Portabilität oder Effizienz wichtiger ist.
Nunja, das betrifft nur die Portabilität zwischen verschiedenen Plattformen. Code zu schreiben, der mit verschiedenen Compilern läuft, ist mit deren Ansatz wirklich schwer. :-(
Damit musste ich auch schon eine leidliche Erfahrung machen, als ich versuchte, ein Programm, das ich für FPC geschrieben habe, mit GPC zu compilieren. (Mehr dazu in einer privaten Mail)
GCC/GPC auf 16-Bit-Systeme zu portieren, dürfte schwer bis unmöglich sein. --
Ich sagte auch nur, dass ich einen freien 16-Bit Compiler /suche/. Also wenn jemand einen für DOS kennt, bitte bescheid sagen. Es kann zur Not auch ein Interpreter sein.
Ich weiß, RMS hat so was vor etlichen Jahren mal zu DJ Delorie gesagt, und heraus kam dann DJGPP. Aber das ist halt ein 32-Bit Dos-Extender. Läuft das eigentlich inzwischen unter FreeDOS? Wenn ja, wäre das wohl eine Lösung (für 386+). (DJGPP selbst muss ja nicht installiert sein, um ein DJGPP-compiliertes Program auszuführen, lediglich ggf. cwsdpmi (20 KB)).
Ja doch, das müsste laufen. Den cwsdpmi braucht man. Man darf nur nicht den EMM386 von FreeDOS laden! Die beißen sich. (...falls mal jemand fragt)
Probiert habe ich das bisher zwar nur mit FreePascal, aber wenn es damit läuft, dürfte GNU Pascal ja auch kein Problem sein. Der DJGPP steht bei denen auch in der Linkliste als Empfehlung. Und ich glaube, die grafische Benutzeroberfläche SEAL wurde damit auch geschrieben.
Nur wenn man was schreiben will, das direkt ins System aufgenommen werden soll, akzeptieren die halt keine 32-Bit Programme. Das System hat halt vor allem alte Maschinen als Zielsetzung.
Der Tatstaturtreiber war in BP geschrieben und wird jetzt auf C portiert. :-(
Für Windows gibt es schon so ein Paket, siehe http://www.gnu-pascal.de/contrib/chief/
Muss man dafür auch noch diese riesige MinGW ziehen? Inakzeptabel! :-(
Tja, beschwer dich bei Microsoft, dass sie so viele wesentliche Systemkomponenten weglassen ...
Ich soll mich also darüber beschweren, dass Windows nicht Unix ist? ...andererseits der Ratschlag, sich bei Microsoft zu beschweren ist immer gut. >;->>>
Frage: Braucht man MinGW nur zum Compilieren, oder muss der Endanwender das auch haben?
Nunja, für Windows sehe ich nun leider GPC nicht als akzeptable Alternative zu FPC an. Da muss ich wohl erstmal weiter bei Borland Syntax bleiben, obwohl ich das auch als Problem ansehe.