domingo, 7 de octubre de 2012


Origen del Lenguaje Pascal.
Cibernética
Grupo: 571
Daniela Ximena Liceaga Alvarez


Indice: 
-introducción
-Historia de los Lenguajes.
-Historia del Lenguaje Pascal
-Definición del Lenguaje Pascal
-Tipos de Datos.
-Caracteristicas del Lenguaje Pascal
-Implementaciones
-Ejemplo.
-Conclusión
-Bibliografía.


Introducción:
El lenguaje pascal es un lenguaje de programación desarrollado en los años 60 con el objetivo de convertirse en un lenguaje sencillo  para el aprendizaje de la programación. Fue desarrollado por el profesor suizo Niklaus Wirth. Con el tiempo, su utilización se extendió al ámbito académico para convertirse en un robusto lenguaje para la creación de todo tipo de aplicaciones. El IDE más popular de este lenguaje fue Turbo Pascal para MS-DOS. Es un lenguaje de programación estructurado fuertemente tipificado.
Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana. Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe,se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llamaprogramación. 
También la palabra programación se define como el proceso de creación de un programa de computadora, mediante la aplicación de procedimientos lógicos, a través de los siguientes pasos:
  1. El desarrollo lógico del programa para resolver un problema en particular.
  2. Escritura de la lógica del programa empleando un lenguaje de programación específico (codificación del programa).
  3. Ensamblaje o compilación del programa hasta convertirlo en lenguaje de máquina.
  4. Prueba y depuración de programa
  5. Desarrollo de la documentación.
Historia de los Lenguajes: 


En los años 50 se realizaron varios compiladores primitivos y fue en 1957 cuando apareció el primer compilador de FORTRAN. El compilador de FORTRAN (FORmula TRANslator) estaba diseñado para traducir a lenguaje máquina expresiones y operaciones matemáticas, e incluso permitía la manipulación de matrices. La aparición del FORTRAN fue un gran cambio para los programadores que no todos aceptaron de buen grado. No les gustaba que sus programas fueran tratados por el ordenador como meros datos, y argumentaban que el código maquina generado por el compilador nunca podría ser tan eficiente como el escrito por ellos directamente. Esto no era generalmente así, puesto que el FORTRAN no fue diseñado pensando en crear un lenguaje bien estructurado sino pensando en crear un traductor de expresiones aritméticas a código m maquina muy eficiente. Por ello, el diseño lógico del ordenador IBM 704 para el que fue creado casi puede deducirse del lenguaje FORTRAN. En diferentes versiones, cada vez mas estructuradas, el lenguaje FORTRAN se ha utilizado extensivamente desde que apareció hasta hoy en día, y puede considerarse el lenguaje estandard del calculo científico  Unos años después de aparecer el FORTRAN apareció el lenguaje ALGOL 60 (Algorithm Language), que fue diseñado para ser independiente del ordenador con una gramática bien definida. También de aquella época es el COBOL (Common Business Oriented Language) que se diseño para para las manipulaciones de datos normales en aplicaciones de negocios y con un uso mayor del lenguaje ingles en sus frases. Las versiones modernas del COBOL siguen usándose en la actualidad y es el lenguaje estandard en aplicaciones informáticas bancarias. Desde entonces han aparecido diversos lenguajes de alto nivel entre los que podemos mencionar el BASIC (Beginners All{purpose Symbolic Instructional Code), PL/I , APL, PASCAL, ADA, MODULA , C , RPG, PROLOG, LISP, ... etc. Alguno de estos lenguajes han sido diseñados para un tipo concreto de aplicaciones. Por ejemplo, el ADA para aplicaciones relacionadas con defensa, o el RPG para transacciones usuales en los bancos. La evolución de los lenguajes de programación ha estado guiada por la evolución de:
o   Los ordenadores y sus sistemas operativos.
o   Las aplicaciones.
o   Los métodos de programación.
o   Los fundamento teóricos.
o   La importancia dada a la estandarización.


Historia del lenguaje Pascal: 


El lenguaje de programación Pascal apareció por primera vez en 1971, de la mano de Niklaus Wirth.
Wirh inventó el lenguaje como una forma de mejorar el por aquel entonces arcaico Algol. No es el primer lenguaje que Wirth diseña, posteriormente inventó el Modula-2 y el Oberon. Sin embargo, paradójicamente, esos dos lenguajes han sido ampliamente superados por el Extended Pascal y el Object Pascal. De todos esos lenguajes, Pascal es el que más éxito ha tenido.
Aunque nace a principios de los 70, Pascal cobra auténtica vida a partir de principios/mediados de los 80, popularizado por el fabuloso Turbo Pascal de MS-DOS para PC, y sobre todo el Apple Pascal. Pascal ha sido tan popular hasta mediados de los 90, que una gran parte (la mayor parte) de las aplicaciones desarrolladas para Mac estaban realizadas en Pascal, así como una enorme parte también de los programas de MS-DOS.
Todavía hoy, Pascal se enseña en las universidades como primer lenguaje, pues se trata de un lenguaje muy legible.
Fue Borland la que, hasta el Turbo Pascal 7, se encargó de la mayor parte de la evolución de este lenguaje. A mediados de los 90, con el boom de Windows y el renacimiento de los sistemas Unix (entre ellos Linux) como ordenadores servidores primero y luego como estaciones de trabajo, motivó que Pascal pasara a un segundo plano en beneficio de C.
En ese momento, prácticamente solo Delphi (Object Pascal para Windows) consiguió mantenerse en la brecha, pero conformándose con una pequeña parte del mercado solamente.
Casi todo el mundo intentó pasarse a C++. Fíjate que decimos intentó. C++ no consiguió calar del todo por su extrema complejidad. Su sistema de objetos, los macros, los crípticos nombres de funciones, los namespaces tan difíciles de manejar, los templates, la STL y otra serie de cosas, hicieron que rápidamente mucha gente pasara de querer usar esa herramienta que todo el mundo proclamaba que era tan potente, a buscar alternativas que fueran más simples y prácticas. Sun, la compañía del Java, se gasto una millonada en promocionar su lenguaje, y tuvo un gran éxito, sin duda debido no solo al dinero en publicidad, sino a la gente que escapaba escaldada del C++. En realidad, Java no es un lenguaje fácil de aprender (obliga a pensar en objetos desde el principio, algo que los novatos no llevan bien), pero comparado con C++, se podía considerar como algo sencillo.
Borland, una compañía con no tanto dinero como Sun, no pudo competir con Pascal, y se tuvo que conformar sacando su propia máquina virtual de Java. Pero Delphi no ha dejado nunca de existir. Aun hoy sigue sacando versiones Delphi, con gran éxito, aunque no consigue subir significativamente su porcentaje de participación en el mercado.
El paso de Turbo Pascal a Delphi también trajo como consecuencias que apareciera Kylix, que no es más que un Delphi multiplataforma. No caló lo suficiente, debido a la licencia cerrada, y a que imponía que el programa compilado fuera GPL.
Posteriormente Microsoft compró la mayor parte de Borland. Con ello se abandonó Kylix, Linux, y se hizo a Borland 100% Windows. Esta estrategia prácticamente ha arruinado el avance de Pascal frente a otros lenguajes, en el entorno corporativo.
En el momento en que Borland pasó de Turbo Pascal a Delphi, apareció Free Pascal. Free Pascal es un intento de la comunidad de código libre de hacer un compilador compatible con Turbo Pascal para todas las plataformas más famosas (incluido Linux, OS X y Windows). Desde la versión 2.0, Free Pascal es además compatible con Delphi.
Free Pascal es, hoy en día, el sistema preferido para programar en Pascal multiplataforma. Su IDE principal, el Lazarus, un clon del Delphi, corre tanto en Windows como en OS X como en Linux.
Para la realización de este tutorial, recomendamos usar Lazarus. Es perfectamente posible usar Delphi, pues es totalmente compatible en lo básico y también en la mayoría de las cosas avanzadas.
Lazarus y Free Pascal son la gran esperanza del lenguaje de programación Pascal, y de los entornos de desarrollo multiplataforma en general. Su desarrollo es muy activ

Definicion del lenguaje pascal: 


Es un lenguaje de alto nivel desarrollado en Alemania a finales de la década de los 70s por Niklaus Wirth.
La idea fue crear un lenguaje que permitiese la enseñanza y el aprendizaje de la programación.
A tal fin, la sintaxis del Pascal es muy similar a la del idioma inglés y los programas son fáciles de leer e interpretar.
Además, Pascal no toma en consideración el hecho que las letras estén en mayúsculas o minúsculas.
En el Laboratorio de Informática se emplea el compilador de Pascal de Borland, que ofrece muchas facilidades para el aprendizaje, como el realzado de sintaxis y la ubicación de los errores en la línea de código en que ocurren.

Tipos de datos:

Pascal es un lenguaje donde se debe especificar a la computadora qué datos va a contener una variable.
Se recordará que una variable es un vaso o contenedor.
Pues bien: un humano puede, a simple vista, distinguir entre una palabra como 'Hola' o un número como 47. Pero la computadora no puede hacer esto, así que se le debe decir qué tipo de datos se pondrá en cada variable.
Una vez hecho esto, no puede almacenarse un valor de cualquier tipo en esa variable, sino de algunos tipos (Pascal permite ciertas conversiones de tipo).
Para decirle a Pascal el tipo de una variable, se usa una de las siguientes palabras clave en el lugar indicado en el esqueleto del programa:
  • o   INTEGER: Número entero entre -32,768 y 32,767
  • o   LONGLNT: Número entero entre -2*10^31 y 2*10^31 - 1
  • o   REAL: Número con coma decimal entre 2.9*10-39^y 1.7*10^38
  • o   STRING: Cadena de caracteres (conjunto de números, letras, símbolos; palabras y frases)
  • o   CHAR: Un carácter (un dígito o una letra o un símbolo)

Existen otros tipos de datos, pero no son necesarios para completar el programa del Laboratorio.

Caracteristicas del lenguaje pascal: 

A diferencia de lenguajes de programación descendientes de C, Pascal utiliza el símbolo := para la asignación en vez de =. Si bien el segundo es más conciso, la práctica ha demostrado que muchos usuarios utilizan el símbolo de igualdad para comparar valores en lugar del comparador de C que es el símbolo ==. Esta sintaxis conduce a muchos errores [bugs] difíciles de rastrear en código C. Dado que Pascal no permite dentro de expresiones y utiliza sintaxis distinta para asignaciones y comparaciones, no sufre estos errores.

Otra diferencia importante es que en Pascal, el tipo de una variable se fija en su definición; la asignación a variables de valores de tipo incompatible no están autorizadas (En C, en cambio, el compilador hace el mejor esfuerzo para dar una interpretación a casi todo tipo de asignaciones). Esto previene errores comunes donde variables son usadas incorrectamente porque el tipo es desconocido. Esto también evita la necesidad de notación húngara, prefijos que se añaden a los nombre de las variables y que indican su tipo.


Implementaciones: 

Las primeras versiones del compilador de Pascal, entre ellas la más distribuida fue UCSD Pascal, traducían el lenguaje en código para una máquina virtual llamada máquina-P. La gran ventaja de este enfoque es que para tener un compilador de Pascal en una nueva arquitectura de máquina solo hacía falta reimplementar la máquina-P. Como consecuencia de esto, solo una pequeña parte del interprete tenía que ser reescrita hacia muchas arquitecturas.
En los años 1980, Anders Hejlsberg escribió el compilador Blue Label Pascal para la Nascom-2. Más tarde fue a trabajar para Borland y reescribió su compilador que se convirtió en Turbo Pascal para la IBM PC. Este nuevo compilador se vendió por $49, un precio orientado a la distribución masiva.
El económico compilador de Borland tuvo una larga influencia en la comunidad de Pascal que comenzó a utilizar principalmente en el IBM PC. Muchos aficionados a la PC en busca de un lenguaje estructurado reemplazaron el BASIC por este producto. Dado que Turbo Pascal, solo estaba disponible para una arquitectura, traducía directamente hacia al código de máquina del Intel 8088, logrando construir programas que corrían mucho mas rápidamente que los producidos en los esquemas interpretados.
Durante los años 1990, estuvo disponible la tecnología para construir compiladores que pudieran producir código para diferentes arquitecturas de hardware. Esto permitió que los compiladores de Pascal tradujeran directamente a código de la arquitectura donde correría.
Con Turbo Pascal versión 5, Borland, agregó programación orientada a objetos a Pascal.
Sin embargo, Borland después decidió mejorar esa extensión del lenguaje introduciendo su producto Delphi, diseñado a partir de estándar Object Pascal propuesto por Apple como base. Borland también lo llamó Object Pascal en las primeras versiones, pero cambio el nombre a lenguaje de programación Delphi en sus últimas versiones.

Ejemplo: 



Codificación del programa para sacar la media en Pascal. 


DOCUMENTACIÓN. Las palabras entre llaves no se incluyen en el flujo del programa. Las explicaciones de los procesos, encerradas entre llaves, constituyen la documentación para el programador.
INICIO. La cabecera de programa es su primera parte. Le sigue el cuerpo, que tiene las instrucciones. La cabecera consiste en la palabra program seguida del nombre del programa, en este caso, "puntuaciones" (student grade record).
DECISIÓN. Se comprueba si el fichero contiene aún registros por leer y, si es así, el programa ejecuta las instrucciones siguientes. La palabra begin indica el comienzo de una nueva secuencia de instrucciones.
LEER. Con read, se lee del fichero un registro formado por un nombre de alumno, su curso y sus puntuaciones.
DECISION. Se compara el curso leído del fichero y el valor "1". Si el curso es un "1", el programa prosigue con las instrucciones de cálculo.
CÁLCULOS. Se suman las puntuaciones de las materias y se halla su media.
ESCRIBIR. Con write, se escribe una línea con el nombre del alumno y su puntuación media.
END. Cuando se han leído todos los registros, el programa se detiene y termina con la línea end.
SALIDA.

Conclusion:

 El objetivo de Niklaus Wirth era facilitar el aprendizaje de programación a sus alumnos, utilizando la programación estructurada y estructuración de datos creando un lenguaje. sin embargo con el tiempo su utilización excedió el ámbito académico para convertirse en una herramienta para la creación de aplicaciones de todo tipo. 


Bibliografía: 


http://es.wikibooks.org/wiki/Programación_en_Pascal/Historia









No hay comentarios:

Publicar un comentario