• No se han encontrado resultados

Sesión 6.3: Historia de los Lenguajes de Programación. Dr. Alberto A. Del Barrio García

N/A
N/A
Protected

Academic year: 2021

Share "Sesión 6.3: Historia de los Lenguajes de Programación. Dr. Alberto A. Del Barrio García"

Copied!
16
0
0

Texto completo

(1)

Sesión

6.3:

Historia de los

Lenguajes de Programación

Dr. Alberto A. Del Barrio García

(2)

Índice

• Definición

• Prehistoria

• II GM y Posguerra

• Década de los 50: Fortran, COBOL, LISP y ALGOL

• Década de los 60: BASIC

• Década de los 70: C • Década de los 80 • Década de los 90 12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 2

(3)

Definición

• Un lenguaje de programación es un lenguaje formal diseñado 

para expresar procesos que pueden ser llevados 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 (wikipedia)

• Programar es decirle al hardware lo que tiene que hacer

• Dependiendo del nivel de abstracción con el que

programemos, tendremos acceso directo/indirecto a distintas partes del hardware

12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 3

(4)

Clasificación

12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 4

LENGUAJE

 

MÁQUINA

LENGUAJES

 

DE

 

BAJO

 

NIVEL

 

(ensamblador)

(5)

La Prehistoria de la

Programación

• Basile Bouchon y Jean‐Baptiste Falcon usan tarjetas 

perforadas para controlar sus telares (1725)

• Jacquard (1801)

• Korsakov desarrolla máquinas que buscan patrones utilizando 

tarjetas perforadas (1832)

• Augusta Ada King (aka. Ada Lovelace) desarrolló un método 

para calcular los números de Bernoulli basándose en la 

Máquina Analítica de Babbage  (1842‐1843)

• Se considera el primer programa de la Historia 

• Herman Hollerith codificó información en tarjetas perforadas 

(1890) 12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 5

(6)

II GM y Posguerra

• Plakalkül (Plan Calculus) fue desarrollado por Zuse para el Z3 (1943‐

1945)

• Primer lenguaje de alto nivel

• No implementado hasta 1998

• Short Code, de John Mauchly (1949)

• Lenguaje matemático que tenía que ser traducido a lenguaje 

máquina (manualmente) antes de ejecutarlo

• Primer lenguaje para un computador electrónico

• Autocode (años 50), de Alick Glennie

Primer lenguaje de alto nivel compilado

• Primer compilador desarrollado para el Mark I (1952), de la Univ. de 

Manchester

Variantes desarrolladas para EDSAC 2, Atlas I

• Arithmetic Language version 0 (A0), primer compilador de la Historia 

(1951, Grace Hopper) 12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 6

(7)

Década de los 50: Fortran

Formula Translating System (Fortran), inventado por John 

Backus et al. (1954) para IBM

• Uno de los inventores del BNF (Backus‐Naur Form o Backus 

Normal Form), metalenguaje de descripción de lenguajes

• Lenguaje más cercano al natural que el ensamblador

• Diseñado especialmente para cálculos científicos

• Se sigue usando: Fortran I, II, III, 1401 IBM Fortran, IV, 66, 77, 

90, 95, 2003, 2008, 2015 … 12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 7

(8)

Década de los 50: COBOL

COmmon Business‐Oriented Language (COBOL) es diseñado

por la Conference on Data Systems Languages (CODASYL) en 

1958

• Basado en FLOW‐MATIC, evolución de A0 también de Grace 

Hopper, y usado en el UNIVAC I

• Usado en negocios, finanzas y muchos gobiernos

• Todavía se usa: COBOL 60, 61, 65, 68, 74, 85, 2002, 20XX, 

COBOL orientado a objetos, etc.

12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 8

(9)

Década de los 50

LISt Processing (LISP), inventado en 1958 por John McCarthy e 

implementado por Steve Russell en el IBM 704

• Notación matemática similar al lambda cálculo de Alonzo Church

• Muy utilizado en aplicaciones de Inteligencia Artificial

ALGOritmic Language (ALGOL)

• Desarrollado conjuntamente por informáticos europeos y 

americanos en la ETH de Zurich (1958)

• Entre ellos Backus y Naur

• Introduce bloques (begin … end) y funciones anidadas

• Mejora a Fortran, COBOL  y LISP. La mayoría de los lenguajes 

modernos descienden de ALGOL

• ALGOL‐58 fue la primera implementación, por Fiedrich L. Bauer et 

al.

• Otras implementaciones de ilustres como: Dijkstra, Hoare, etc.

12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 9

(10)

Década de los 60: BASIC

Beginner's All‐purpose Symbolic Instruction Code (BASIC), diseñado por J.G. Kemeny y T.E. Kurtz (1964) en el Dartmouth College (New 

Hampshire, EEUU)

• Su idea era que pudiera ser usado no solo por científicos y 

matemáticos

• Basado en Fortran II y con influencias de ALGOL 60

• El compilador era gratuito para que BASIC se expandiera rápidamente

• Muchos minicomputadores empiezan a utilizar dialectos de BASIC

Mercado de los videojuegos

• En la década de los 70 se populariza su uso en microprocesadores

• Altair BASIC (1975, Bill Gates y Paul Allen, MITS)

• Apple II (1977) • PET Commodore, TRS‐80 12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 10

(11)

Década de los 60: BASIC

12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 11

(12)

Década de los 70: C

• Desarrollado por Dennis Ritchie en AT&T Bell Labs entre 1969 

y 1973

• Evolución de Basic Combined Programming Language (BCPL, 

Martin Richards, 1966) y B (Ken Thompson y Dennis Ritchie, 

1969)

• Permite programación estructurada (bloques, subrutinas, etc.) 

recursión

• Uno de los lenguajes más utilizados de la Historia

• Múltiples estándares: K&R (Kernighan y Ritchie), ANSI 

(American National Standards Institute), ISO (International 

Organization for Standardization), C99, C11

• De él descienden C++, C#, Java, Javascript, Perl, Python, 

Verilog, etc. y el C‐shell de UNIX

12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 12

(13)

Década de los 70: C

12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 13

C

C++

JAVA

(14)

Década de los 80

• Tendencia RISC

• Se apuesta por el desarrollo de compiladores

• GNU GCC (1987) • Lenguajes • C++ (C orientado a objetos, 1980) • Ada (1983) • Common LISP (1984) • MATLAB (1984) • Erlang (1986) • Perl (1987) • TCL (1988) 12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 14

(15)

Década de los 90

• La explosión de internet infuye en el desarrollo de los 

lenguajes

• Se apuesta por facilitar el trabajo al programador

• Entornos de desarrollo muy visuales (IDE, Integrated Development Environment)

• Garbage Collectors

• Programación Orientada a Objetos

• Lenguajes

• Haskell (1990)

• Python, Visual Basic (1991)

• Java, Javascript, PHP (1995) 12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 15

(16)

12/05/2014 Sesión   6.2:   Dispositiv os   de   Almacenamien to   de   Da to s   a   tr av és   de   la   His toria 16

Referencias

Documento similar

Imparte docencia en el Grado en Historia del Arte (Universidad de Málaga) en las asignaturas: Poéticas del arte español de los siglos XX y XXI, Picasso y el arte español del siglo

Como en el caso de los tipos enteros, los lenguajes suelen soportar varios tipos real, de modo que el programador pueda seleccionar aquel cuyo rango y precisi´on en el coeficiente

Imparte docencia en el Grado en Historia del Arte (Universidad de Málaga) en las asignaturas: Poéticas del arte español de los siglos XX y XXI, Picasso y el arte español del

JUAN BARJA, ÁNGEL GABILONDO, JAVIER FERNÁNDEZ LASQUETTY.. Esta actividad se enmarca como ha dicho el Rector, dentro del Convenio de colaboración que firmamos en el año 2005

Búsqueda de información sobre los diferentes equipos y sistemas que integra el vehículo, así como de los lenguajes de programación más adecuados para la integración de

No había pasado un día desde mi solemne entrada cuando, para que el recuerdo me sirviera de advertencia, alguien se encargó de decirme que sobre aquellas losas habían rodado

E Clamades andaua sienpre sobre el caua- 11o de madera, y en poco tienpo fue tan lexos, que el no sabia en donde estaña; pero el tomo muy gran esfuergo en si, y pensó yendo assi

17. Sup´ongase que se dispone de un conjunto de k M´aquinas de Turing, de forma que cada una de ellas tiene su propio cabezal de lectura/escritura, su propio conjunto de estados y