Los primeros lenguajes de programación preceden a la computadora moderna. En un inicio los lenguajes eran códigos. Durante un período de nueve meses entre 1842 y 1843, Ada Lovelace tradujo las memorias del matemático italiano Luigi Menabrea acerca de la nueva máquina propuesta por Charles Babbage, la Máquina Analítica. Con estos escritos, ella añadió unas notas en las cuales especificaba en detalle un método para calcular los números de Bernoulli con esta máquina, el cual es reconocido por muchos historiadores como el primer programa de computadora del mundo.
Los primeros códigos de computadora estaban especializados según sus aplicaciones. En las primeras décadas del siglo 20, los cálculos numéricos estaban basados en los números decimales. Eventualmente se fueron dando cuenta que la lógica podía ser representada con números, no sólo con palabras. Por ejemplo, Alonzo Church fue capaz de expresar el cálculo lambda a través de fórmulas. La máquina de Turing estableció las bases para almacenar programas como datos en la arquitectura de von Neumann de una computadora. Sin embargo, a diferencia del cálculo lambda, el código de Turing no serviría satisfactoriamente como base para lenguajes de más alto nivel- su principal uso es en el análisis riguroso en la complejidad algorítmica. Como muchos “primeros” en la historia, el primer lenguaje de programación moderno es difícil de identificar. Desde un inicio, las restricciones de hardware definían el lenguaje. Las tarjetas perforadas permitían 80 columnas, pero algunas de estas serían utilizadas para una clasificación de cada tarjeta. FORTRAN incluía algunas palabras reservadas provenientes del inglés, como “IF”, “GOTO” (go to) y “CONTINUE”. El uso del tambor magnético para la memoria implicaba que los programas informáticos tuvieran que estar intercalados con las rotaciones del tambor. Por lo tanto los programas eran muy dependientes del hardware.
En la década de 1940 fueron creadas las primeras computadoras modernas, con alimentación eléctrica. La velocidad y capacidad de memoria limitadas forzaron a los programadores a escribir programas, en lenguaje ensamblador muy afinados. Finalmente se dieron cuenta de que la programación en lenguaje ensamblador requería de un gran esfuerzo intelectual y era muy propensa a errores.
En los cincuenta, los tres primeros lenguajes de programación modernos, cuyos descendientes aún continúan siendo utilizados, son:
· FORTRAN (1955), creado por John Backus.
· LISP (1958), creado por John McCarthy.
· COBOL (1959), creado por el Short Range Committee, altamente influenciado por Grace Hopper.
El período comprendido entre finales de 1960 y finales de 1970 trajo un gran florecimiento de lenguajes de programación. La mayoría de los paradigmas de lenguajes de programación más importantes y actualmente en uso se inventaron en este período:
· Simula, inventado en la década de 1960 por Nygaard y Dahl como un superconjunto de Algol 60, fue el primer lenguaje diseñado para apoyar la programación orientada a objetos.
· C, en principio un lenguaje de programación de sistemas, fue desarrollado por Dennis Ritchie y Ken Thompson en los Laboratorios Bell entre 1969 y 1973.
· Smalltalk (mediados de los 70) proporcionaron un completo diseño de un lenguaje orientado a objetos.
· Prolog, diseñado en 1972 por Colmerauer, Roussel y Kowalski, fue el primer lenguaje de programación lógica.
· ML construyó un sistema de tipos polimórfico (inventado por Robín Milner en 1973) en el tope de Lisp, pionero en los lenguajes funcionales de programación con tipado estático.
En los años 60 y 70 también suscitó un debate considerable sobre los méritos de la "programación estructurada", que esencialmente significaba programación sin el uso de GOTO. Este debate estaba estrechamente relacionado con el diseño del lenguaje: algunos lenguajes no incluían GOTO, lo que obligó a la programación estructurada en el programador. Aunque el debate se recrudecía acaloradamente en ese momento, casi todos los programadores están de acuerdo en que, incluso en lenguajes que ofrecen GOTO, es una mala práctica de programación usarlo, excepto en raras circunstancias. Como resultado de ello, las generaciones posteriores de diseñadores de lenguajes han encontrado el debate sobre programación estructurada tedioso e incluso desconcertante.
La década de 1980 también trajo avances en la implementación de lenguajes de programación. El movimiento de RISC en la arquitectura de computadoras postulaba que el hardware debía estar diseñado para los compiladores más que para los programadores de ensamblador humanos. Con la ayuda de las mejoras en la velocidad del procesador, permitiendo técnicas de compilación cada vez más agresivas, el movimiento RISC despertó un mayor interés en la tecnología de compilación de los lenguajes de alto nivel. El rápido crecimiento de Internet en la década de 1990 fue el siguiente gran acontecimiento histórico para los lenguajes de programación. Con la apertura de una plataforma totalmente nueva para los sistemas informáticos, Internet creó una oportunidad adoptar nuevos lenguajes.
La evolución de los lenguajes de programación continúa, tanto en la industria como en investigación. Algunas de las tendencias actuales incluyen:
· Aumentar el soporte para la programación funcional en lenguajes importantes utilizados comercialmente, incluida la programación funcional pura para hacer el código más fácil de razonar y de paralelizar (tanto en macro como en micro-niveles).
· Construir lenguajes para apoyar la programación concurrente y distribuida.
· Mecanismos para añadir al lenguaje verificación en cuanto a seguridad y confiabilidad: chequeo sintáctico extendido, control de flujo de información, seguridad de hilos.
· Mecanismos alternativos de modularidad: mixins, delegados, aspectos.
· Desarrollo de software orientado a componentes.
· Meta programación, la reflexión o el acceso al árbol de sintaxis abstracta.
· Mayor énfasis en cuanto a distribución y movilidad.
· Integración con bases de datos, incluyendo XML y bases de datos relacionales.
Algunos lenguajes importantes que se desarrollaron durante todo el período hasta la actualidad fueron:
1952 - Autocode
1975 - Scheme
1978 - SQL (inicialmente sólo un lenguaje de consulta, posteriormente ampliado con construcciones de programación)
1990 - Haskell
1991 - Python
1993 - Lua
HISTORIA DE LAS COMPUTADORAS
Desde su inicio, la computadora a pasado varias etapas de desarrollo. Por lo general, los escritores clasifican estos avances tecnológicos como generaciones, un término de mercadeo.
Primera Generación de Computadoras :
La primera generación de computadoras comenzó en los años 1940 y se extendió hasta los 1950. Durante este periodo, las computadoras empleaban tubos al vacío para conducir la electricidad. El uso de los tubos al vacío hacía que las computadoras fueran grandes, voluminosas y costosas porque los tubos tenían que ser continuamente reemplazados debido a que se quemaban con frecuencia. Hasta este tiempo, las computadoras fueron clasificadas por su dispositivo principal para el almacenaje en memoria. La UNIVAC I emplea almacenamiento similar a la cinta magnética que fue usada previamente, pero ofrece la ventaja de capacidad de acceso semi-aleatorio.
Segunda Generación de Computadoras:
1958 – Transistor Las computadoras construidas con transistores marcan el comienzo de la segunda generación de los equipos de computadora. 1959 – IBM 1602 IBM introduce dos pequeñas computadoras de escritorio, a saber: la IBM 1401 para negocios y la IBM 1602 para científicos.
Tercera Generación de Computadoras:
1964 – IBM 360 La tercera generación de computadoras comenzó en el 1964 con la introducción de la IBM 360, la computadora que fue la pionera para el uso de circuitos integrados en un chip. En ese mismo año, los científicos de computadora desarrollaron circuitos integrados diminutos e instalaron cientos de estos transistores en un solo chip de silicón, el cual era tan pequeño como la punta de un dedo 1965 – PDP-8 La “Digital Equipment Corporación” (DEC) introduce la primera minicomputadora, conocida como la PDP-8. 1968 – Alan Shugart Alan Shugard en IBM demuestra el primer uso regular del Disco flexible de 8- pulgadas (disco de almacenaje magnético).
Cuarta Generación de Computadoras:
1968 – Gilbert Hyatt El desarrollo de la tecnología de microprocesadores resultó en la cuarta generación. En el 1968, Gilbert Hyatt diseño una computadora que tenía la capacidad de instalar un microchip de silicón del tamaño de una uña de dedo. Hayatt quería que el mundo lo reconociera como el inventor que revolucionó la computadora. Después de veinte años de batallas legales, la oficina de patentes y marcas en Estados Unidos Continentales le otorgó a Hyatt la patente No. 4,942.516 por un “Single Chip integrated Circuit Computer Architecture”. - 6 - 1971 –Dr. Ted Hoff En el 1971, el Dr.Ted Hoff, conjuntamente con un grupo de individuos trabajando en Intel Corporation, desarrollaron un microprocesador o un chip de computadora micro programable, conocido con el nombre de Intel 4004. Tal chip solo estaba destinado para calculadoras, puesto carecía de la potencia necesaria para que pudiera trabajar en una computadora. 1975 –la Altair Tres años más tarde, ellos presentaron en el mercado la versión
8080, la cual era capaz de correr la unidad de procesamiento de una computadora. En el 1974, Radio Electronics publicó un artículo sobre la construcción de una computadora casera que usaba esta tecnología. Subsecuentemente, la revista Popular Electronics escribió una sección sobre Altair, una computadora que tenía el chip 8080. La Altair, nombrada así por un episodio de Star Trek, fue introducida por MITS, Inc. Fue vendida en combo por menos de $400.00. Aunque inicialmente no contaba con teclado, monitor, sin una memoria permanente y sin programas, fueron tomadas 4,000 órdenes dentro de los primeros tres meses. 1976 – Steve Wozniak and Steve Jobs Las computadoras Apple hicieron su aparición durante la década de los 1970. En el 1976, Steve Wozniak y Steve Jobs construyeron la primera computadora de Apple. Este dúo suministraba gratuitamente programas para sus máquinas, adquiriendo un éxito módico. Con la ayuda de profesionales en este campo, en el 1977 presentaron una nueva versión mejorada de su máquina de Apple, llamada la Apple II. Este sistema de computadora fue el primero en su clase en ser aceptado por usuarios comerciantes, puesto contaba con la simulación de una hoja de cálculo llamada VisiCalc. Era una computadora de esscritorio compacta con 4K de memoria, con precios de $1,298 y una velocidad del reloj de 1.0. 1980 – IBM PC La corporación de IBM entró en el mercado de las computadoras personales, lanzando la IBM PC. Esta computadora fue un éxito rotundo y se convirtió en un “best seller”. Debido al éxito de la entrada de la IBM en el mercado de microcomputadoras tipo PC, otras corporaciones de computadoras decidieron capitalizar tal popularidad al desarrollar sus propios clones. Estas computadoras personales contaban con muchas de los mismos rasgos de las máquinas IBM y eran capaces de correr los mismos programas. Se hizo realidad el uso diseminado de computadoras personales.
Quinta Generación de Computadoras:
En la quinta generación, surgieron computadoras con chips de alta velocidad. - 7 - 1991 – Toushstone Delta Supercomputer En el 1991, Cal Tech hizo público su “Touchstone Delta Supercomputer”, la cual ejecutaba 8.6 billones de cálculos por segundo. Al presente, existen computadoras que pueden llevar a cabo miles de operaciones simultáneamente y la frecuencia de la ejecución de estas máquinas se miden en teraflops. Un teraflop es equivalente a la ejecución de 1 trillón de operaciones de puntos flotantes por segundo.
BITS, BYTES Y CARACTERES: La unidad más pequeña y fundamental de los datos que posee la computadora se conoce como un bit. Es, pues, la unidad básica de un sistema de numeración binarios. La palabra bit representa una abreviación de binaty digit (dígito binaria). Los dígitos binarios sólo tienen valores de 0 y 1. Tales dígitos representan encendido y apagado, falso y cierto, no y si. Dentro de la circuitería electrónica de un sistema de computadora, estos valores son representados por la presencia o ausencia de voltaje. Un bit es la cantidad más pequeña de información, pues éstos permiten la construcción de cantidades más grandes de información. Ocho bits conforman un octeto, también llamado byte. Los bytes son la unidad práctica principal de datos de la computadora, puesto que la capacidad de memoria aleatoria y de almacenamiento permanente de una computadora son medidas en bytes. Las cantidades grades de un computador son medidas en kilobytes, megabytes y gigabytes.

0 Comments:
Publicar un comentario