Seite 1 von 13 1234511 ... LetzteLetzte
Ergebnis 1 bis 20 von 255

Thema: while(true) {write();} - Der Programmierer-Spamthread #1

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1

    while(true) {write();} - Der Programmierer-Spamthread #1

    Kann doch nicht angehen, dass wir hier keinen OffTopic-Thread haben. Das könnte erklären, warum hier so wenig los ist.

    Die Regeln:
    Eigentlich ganz simpel:
    • Nicht gegen die Netikette verstoßen
    • Auch wenn das ein OT-Thread ist, heißt das nicht, dass man hier 100 Einzeiler posten sollte
    • Sig darf gerne an bleiben


    this.next()

    _______________________________________________

    Jetzt brauch ich nur noch ein erstes Thema

    Ahja, C++0x. Die neuen Features sehen wirklich nützlich aus, aber ich fürchte, dass viele davon ziemlich der Übersicht schaden. Beispielsweise decltype und auto. Diese Notation für den nachgestellten Return Type ist auch irgendwie arg gewöhnungsbedürftig. Trotzdem freu ich mich drauf und hoffe, dass das bald von möglichst vielen Compilern unterstützt wird und sich auch als Standard gegenüber dem klassischen C++ durchsetzt. Vielleicht ist das dann auch mal ein Ansatz für Microsoft, bisher veräumte Standards nachzuholen. Beispielsweise einige Elemente von C99.

    Geändert von Jesus_666 (21.05.2010 um 15:04 Uhr)

  2. #2
    Ich denke nicht, dass C++0x der Sprache in irgendeiner Weise schaden wird, sie ist von Natur aus schon unübersichtlich und erfordert viel Einarbeitungszeit.
    Für die Profis ist C++0x ein nützlicher Fortschritt, für die Anfänger ein weiteres Hindernis.
    Ich persönlich werde C++ sowieso in Zukunft meiden, wenn möglich und wechsle zu D, das übrigens alles hat, was C++ (inklusive C++0x) hat und mehr.

  3. #3
    Ja, D ist toll, nur leider wird es wohl noch dauern, bis man für alle Plattformen einen funktionierenden D Compiler per Paketmanager kriegt. Das ist eigentlich momentan der Hauptgrund, warum ich mich noch nicht näher mit D befasst hab. Außerdem soll die Standardbibliothek nicht sooo toll sein.

  4. #4
    Gerade auf decltype und auto freue ich mich (neben den lambdafunktionen) am meissten. Wer auch nur rudimentaer mit Templates arbeitet, wird decltype und auto zu lieben lernen, denn ohne das muss man manchmal so derbe seltsame Konstruktionen betreiben, dass man Traenen in den Augen hat.

    Und Lambda-Funktionen haben C++ schon LANGE gefehlt, und die Variante ueber Boost ist auch gewoehnungsbeduerftig.

    Um ehrlich zu sein, erwarte ich C++0x seit dem ich das erste Mal davon gelesen habe sehnsuechtig. (!!!)

    Allerdings rechne ich ehr, dass aus C++0x ehr sowas wie C++Ax oder C++Fx wird. Lange Zeit haben sie ja sonst nicht mehr. Und wenn man bedenkt, dass Stroustrup auto seit 1982 durchdruecken will, sieht man, wie arschlangsam das Standardisierungskommitee ist. C++ ist zur Zeit leider eine der am wenigsten weiterentwickelten Sprache ueberhaupt, was ich sehr schade finde, denn immerhin war sie ja mal DIE Programmiersprache #1. Langsam hab ich aber das Gefuehl, sie rutscht wie Forth, Fortran und Pascal ziehmlich ab, und verschwindet irgendwann in dem Nieschensegment, wie COBOL.

    @Kyuu ... kannst du mal etwas ausfuehrlicher zu D werden ? Vielleicht in einem separaten Thread. Viel hab ich noch nicht von D gehoehrt, und du bist iirc der erste, den ich kenne, der damit ernsthaft arbeitet. Und ein persoenlicher Erfahrungsbericht ist 1000x besser und unterhaltsamer, als sich z.B. die Wikipediaseite dazu durchzulesen.

    @DFYX ... nun ja .. die Standardbibliothek von C++ ist auch nicht soo toll (wenn man boost nicht dazu zaehlt als defaktostandard). Ich denke da nur an das Fehlen einfacher regexp- und Stringroutinen, wie z.B. in PHP seit Jahren ueblich.

  5. #5
    Zitat Zitat von Ineluki Beitrag anzeigen
    @DFYX ... nun ja .. die Standardbibliothek von C++ ist auch nicht soo toll (wenn man boost nicht dazu zaehlt als defaktostandard). Ich denke da nur an das Fehlen einfacher regexp- und Stringroutinen, wie z.B. in PHP seit Jahren ueblich.
    Mit dem Unterschied, dass die D Standardbibliothek noch keine 2 Jahre alt ist und Digital Mars zu niemandem abwärtskompatibel sein musste. Deshalb find ichs schade, dass sie wohl einige Chancen verpasst haben. Details weiß ich aber nicht, hab mich mit D nur mal kurz beschäftigt und das am Rande erfahren. Iirc hat da sogar schon jemand eine alternative Standardbibliothek entwickelt und jetzt darf sich der Entwickler mit inkompatiblen Standards quälen. Allerdings hab ich das wie gesagt nur gehört. Kyuu weiß da sicher mehr.

  6. #6
    @Ineluki: Klar. Habe zwar schon eine Weile nichts in D gemacht, da ich im Moment mit einem C++-Projekt beschäftigt bin, aber ich werde es trotzdem gerne tun und der ein oder andere kann mich ja ergänzen/berichtigen.

    @DFYX: Mit Standardbibliothek meinst du wahrscheinlich Phobos, die in der Tat relativ mager ist. Glücklicherweise gibt es ja Tango, die ich fast schon auch als Standardbibliothek bezeichnen würde, vor allem da IIRC darauf hingearbeitet wird, dass beide Seite an Seite funktionieren und eventuell irgendwann in der Zukunft fusionieren können, wobei ich mir mit dem Fusionieren nicht sicher bin.

  7. #7
    Phobos hat doch nicht wirklich etwas, was Tango brauchen koennte .... sonst finde ich D recht nett, allerdings hat mich Vala D ausgespannt, da ich eher im G-Universum heimisch bin. Tango hat zwar grosse Vortschritte gemacht (wobei man dazu sagen muss, dass ich bereits Tango verwendet habe, bevor Tango fuer die Massen zugaenglich war), aber gio und Co ersetzt es schlichtweg noch lange nicht.


    Zitat Zitat von DFYX Beitrag anzeigen
    Ja, D ist toll, nur leider wird es wohl noch dauern, bis man für alle Plattformen einen funktionierenden D Compiler per Paketmanager kriegt. Das ist eigentlich momentan der Hauptgrund, warum ich mich noch nicht näher mit D befasst hab. Außerdem soll die Standardbibliothek nicht sooo toll sein.
    Das liegt daran, dass sich der gdc-Entwickler weigert, sein Copyright zu uebertragen. Finde ich eigentlich auch richtig so. Dadurch wandert gdc nicht in den gcc Hauptzweig.

  8. #8
    Und was ist der Vorteil, wenn gdc nicht in den gcc Hauptzweig wandert ?

  9. #9
    Zitat Zitat von Ineluki Beitrag anzeigen
    Und was ist der Vorteil, wenn gdc nicht in den gcc Hauptzweig wandert ?
    Der Entwickler muss nicht sein Copyright nicht ueberschreiben.

  10. #10
    Zitat Zitat von Ineluki Beitrag anzeigen
    Langsam hab ich aber das Gefuehl, sie rutscht wie Forth, Fortran und Pascal ziehmlich ab, und verschwindet irgendwann in dem Nieschensegment, wie COBOL.
    Was bei COBOL aber auch nicht wirklich schade ist. Ich hab in der Arbeit sehr viel mit Zig Tausend Zeilen COBOL Code verschiedenster Firmen zu tun und gerademal eine einzige davon hat es geschafft, den Code, zumindest in ihren kleineren Programmen, auf eine einigermaßen verständliche Weise zu Strukturieren. Das einzige das mich in positiver Art und weise fasziniert hat war wie die Records definiert werden. Ich wünschte man könnte in anderen Programmiersprachen dermaßen einfach und übersichtlich Baumstrukturen anlegen.
    Gibts für COBOL eigentlich auch noch andere GUI Systeme als diese 3270 Terminals?

  11. #11
    Ich kenn mich mit COBOL nicht sonderlich aus. Ist fuer mich nur ein paradebeispiel einer untergegangenen Nieschenprogrammiersprache. Was ist denn am COBOL-Baumkonzept so interessant ?

  12. #12
    Beispiel einer Recorddefinition. Code ist von http://www.3480-3590-data-conversion...layouts-1.html
    Code:
       01  MAILING-RECORD.
           05  COMPANY-NAME            PIC X(30).
           05  CONTACTS.
               10  PRESIDENT.
                   15  LAST-NAME       PIC X(15).
                   15  FIRST-NAME      PIC X(8).
               10  VP-MARKETING.
                   15  LAST-NAME       PIC X(15).
                   15  FIRST-NAME      PIC X(8).
               10  ALTERNATE-CONTACT.
                   15  TITLE           PIC X(10).
                   15  LAST-NAME       PIC X(15).
                   15  FIRST-NAME      PIC X(8).
           05  ADDRESS                 PIC X(15).
           05  CITY                    PIC X(15).
           05  STATE                   PIC XX.
           05  ZIP                     PIC 9(5).
    Die erste Zahl gibt den Level des Records an, gefolgt vom Recordnamen. PIC **** ist der Datentyp und die Länge. Im Grunde hast du damit schon deinen Baum. Du kannst damit nicht so viel machen wie in anderen Programmiersprachen aber rein vom Prinzip her ist die Definition des Baumes sehr einfach und übersichtlich.
    Wenn du jetzt den Record PRESIDENT hernimmst, dann hast du eine Variable die 23 Zeichen(15+8) lang ist und aus dem Last-Name und dem First-Name besteht. Du kannst entweder den String "MUELLER________MANN____" direkt mit einem Move in President schreiben und dann mit Last-Name oder First-Name auf die entsprechenden Stellen zugreifen, oder du schreibst beides extra in ihre jeweiligen Records hinein. Aber das war dann auch schon die ganze Magie. Mit Cobol kann man nicht die ganze genialität dieser Syntax geniesen.

  13. #13
    Das ist doch mit C(++) Unions doch praktisch genau so.
    Ich sehe da im Moment keinen wirklichen Unterschied. O_o

  14. #14
    unions sind mir neu. Wie würde das mit denen aussehen?

  15. #15
    Achso, das mit dem Ansprechen der Variablen war eher als Beispiel was man dann in COBOL damit anstellen kann gedacht. Was ich hauptsächlich vermisse ist die Möglichkeit, durch irgendwelche Node Objekte auf ähnlich übersichtliche Art und Weise einen Baum zu erstellen.
    Das ähnlichste was mir für Java einfallen würde wäre das hier:

    Code:
    public class Node(String name, Node... children);
    
    new Node("MAILING-RECORD",
       new Node("COMPANY-NAME",
          new Node("CONTACTS"),
             new Node("PRESIDENT",
                new Node("LAST-NAME"),
                new Node("FIRST-NAME")
             ),
             new Node("VP-MARKETING"
                new Node("LAST-NAME"),
                new Node("FIRST-NAME")
             )
          )
       )
    );
    Aber gut lesbar ist das nicht und wenn man nen Formatter vorgesetzt bekommt stehen die Chancen gut, dass der die eigene Formattierung über den Haufen wirft.

  16. #16
    Zitat Zitat von Ineluki Beitrag anzeigen
    Ich kenn mich mit COBOL nicht sonderlich aus. Ist fuer mich nur ein paradebeispiel einer untergegangenen Nieschenprogrammiersprache.
    Untergegangen? Nische? Dir scheint entgangen zu sein, dass heute noch 200 Milliarden Zeilen Cobol Code in Action sind. In Großbritannien hat laut einer Studie ein Bürger am Tag typischerweise 10 mal mit Cobol zu tun... 90% der Finanztransaktionen laufen in Cobol.

    Cobol ist vielleicht nicht mehr cool, aber von untergegangen kann kaum eine Rede sein - und selbst über die Nische kann man streiten :-)

  17. #17
    Es sind einfach teilweise Jahrzehntelang gewachsene Cobolprojekte im Umlauf die die Firmen brauchen und nicht mal eben in eine andere Sprache umgeschrieben werden können. Die müssen halt weiterhin mit Cobol Code erweitert werden, warum auch nicht, aber erste wahl bei neuen Projekten wird COBOL wohl kaum noch sein.

  18. #18
    Man kann sein Copyright ohnehin nicht abgeben. Nur Nutzungsrechte. Was genau wird denn gefordert, um in den gcc Hauptzweig zu kommen?

  19. #19
    Zitat Zitat von DFYX Beitrag anzeigen
    Man kann sein Copyright ohnehin nicht abgeben. Nur Nutzungsrechte. Was genau wird denn gefordert, um in den gcc Hauptzweig zu kommen?
    Das sieht das angloamerikanisches Rechtssystem aber nicht so. Du verwechselst da wohl gerade das Urheberrecht, mit dem Copyright.

  20. #20
    Ach ja... ich weiß schon, warum ich Urheberrechtsfragen nicht wirklich mag. Jedes Land hat seine eigene Regelung und kein Mensch überblickt alle.

    Du hast btw. meine Frage nicht beantwortet.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •