Benchmarking en distintos lenguajes

Horst H. von Brand vonbrand en inf.utfsm.cl
Mie Dic 5 20:40:28 CLST 2007


Franco Catrin L. <fcatrin en tuxpan.com> wrote:
> "Horst H. von Brand" <vonbrand en inf.utfsm.cl> ha escrito:
> > Franco Catrin L. <fcatrin en tuxpan.com> wrote:
> >> "Horst H. von Brand" <vonbrand en inf.utfsm.cl> ha escrito:
> >> > Java es un completo desastre. Obliga a la gente a escribir montones de
> >> > cosas completamente incomprensibles (de lo OOP, y heredar, e incluir
> >> > bibliotecas, y...) para un simple "Hola, mundo!".

> >> Mal ejemplo porque para un simple "Hola, mundo!" el codigo de Java (o
> >> C#) no es muy diferente al de C

> > public class HelloWorld
> > {
> >    public static void main(String[] args )
> >    {
> > 	System.out.println( "Hello world" );
> >    }
> > }

> > Que es esa basura de "public class"? Porque el archivo se tiene que llamar
> > asi? Que es "public static void"? Porque "System.out"? Y la larga lista de
> > etc que aparecen en cuanto quieres leer algo, o definir tus propios datos.

> > #include <stdio.h>
> >
> > main()
> > {
> > 	printf("Hello, world!\n");
> >
> > 	return 0;
> > }

> > Elegante. Clasico. ;-)

> Veamos un simple cambio de este sencillo ejemplo.  Ahora queremos
> pasar el nombre del "saludado" por parametro.  En Java quedaria como :
> (sin validar)
> 
> public class HelloWorld
> {
>    public static void main(String[] args )
>    {
> 	System.out.println( "Hello " + args[0] );
>    }
> }

Y que es eso de andar sumando strings?

> Y en C quedaria como:
> 
> #include <stdio.h>
> 
> main(int argc, char *argv[])
> {
> 	printf("Hello, %f\n", argv[1]);
                       ^^
                       %s, en todo caso
> 
> 	return 0;
> }

> Que es eso del argc? y el "*" ?

Y el %s, etc.

> Ya no es tan elegante ;)

No. Pero no es tanto peor que el original.

> >> En cuanto a lenguajes, siempre le hice el quite al C, y me costo tanto
> >> entender su sintaxis para utilizar punteros/referencias que me salia
> >> mas comodo generar el .ASM para ver que diablos estaba haciendo el
> >> compilador.
> 
> > Alo? Tierra a Saturno!?
> 
> > O tuviste la desgracia de tener un /pesimo/ profesor, o leiste los textos
> > equivocados. El Kernighan y Ritchie "The C Programming Language" es un
> > clasico, con merecida razon. Libros como el "Software Tools" de Kerighan y
> > Plaugher (no la version en Pascal!) son escenciales para aprender a
> > programar bien. Y en <http://www.lysator.liu.se/c> hay harto sobre la
> > cultura C.
> 
> Tuve un buen profesor.  Esa historia es de antes de entrar a la
> universidad, y mi unico texto disponible en ese tiempo era la ayuda
> contextual del compilador.  Internet era inalcanzable fuera del mundo
> universitario.

Mi mas sentido pesame. Aprender asi puede tener efectos duraderos.

> "The C Programming Language" de K&R lo conocí mas tarde, pero lo
> encontré demasiado C'ista para mis gustos, a la larga alguien tiene
> que entender lo que uno escribe.

Y que tiene de no-entendible K&R? Mi problema es al reves, hace verse
trivial cosas complejas...
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                    Fono: +56 32 2654431
Universidad Tecnica Federico Santa Maria             +56 32 2654239
Casilla 110-V, Valparaiso, Chile               Fax:  +56 32 2797513


Más información sobre la lista de distribución Linux