[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [Debian] webinterface für c/c++ progs



* Stefan Nobis <stefan-ml@snobis.de> [011011 16:19]:

Hallo Stefan,

> > > Perl ist eine write-once/read-never Sprache. Für größere Sachen (und
> > > eigentlich auch für kleinere) gehört das schlicht verboten (und ich habe bis
> > > heute nicht verstanden, wie ein *Linguist* so etwas verbrechen kann).
> > Tja, dass mag vielleicht auf die Leute zutreffen, die keine Perl
> > koennen oder die nicht wissen, wie man Programme schreibt.
> > Wie kommst du denn zu dieser Annahme?
> Das wird dir jeder bestätigen können, der von Software-Entwicklung und
> Qualitätssicherung ein wenig versteht.
> 
> Genauso wie man C in sicherheitskritischen Bereichen vermeidet.

Wie z.B. Betriebssysteme (sowohl mein Kernel als auch meine libc, meine
Firewall etc. sind in C geschrieben). Aber es geht mir ja eigentlich um
Perl :-).

> Ein Kernproblem von Perl: Zu viele implizite Annahmen werden in Quelltexten
> niemals explizit ausformuliert.

Ich wuerde den gleichen(?) Sachverhalt anders vormulieren:
Ich werde unter Perl nicht gezwungen alles explizit auszuformulieren,
sondern *kann* implizite Annahmen ausnutzen.

Wer zwingt Dich denn zu Dingen wie:

    open 0;
    print while <0>;

Ja, man kann sowas machen, aber das ist IMHO kein Problem von Perl,
sondern des Programmierers, der ja auch folgendes schreiben koennte.

    use FileHandle;
    use English;
    {
        # read program file
        my $fh = FileHandle->new($PROGRAM_NAME);
        while ( defined( my $line = $fh->getline() ) )
        {
            print $line;
        }
    }

Alles eine Frage des Geschmacks und der Policy.

> Dazu dann Kleinigkeiten wie Funktionen, deren Parameterliste man nicht
> explizit angegeben kann,

Es zwar gibt Prototypen, aber von denen halte ich nicht viel.
Vermisst Du hier die automatische Typenpruefung, oder warum stoert Dich
das?

> Variablen, die explizit und
> manuell lokal gemacht werden müssen und noch einiges mehr.

Oben schreibst Du noch, dass Du gerne alles explizit angeben moechtest.
Du meinst aber vermutlich, dass lexikalische Variablen der Default sein
sollten, nicht die mit dynamischem Scope. 
Das waere vermutlich gar nicht so schlecht; wird wohl
Kompatibilitaetserbe sein. Ist halt ein klein wenig mehr Tipparbeit
(dank 'strict' aber keine Fehlerquelle).

> Aber mal anders gefragt: Kennst du denn Perl-Projekt nennenswerter
> Größenordnung, also z.B. jenseits der 100.000 Zeilen Grenze?

Ja.

> Und wie hoch ist der Anteil der Sprache Perl in dieser Größenordnung
> von Softwareprojekten?

Vermutlich nicht so gross wie in C/C++. Aber wahrscheinlich hoeher als
der von "Smalltalk, Ada, Haskel, OCAML, Mozart/Oz, den Lisp-Dialekten". 

Sprich: Wir sind uns doch wohl beide einig, dass die Qualitaet einer
Sprache nur bedingt mit ihrem Verbreitungsgrad zusammenhaengt. C-Fans
scheinen wir jedenfalls beide nicht zu sein.

> Perl ist ein nettes Spielzeug und für Kleinkram und Stringbearbeitung gut
> geeignet,

Das widerspricht ja schon Deiner gewagten These von oben. Und
unterschaetze den Kleinkram nicht. Als Glue-Language ist Perl
fantastisch. Und auch wenn Du es da immer nur mit Kleinigkeiten zu tun
hast ist es keine Spielerei.

> aber selbst Larry Wall sagt explizit, Perl sei vor allem für die
> Automatisierung von kleineren Aufgaben entwickelt und gedacht (zumindest steht
> das so sinngemäß noch in meiner Ausgabe seines Buches -- nur um mal darauf
> hinzuweisen, dass ich Perl sehr wohl kenne, wie übrigens noch mind. ein
> Dutzend anderer Sprachen).

Habe leider gerade kein Kamel da, aber der Rueckschluss: Perl sei nur
fuer kleinere Aufgaben geeignet laesst sich aus dem Zitat bestimmt nicht
ziehen.

Gruss
 Christian

Fup2p
-- 
Energiesparer, heizt mit Meerwasser, das ist fast reines Öl.
http://www.lackas.net/ Perl Delphi Linux MP3 Searchengines Domainchecker

--
-----------------------------------------------------------
Um sich aus der Liste auszutragen schicken Sie bitte eine
E-Mail an debian-user-de-request@lehmanns.de die im Subject
"unsubscribe <deine_email_adresse>" enthaelt.
Bei Problemen bitte eine Mail an: Jan.Otto@Lehmanns.de
-----------------------------------------------------------

939 eingetragene Mitglieder in dieser Liste.


Reply to: