[X] (Humor) Die Entstehungsgeschichte von C
-
C und UNIX nur ein schlechter Scherz?
In einem in der Computerindustrie Aufsehen erregenden Vortrag haben Ken Thompson, Dennis Ritchie und Brian Kernighan zugegeben, daß das von ihnen entwickelte UNIX-OS und die Programmiersprache C von ihnen ursprünglich als Aprilscherz gedacht war, der sich aber seit über 20 Jahren am Leben erhält. In einer Ansprache auf dem kürzlich stattfindenden UnixWorld Software Development Forum äußerte sich Thompson wie folgt:
"1969 hatte AT&T gerade die Arbeit an dem GE/Honeywell/AT&T Multics Projekt beendet. Brian und ich hatten gerade begonnen, mit einer frühen Form von Pascal zu arbeiten, das von Professor Nichlaus Wirths Lehrgebiet an der ETHZ in der Schweiz entworfen wurde. Wir waren von der eleganten Einfachheit und Mächtigkeit der Sprache sehr beeindruckt. Dennis hatte gerade das Buch "Der Herr der Augenringe" zu Ende gelesen, eine urkomische Parodie auf Tolkiens großartige Trilogie "Der Herr der Ringe". Zum Spaß begannen wir, eine Parodie auf die Multics-Umgebung und Pascal zu erstellen. Dennis und ich waren für die Umgebung verantwortlich.
Wir schauten auf Multics, und entwarfen das neue System so komplex und kryptisch wie möglich, um die Frustration gewöhnlicher Benutzer so hoch wie möglich zu machen, und nannten es UNIX als Parodie auf Multics, ebenso wie einige andere Anspielungen innerhalb des Systems. Dann begannen Dennis und Brian an einer wirklich verzerrten Version von Pascal zu arbeiten, genannt 'A'. Als wir merkten, daß andere tatsächlich vorhatten, Programme mit 'A' zu entwerfen, fügten wir rasch zusätzliche kryptische Eigenschaften hinzu, und entwickelten daraufhin B, BCPL und schließlich C. Wir hörten auf, als es uns gelang, den Ausdruck
for(;P("\n"),R--;P("|"))for(e=C;e--;P("_"+(*u++/8)%2))P("| "+(*u/4)%2);
fehlerfrei zu compilieren.
Zu denken, daß moderne Programmierer versuchen würden, eine Sprache zu benutzen, die derartige Ausdrücke zuläßt, lag weit außerhalb unseres Verständnisses. Wir dachten daran, das ganze an die Sowjets zu verkaufen, um den Fortschritt ihrer Computerwissenschaft um 20 Jahre zurück zu werfen.
Man stelle sich unsere Überraschung vor, als AT&T und andere US-Firmen begannen, es mit UNIX und C zu versuchen! Es kostete sie 20 Jahre, um genug Erfahrung zu sammeln, um wenigstens halbwegs nützliche Applikationen mit dieser Parodie der 60er-Jahre zu erstellen., aber wir waren erstaunt von der Zähigkeit des gewöhnlichen UNIX- und C-Programmierers. Auf jeden Fall haben Brian, Dennis und ich in den letzten Jahren ausschließlich auf dem Apple Macintosh in Pascal programmiert und wir fühlen uns wirklich schuldig an dem Chaos, dev Konfusion und der wirklich schlechten Programmierarbeit, die wir mit unserem unsinnigen Scherz vor langer Zeit angerichtet haben."
Die wichtigen UNIX- und C-Verkäufer und -Nutzer, einschließlich AT&T, Microsoft, Hewlett-Packard, GTE, NCR und DEC, haben zum jetzigen Zeitpunkt jede Stellungnahme abgelehnt. Borland International, ein führender Hersteller von Pascal- und C-Tools, einschließlich dem populären Turbo-Pascal, Turbo-C und Turbo-C++, äußerten, daß sie dies bereits seit einiger Zeit vermutet hätten und in Zukunft ihre Pascal-Produkte weiter verbessern wollten, bei gleichzeitiger Einstellung jeglicher Entwicklung für C. Ein IBM-Sprecher brach in unkontrolliertes Lachen aus und mußte eine hastig zusammengerufene News-Konferenz über das Schicksal der RS-6000 aufschieben - lediglich mit der Aussage "VM wird nun wirklich bald zur Verfügung stehen". In einer kryptischen Aussage bemerkte Professor Wirth vom Institut der ETHZ, Vater der strukturierten Sprachen Pascal, Modula2 und Oberon, lediglich, daß P.T. Barnum richtig lag.
In einer ähnlichen Meldung, die vor kurzem hereinkam, sagten üblicherweise zuverlässige Quellen, daß ein ähnliches Geständnis bald von William Gates gemacht werden wird, betreffend das MS-DOS- und Windows-Betriebssystem. Und IBM-Sprecher haben zu leugnen begonnen, daß auch die virtuelle Maschine (VM) ein interner Streich ist, der nach außen gedrungen ist.
Quellen:
Aus: COMPUTERWORLD, April 1st, in freier ÜbersetzungDer englische Originaltext ist unter "c hoax" im Web zu finden.
-
Ähm - der Witz ist schon seit Jahr und Tag im Humor-Bereich zu finden:
http://www.c-plusplus.net/geschichte.htm
Warum also nochmal ins Redaktionsforum?
-
Ich will die Rubrik "Humor" eigentlich auflösen, da das eine Layout-Leiche ist.
Bin aber für Gegenvorschläge dankbar, wie man das noch lösen kann.
-
Ah das ist natürlich ein Argument
Dann könnte man natürlich die (hoffentlich nur temporäre) Durststrecke bei den Veröffentlichungen stopfen, indem man in den Monaten, wo sonst garkeine Ausgabe des Magazins zustande käme, einen Humor-Artikel einstellt - so lange wie Stoff dafür vorhanden ist.
-
Dieser Gedanke lag mir fern.
-
nöja, aber ein paar Humorartikel im Magazin können ja auch nicht schaden^^
in echten Zeitungen gibt es ja auch öfters eine Witzeseite
und wenn wirklich mal in einem Monat nichts ansteht, ist das immer noch besser als nichts
-
Siehe auch hier:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-239610.html
Wer da noch Ideen hat...
-
es gab doch auch mal so einen angeblichen Windows 98 Quellcode iwo im Netz :p
/* Windows '98 source code */ /* TOP SECRET Microsoft(c) Code Project: Chicago(tm) Projected release-date: Summer 1998 */ #include "win31.h" #include "win95.h" #include "evenmore.h" #include "oldstuff.h" #include "billrulz.h" #define INSTALL_HARD char make_prog_look_big[1600000]; void main() { while(!CRASHED) { display_copyright_message(); display_bill_rules_message(); do_nothing_loop(); if (first_time_installation) { make_50_megabyte_swapfile(); do_nothing_loop(); totally_screw_up_HPFS_file_system(); search_and_destroy_the_rest_of_OS2(); hang_system(); } write_something(anything); display_copyright_message(); do_nothing_loop(); do_some_stuff(); if (still_not_crashed) { display_copyright_message(); do_nothing_loop(); basically_run_windows_3.1(); do_nothing_loop(); do_nothing_loop(); } } if (detect_cache()) disable_cache(); if (fast_cpu()) { set_wait_states(lots); set_mouse(speed, very_slow); set_mouse(action, jumpy); set_mouse(reaction, sometimes); } /* printf("Welcome to Windows 3.11");*/ /* printf("Welcome to Windows 95"); */ printf("Welcome to Windows 98"); if (system_ok()) crash(to_dos_prompt); else system_memory = open("a:\swp0001.swp", O_CREATE); while(something) { sleep(5); get_user_input(); sleep(5); act_on_user_input(); sleep(5); } create_general_protection_fault(); }
-
Dieser Thread wurde von Moderator/in GPC aus dem Forum Die Redaktion in das Forum Archiv verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.