Historias
Slashboxes
Comentarios
 
Este hilo ha sido archivado. No pueden publicarse nuevos comentarios.
Mostrar opciones Umbral:
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.
  • Re:La aplastante realidad

    (Puntos:2, Inspirado)

    La realidad es que pascal tiene poco para ofrecer al programador de sistemas libres. El mismo programador que no cuanta con herramientas profesionales que permitan sacarle provecho al lenguaje, ya que las librerías como Gtk y Qt están pensadas por y para C/C++.
    Pascal tiene mucho que ofrecer al programador de sistemas (libres o no). Es un lenguaje moderno orientado a objetos, tipos fuertes, compilador multiplataforma (incluidas Nintendo DS y GameBoy Advance!) y con una base de usuarios no tan pequeña como la gente cree (Delphi).

    La biblioteca GTK no tiene clases, sólo variables y funciones y por tanto se puede utilizar desde cualquier lenguaje. Las cabeceras *.h de GTK las tienes traducidas a pascal en el directorio c:/FPC/units de FreePascal, junto a las de OpenGL, FMOD, etc.

    Mezclar bibliotecas escritas en C++ y Pascal también es posible aunque es muy complicado porque la representación binaria de los objetos en los dos lenguajes es diferente. http://rvelthuis.de/articles/articles-cppobjs.html [rvelthuis.de] (la verdad, no es nada práctico mezclar ambos lenguajes)

    Una buena muestra del fracaso de Pascal es que gurús de la programación como Ian Marteens abandonaron Delphi para comenzar a adoptar el poderoso entorno de desarrollo de Microsoft: Visual Studio.Net .
    Jeje, sí, bueno, la verdad es que me tiemblan las piernas sólo con pensar en poderoso entorno Visual Studio .NET. Aquí lo que pasa es que hay que distinguir a 2 tipos de "gurús":

    1.
    Si nos referimos a la Industria del Software (con mayúscula), claramente vivimos bajo el reinado del terror de C++. Es lógico porque C++ es un lenguaje que permitió a los programadores de C transicionar a la programación OO sin miedo (la inercia del mercado, ya se sabe). C++, además, siempre ha sido eficaz en muchos campos de aplicación. El reciente lenguaje FreePascal/Delphi ha llegado tarde, no es que sea peor que C++ (ni mucho menos) es simplemente que ha llegado tarde.

    2.
    Si te refieres a los auténticos "gurús" he de decirte que, a lo largo de los años, nunca he visto a personas técnicamente tan solventes como aquellas que programan en Pascal. Y no, no me refiero a los chavales que están aprendiendo sino a aquellos que lo siguen haciendo en Pascal muchos años después.

    Pascal es un lenguaje adecuado tanto para los que están aprendiendo como para los auténticos gurús de la informática. Tengo cientos de demos (demoscenes) escritas en Pascal archivadas en CDs. Su código es técnicamente lo más asombroso que podrás ver en tu vida, en Pascal...

    • El ensamblador en línea está a la orden del día y es una característica del propio lenguaje
    • El enlazador (montador) es inteligente y extrae de las bibliotecas únicamente el código que usa el programa, a diferencia de C, que lo toma todo. El gran tamaño de los ejecutables al que haces referencia es debido a que el enlace es estático de forma predeterminada sino se lo indicas
    • La velocidad de ejecución es similar a la C pero la velocidad de compilación puede legar a ser algo así como 3 veces más rápida que la de C y quizá 20 veces la de C++
    • Sin los dichosos ficheros de cabecera. Pascal usa units, que además de ser unidades de compilación ofrecen espacios de nombres. Esto tiene como consecuencia, entre otras, la siguiente:
    • Pregúntale a un programador de Pascal lo que es un Makefile, seguro que no lo sabe, porque no son necesarios
    • O las diferentes y complicadas opciones que hay que usar para generar una DLL en Windows, en UNIX o Solaris. Seguro que tampoco lo sabe porque las bibliotecas se generan directamente al igual que un ejecutable, y en todas las plataformas por igual

    ¿ Y tu ? ¿ Todavía eres de los dinosaurios que programa en Pascal ?
    Yo sí. ¿Y tú?
    --
    "Es un milagro que la curiosidad sobreviva a la educación reglada" (Albert Einstein)
    [ Padre ]
    Puntos de inicio:    1  punto
    Moderación   +1  
    Modificador extra 'Inspirado'   0  

    Total marcador:   2  
  • por pobrecito hablador el Martes, 21 Agosto de 2007, 18:47h (#948394)
    Un comentario sencillamente genial. Me quito el sombrero.
    [ Padre ]
  • por pobrecito hablador el Martes, 21 Agosto de 2007, 21:46h (#948462)
    "C++ es un lenguaje que permitió a los programadores de C transicionar a la programación OO sin miedo"

    Claro, los programadores de C tenían miedo en aplicar POO... De hecho en Linux tienes un ejemplo de OO con C completo.

    Por otro lado, C++ no es "C + Clases" o "C + POO". Si crees eso, es que no has programado en C++ en serio.

    "El enlazador (montador) es inteligente y extrae de las bibliotecas únicamente el código que usa el programa, a diferencia de C, que lo toma todo."

    Sí, vamos, muuuucho mejor que las binutils de GNU o Microsoft.

    "La velocidad de ejecución es similar a la C pero la velocidad de compilación puede legar a ser algo así como 3 veces más rápida que la de C y quizá 20 veces la de C++"

    Ale!! Venga!! Y qué mas. Irás a decir ahora que el compilador de "Pascal" (a ver de qué Pascal hablas) es mejor que "gcc", "cl" o "icc". Otra cosa es que el código que escribas en C sea una mierda inoptimizable y el de Pascal una obra maestra. Contra eso no hay manera de ganar.

    Pero consulta comparaciones objetivas, con los mismos algorritmos implementados de plano (normalmente con C++ no compensa, es para otras cosas), y véras.

    "Pregúntale a un programador de Pascal lo que es un Makefile, seguro que no lo sabe, porque no son necesarios"

    Claro, un Makefile tiene algo que ver con C... Sí, será eso. Por otro lado, espero que me reveles cómo podrías tú hacer un proyecto como Linux o un videojuego sin un Makefile.

    "O las diferentes y complicadas opciones que hay que usar para generar una DLL en Windows, en UNIX o Solaris. Seguro que tampoco lo sabe porque las bibliotecas se generan directamente al igual que un ejecutable, y en todas las plataformas por igual"

    Sí, fíjate... Con Visual Studio hacer una DLL es dificilííísimo, y con gcc también.
    [ Padre ]