From: laire@klee.uni-paderborn.de (Ralph Schmidt)
Newsgroups: de.comp.sys.amiga.misc,de.comp.sys.amiga.advocacy
Subject: Re: SAS/C Compiler, Stacksize errechnen
Date: 25 Jan 1993 10:47:14 +0100
Organization: Universitaet Paderborn, Germany
NNTP-Posting-Host: klee.uni-paderborn.de

amk@zikzak.in-berlin.de (Andreas M. Kirchwitz) writes:

>Zur Auffrischung:

>Es ging urspruenglich darum, dass NORMALERWEISE C-Compiler weniger Errors
>bzw. Warnings als z.B. M2-Compiler erzeugen.  Das macht Programme sehr
>fehlertraechtig, denn Denk- und Tippfehler macht JEDER Programmierer mal.

>Ein GUTER Compiler sollte einem auf jeden Fall die MOEGLICHKEIT geben,
>den Source-Code besonders streng zu pruefen.  M2-Compiler machen das
>defaultmaessig.  C-Compiler waren bisher defaultmaessig eher lasch
>(was sich allerdings mehr und mehr aendert -- zum Glueck), das haengt
>nicht zuletzt auch ein wenig mit der Sprache zusammen.

>Trotzdem ist es letztlich vor allem eine Sache des COMPILERS,
>erst zweitrangig der Sprache...

>(es waere ja kein Problem, einen "laschen" M2-Compiler zu schreiben)

>In article <1jup2tINNpfg@klee.uni-paderborn.de>, Ralph Schmidt writes:

>Ich wollt mich ja raushalten, aber warum lieferst Du selbst die
>besten Argumente fuer die Gegenseite? ;-)

>> P.S. Nur um dir noch den Finger in die Wunde zu stecken...ich hab
>>      gerade nen Assembler-Projekt praktisch fertig mit ueber
>>      2.5MB Sourcen und ICH habe keine Probleme, dass zu durchschauen.
>                         ^^^

>Das ist es naemlich.  DU SELBST durchschaust es JETZT problemlos.
>Aber wie steht es in einem Jahr?  Wie in zwei Jahren?

HALT!...das ganze ist jetzt seit mehr als 2 Jahren in der Entwicklung
und ich moechte behaupten,dass ich meinen Source nach genau der gleichen
Zeit, die ein Oberon oder wasweissich, verstehe.
Man SOLLTE nie von sich auf andere schliessen, was eigentlich die
Hauptmessage in meiner Reply war.

>Und wie ist es, wenn ANDERE Deinen Source verstehen sollen?
>(es soll Leute geben, die arbeiten nicht auf Lebenszeit an einem
> Projekt, sondern geben es irgendwann weiter an andere)

Wo hab ich denn gesagt, dass dieses Projekt von anderen verstanden
werden soll ? Ich hab dieses ASM Beispiel nur gebracht um Essich
mal aufzuzeigen, dass seine allgemeingueltigen Aussagen nicht auf
jeden zutreffen. Punkt. Ich hatte NICHT die Intention zu sagen, dass
ASM,C,Sather,Modula3,.... besser ist als XYZ!

>Hier machen einige Leute den SCHWEREN Fehler mit der Annahme, dass
>ein Programm etwas Privates sei, wo nur einer dran arbeitet.  Etwas,
>was nur einer verstehen muss.  Irrtum.  Da arbeiten oft genug
>MEHRERE Leute dran.  Und die Lesbarkeit von Source-Code wird nicht
>nur durch gute Kommentare erhoeht, sondern auch durch die geeignete
>Wahl der Programmiersprache.

1) Mein Projekt ist MEIN Projekt und die Sourcen werden NICHT
   oeffentlich sein.

2) Dieses Projekt waere ohne ASM nicht so leistungsfaehig. Dies
   betrifft jetzt nur diese spezifische Sache. Ich moechte hiermit
   nicht sagen das JEDES Programm in ASM Sinn macht..nur um irgendwelche
   Flames zu vermeiden:-B

3) Ich programmiere auch gerne in C, habe auch schon Modula programmiert
   und auch Oberon ausprobiert. Meine Erfahrung ist einfach das C
   die beste Sprache fuer den Amiga-OS ist und alle System Geschichten
   und exotische Datentypen nen riesen Aufwand sind in Modula und Oberon.
   Als riesen Vorteil fuer C ist eben auch die einfache Integration von
   C und ASM.

4) Wenn ich mit mehreren nen Projekt mache, dann wird die Sprache danach
   entschieden, welche Sprache genereller Konsens und fuer dieses
   Projekt sinnvoll ist

5) Ich mag keine Laufzeit-Umgebungen:-B


>Einen Modula/Oberon-Source zu verstehen, ist keine Kunst.
>Das kann sogar ein blutiger Anfaenger.  Die Programme kommen ja
>bereits nah an die natuerliche Sprache heran.

Jaja...dann solltest du dir mal Modula3 anschauen und anschauen
was da fuer kryptische Sachen moeglich sind. Gut..ist nicht von Wirth:-)

>Bei C-Programmen muss man schon Uebung haben.  Es kommt auch sehr
>auf den Stil des Programmierers an.  Man blick zwar irgendwann durch,
>aber nix fuer Laien.

Halt...wenn es bei Oberon und Modula an die System Geschichten geht,
dann sollte man auch nen bischen Uebung haben.

>Fuer Assembler muss man schon Freak sein.  Das erfordert harte Arbeit.
>Diese Sprache kommt dem Menschen am wenigsten entgegen.

Mmm...wenn du Motorola Assembler wirklich gut genug kennen wuerdest,
wuerdest du so was nicht sagen. Es gibt da Wissens-Stufen,genauso wie bei C.
Es ist alles relativ. Nebenbei...ich werde nie verstehen wie Leute nen
Compiler bedienen koennen ohne nen gewissen Plan zu haben, wie das Resultat
funktioniert und wie man Bugs suchen kann, die nen bischen komplizierter
sind.

>Und dennoch: jede Sprache hat fuer bestimmte Zwecke ihre Berechtigung.
>(zumindest beim heutigen Stand der Technik)

>Ich behaupte sogar, es gibt Programme bzw. zumindest Programmteile,
>die sind in C besser lesbar als in Modula, weil sie in C "eleganter"
>loesbar sind.

>Trotzdem: ganz allgemein ist z.B. Modula/Oberon NORMALERWEISE besser
>lesbar als C oder Assembler...  wer das abstreitet, macht sich was
>vor (oder kennt gar keine anderen Sprachen ;-)

Das haengt einfach von der Uebung des Programmierers zusammen und
vom Source. Ich moechte behaupten, das man genauso kryptisch in
Modula programmieren kann, wenn man das will.

>Dieses "meine Sprache ist aber besser als Deine" ist unsinnig.

>	Ist sie nicht.
>	Ist sie doch.
>	Ist sie nicht.
>	Ist sie doch.
>	Ist sie nicht.
>	Ist sie doch.

Ich bin NICHT so vorgegangen. Ich versuche keinen von meiner Wahl
zu ueberzeugen. Essich tut das und damit ist er bestimmt einigen
Leuten auf die Nerven gegangen.

>Wer so vorgeht, ist schlichtweg ein Dickkopf.
>Verschiedene Sprachen fuer verschiedene Zwecke... DAS ist es.

>Und: Compiler muessen flexibler werden.  Auf Wunsch sehr streng,
>auf Wunsch aber auch sehr lasch...  defaultmaessig aber eher streng.
>Ein guter Compiler sollte einem helfen, die Debugging-Phase auf ein
>Minimum zu reduzieren.  Die Zeiten, wo der Compiler nur irgendein
>Binary erzeugt soll, sind langsam VORBEI.  Nicht zuletzt, weil heut-
>zutage die Programme recht "voluminoes" werden.  Da kommt man ohne
>Unterstuetzung der Software nicht mehr aus.

Meine Erfahrung , bei langer ASM und 1-2 Jahre C, dass die wirklich
Programmfehler 99.99999% schwerer zu finden sind, als irgendwelche
Anfaengerfehler, die dein Modula oder Oberon Compiler dir abnimmt.
Deshalb nervt er dich dann aber auch immer beim ersten Versuch mit
142 Fehler gefunden und so weiter:-B

>Wer das nicht einsieht, waere besser beim C64 geblieben...

Was hat das alles mit mir zu tun ?

Regards...
-- 
Ralph Schmidt                                            laire@uni-paderborn.de
University of Paderborn (Germany)