From owner-freebsd-chat Fri Feb 9 04:44:48 1996 Return-Path: owner-chat Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id EAA23219 for chat-outgoing; Fri, 9 Feb 1996 04:44:48 -0800 (PST) Received: from mail.cs.tu-berlin.de (root@mail.cs.tu-berlin.de [130.149.17.13]) by freefall.freebsd.org (8.7.3/8.7.3) with ESMTP id EAA23152 for ; Fri, 9 Feb 1996 04:44:27 -0800 (PST) Received: from caramba.cs.tu-berlin.de (wosch@caramba.cs.tu-berlin.de [130.149.17.12]) by mail.cs.tu-berlin.de (8.6.12/8.6.12) with ESMTP id NAA01797; Fri, 9 Feb 1996 13:22:49 +0100 From: Wolfram Schneider Received: (wosch@localhost) by caramba.cs.tu-berlin.de (8.6.12/8.6.9) id NAA13586; Fri, 9 Feb 1996 13:22:42 +0100 Date: Fri, 9 Feb 1996 13:22:42 +0100 Message-Id: <199602091222.NAA13586@caramba.cs.tu-berlin.de> To: chat@freebsd.org Subject: FYI: The Evolution of a Programmer MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Conversion: prohibited Sender: owner-chat@freebsd.org Precedence: bulk From: Rob Bednark 30 Jan 1996 15:20:00 -0600 From: David Reeg 30 Jan 1996 11:19:44 -0600 ----------------------------- The Evolution of a Programmer ----------------------------- High School/Jr.High =================== 10 PRINT "HELLO WORLD" 20 END First year in College ===================== program Hello(input, output) begin writeln('Hello World') end. Senior year in College ====================== (defun hello (print (cons 'Hello (list 'World)))) New professional ================ #include void main(void) { char *message[] = {"Hello ", "World"}; int i; for(i = 0; i < 2; ++i) printf("%s", message[i]); printf("\n"); } Seasoned professional ===================== #include #include class string { private: int size; char *ptr; public: string() : size(0), ptr(new char('\0')) {} string(const string &s) : size(s.size) { ptr = new char[size + 1]; strcpy(ptr, s.ptr); } ~string() { delete [] ptr; } friend ostream &operator <<(ostream &, const string &); string &operator=(const char *); }; ostream &operator<<(ostream &stream, const string &s) { return(stream << s.ptr); } string &string::operator=(const char *chrs) { if (this != &chrs) { delete [] ptr; size = strlen(chrs); ptr = new char[size + 1]; strcpy(ptr, chrs); } return(*this); } int main() { string str; str = "Hello World"; cout << str << endl; return(0); } Apprentice Hacker =================== #!/usr/local/bin/perl $msg="Hello, world.\n"; if ($#ARGV >= 0) { while(defined($arg=shift(@ARGV))) { $outfilename = $arg; open(FILE, ">" . $outfilename) || die "Can't write $arg: $!\n"; print (FILE $msg); close(FILE) || die "Can't close $arg: $!\n"; } } else { print ($msg); } 1; Experienced Hacker =================== #include #define S "Hello, World\n" main(){exit(printf(S) == strlen(S) ? 0 : 1);} Seasoned Hacker =================== % cc -o a.out ~/src/misc/hw/hw.c % a.out Guru Hacker =================== % cat Hello, world. ^D New Manager =================== 10 PRINT "HELLO WORLD" 20 END Middle Manager =================== mail -s "Hello, world." bob@b12 Bob, could you please write me a program that prints "Hello, world."? I need it by tomorrow. ^D Senior Manager =================== % zmail jim I need a "Hello, world." program by this afternoon. Chief Executive =================== % letter letter: Command not found. % mail To: ^X ^F ^C % help mail help: Command not found. % damn! !: Event unrecognized % logout ========================================================================