| Lenguaje C |
|
| El lenguaje más potente en la actualidad |
Iniciamos aquí un
recorrido que nos
llevará por los diferentes
lenguajes de
programación existentes
para Amiga.
Comenzamos con C. |
Cuando me compré mi primer Amiga en 1989, el mundo de la informática se mostró de otro color. Venía de mi viejo y amado Spectrum, y lo primero que fui a buscar era el intérprete de Basic, desde esa fecha hasta hoy ha pasado mucho tiempo, y tanto intérpretes como compiladores han cambiado mucho.
Esta sección te invita a seguir de cerca la evolución que han sufrido los compiladores e intérpretes, y conocer los diferentes lenguajes a los que tenemos acceso. Este mes, comenzamos por la programación en C.
Para mí personalmente, es el lenguaje más potente de los que existen en la actualidad, siempre se ha dicho que si no se puede hacer con C, no se puede hacer, y creo que es totalmente cierto, recordando que existe una orden Nativa en C que es "asm" y llama directamente al ensamblador, de hecho se puede hacer más rápido, pero no más fácil.
C nació de la mano de Dennis Ritchie (Laboratorios BELL de AT&T) sobre principios de los 70, y fue creado como lenguaje para reescribir el Sistema operativo UNIX, que en aquel entonces corría bajo un PCP11 y estaba escrito en ensamblador y B, un lenguaje sin tipificar antepasado del C. Creado por Ken Thompson de los mismos Laboratios Bell, y sin más motivo, se hizo con el liderazgo del lenguaje de sistemas por excelencia. Unido a su buen enlace con ensamblador, le hacia un lenguaje extremadamente potente al igual que sencillo de aprender, aunque no tanto de comprender. Esto es debido a que para aprender la sintaxis del lenguaje sólo necesitamos saber las 52 palabras clave, aunque por otra parte es difícil de comprender por la cantidad de posibilidades que tanto sus funciones ya estandarizadas como las opciones que estas permiten son muchas y gratamente potentes.
El C++ nació algo mas tarde, creado por un hombre que unió la programación orientada a Objetos con el clásico C. Este hombre, llamado Bjarne Stroustrup creó el "C con clases", que en 1986 se convirtió en C++ con la culminación de sus trabajo. Para aquellos que no sepáis que es una clase, sólo tenéis que mirar vuestro MUI (cada vez más necesario), que no es otra cosa que un conjunto de clases que utilizamos con nuestros programas mas conocidos.
No podría decir C++ sin decir C, de aquí mi repetición en el tema, cuando hablamos de C/C++ tenemos que decir que más de un 50% de los sistemas operativos actuales se hacen en este lenguaje, la razón es entre otras, su gran portabilidad a otras máquinas o SO's del Mercado y la versatilidad de las clases haciendo la famosa y ansiada reutilización de código.
Bueno, si damos una vuelta por el mundo de Amiga y el lenguaje C, podemos ver infinidad de compiladores, pero evidentemente tendríamos que pararnos en uno muy, muy especial, de aproximadamente 1988 (Versión 5), el "Lattice C Compiler for Amiga" que era uno de los más profesionales de su época. La versión a la que yo me registré fue la Versión 5.0, y no olvidaré la extensa documentación que venía con el producto, al igual que sus valiosísimas utilidades, su propio editor, su depurador (a pantalla completa), su guía de referencia de Librerías, y su gran optimización de código. Y aunque teníamos un Amiga Básico (un 500) funcionaba. Los requisitos eran bastante normales, para lo que es un compilador de C, 2MB de Fast, 512 de Chip, Dos disqueteras o un HD de 20MB. El ahora arcaico "Lattice C", era uno de los compiladores más utilizados. También podemos decir que tubo mucho que ver en nuestros sistemas 1.2, 1.3 y desconozco si tuvo algo que ver en la versión 1.1.
Los compiladores Manx C, Dice C, eran compiladores compactos pero bastante potentes, baratos y fáciles de usar en línea (ya que eran compiladores de Línea de comandos), el Dice C fue el que utilicé para hacer mis prácticas de C, cumplía con la norma ANSI, (El Lattice C también) y era cómodo de utilizar.
| Sas C - Compilador Oficial de Commodore |
Este es el editor del
SAS-C |
Aunque esto puede resultar curioso, Commodore oficialmente utilizaba este compilador como oficial para sus desarrollos. Es un compilador muy evolucionado, y que tiene un pequeño entorno de programación, por lo que es más fácil de utilizar por programadores noveles.
Página principal de Gnu organización |
También hay un FTP para España |
Podemos decir que en nuestros sistemas 3.0, el SAS C tiene mucho que ver y casi con toda seguridad ese aproximado 75% del Kernel de amiga compilado en C, fue compilado en SAS C. La información de que menos del 25% del Kernel del Amiga está realizado en ensamblador es de Olaf Barthel, una de las personas que siguen manteniendo vivo el proyecto OS 3.5 Europeo.
| El compilador público por excelencia |
No podemos olvidarnos del compilador GNU C, creado bajo el entorno UNIX, es el Compilador freeware más usado y Amiga tiene su exportación directa del BSD para que podamos compilar con todas sus librerías "Estándar". Y aunque sea un poco lento a la hora de compilar, tenemos un sin fin de utilidades, ejemplos, GUI's, entornos... etc. para aprovechar todas sus opciones.
Gracias a GNU se han compilado Linux para Amiga, así como exportado muchas aplicaciones que no teníamos en nuestra plataforma, también tengo que decir que GNU es un sistema que evoluciona con las necesidades del programador, ya que el esfuerzo de miles y miles de programadores se ve reflejado en páginas web con código fuente que podemos recoger, y portarlo, si no está ya portado a nuestras máquinas.
El centro de toda esta acción la podemos ver en su páginas WEB, http://www.gnu.org, lugar obligado para todos los programadores de C. Otros lugares de interés son las WEB de universidades Americanas donde realmente ha golpeado fuerte este compilador.
| Storm C - El gran Superviviente |
Vemos al arrancar la versión y añadidos |
Podemos incluir un editor como GOLD ED |
Imagen de Storm C comenzando a compilar |
Si encuentra un error, nos lo muestra así |
Control total de nuestra aplicación en curso |
Storm Wizard es un perfecto añadido |
En mi opinión, es el mejor compilador de C/C++ que existe en Amiga, viene con un completo entorno de desarrollo que nos permite crear aplicaciones sin tener que ir al Shell del operativo, esto es una ventaja añadida, si tenemos en cuenta la cantidad de plug-in que tenemos a su disposición y el apoyo de la compañía que sigue hoy en día en pie, y haciendo todo lo posible por ayudar a los programadores de Storm C.
Storm C, compila actualmente para Amiga OS, PPC y POS, lo cual hace que un programador que quiera crear aplicaciones para 68K o PPC lo tenga muy fácil.
Lo primero que veremos después de instalar el Storm C y ejecutar el compilador será una pantalla de presentación en la cual se nos informará de qué versión es la nuestra, así como las opciones que tenemos, seguidamente se nos muestra una ventana con las diferentes posibilidades de que disponemos, tales como las opciones de edición, así como las opciones de proyecto, compilación, ejecución y depuración de código. De esta manera tenemos todas las posibilidades rápidamente, sin perder el tiempo en buscar en diferentes menús,
El gestor de proyecto nos engloba las librerías, el archivo ejecutable, las cabeceras, y por supuesto el código fuente, de este modo el acceso a los diferentes archivos del código fuente es muy sencillo y rápido.
Por último, diremos que el editor está bien, y además podremos seleccionar el que más nos guste, aunque sería mejor coger un GoldEd que fuera más configurable.
Storm C permite además añadir componentes y librerías de Haage & Partner tales como el PowerASM (ensamblador para PPC), StormWizard (Generador de Cuadros de diálogo), StormMesa (Librería Open GL), lo cual hace más fácil el trabajo de cualquier programador, su página web es un lugar que no nos podemos perder en ningún caso, www.haage-partner.com, además obtendremos copia de los parches para subsanar los errores que vamos reportando los programadores, así como demos de sus productos.
Los requerimientos básicos son disco duro, Amiga OS 3.0, 6 MB de RAM, 68020 y es compatible con CyberGraphX.
| Aminet - El centro de la información |
Cualquier usuario de Amiga que esté conectado a Internet, sabe que Aminet es un lugar de culto, los programadores no somos excepciones, ¿qué podemos encontrar en la sección de desarrolladores?.
Tenemos directorios para diferentes lenguajes, nos centraremos en las tratadas en este artículo.
En DEV/C tenemos la Enciclopedia de C, encontraremos librerías y ejemplos, diferentes utilidades y proyectos. Así que si queremos programar en serio, sólo tendremos que ir a esta sección y buscar primero por si alguien ha dejado justo el código fuente que queremos, y rezar para que esté identado y documentado.
Una sección interesante para todos aquellos que quieran tener un entorno con compiladores lineales, sólo tendrá que ver si dentro de DEV/GUI encontramos un entorno para el nuestro.
Para los que utilicéis el GNU tendréis dos directorios obligados, DEV/GCC y DEV/GG y aunque no lo utilicéis pasaros a ver que encontráis, porque allí tenéis también infinidad de código fuente.
DEV/DEBUG tiene herramientas para depurar nuestros programas y en DEV/MONITOR tendremos monitores de sistema, aunque más típico en ensamblador, para los programadores expertos les puede ser muy útil.
DEV/MUI, encontraremos clases de MUI así como código para programar con clases MUI, el MUI aporta la facilidad más clara para hacer nuestros entornos.
Y por supuesto DEV/SRC donde encontraremos código fuente de distintos lenguajes de programación.
| Quiero vuestras sugerencias |
Este es el primero de los artículos de programación, si tenéis alguna sugerencia o simplemente queréis charlar de programación, mandarme un email.
NOTA ENCANTA: El email ha sido omitido por ser datos muy antiguos. |