The evolution of a programmer
Acabo de terminar de leer The Unix Hater’s Handbook (ya hablé de él hace unos días). Encontré otro segmento muy simpático en dicho libro, del que los autores aseguran no ser los creadores (sino que rulaba por el ciberespacio ya a principios de los noventa). Este trozo, creo recordar que en el capítulo dedicado a C++, nos cuenta la hipotética historia de un programador que desea escribir el clásico "Hola Mundo", conforme pasan los años:
The evolution of a programmer
High school/Junior 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 (list ’HELLO ’WORLD)))
New professional
#include
main (argc,argv)
int argc;
char **argv; {printf ("Hello World!n");}
Seasoned pro
#include
const int MAXLEN = 80;
class outstring;
class outstring {
private:
int size;
char str[MAXLEN];
public:
outstring() { size=0; }
~outstring() {size=0;}
void print();
void assign(char *chrs);
};
void outstring::print() {
int i;
for (i=0 ; i< size ; i++)
cout << str[i];
cout << "n";
}
void outstring::assign(char *chrs) {
int i;
for (i=0; chrs[i] != ’0’;i++)
str[i] = chrs[i];
size=i;
}
main (int argc, char **argv) {
outstring string;
string.assign("Hello World!");
string.print();
}
Manager
“George, I need a program to output the string ‘Hello World!’”
//Disclaimer: En el bucle donde se compara con ’0’, debería ser con ’barra cero’, pero he tenido que cambiarlo para que no falleciera el resto del blog ahí ;)
3 comentarios
motagirl2 -
Juanma -
Juanma -