You are on page 1of 18

EVOLUCIÓN DE LOS LENGUAJES

DE PROGRAMACIÓN
Evolución de los Lenguajes de Programación

INTRODUCCIÓN

Con la idea de facilitarnos las tareas que debemos de desempeñar los humanos, hemos
venido inventado diversas herramientas a lo largo de nuestra historia, que nos permiten tener
una mejor calidad de vida.
Los ordenadores son uno más de los inventos del hombre, aunque debemos decir que las
tecnologías para su fabricación y explotación han tenido un desarrollo sorprendente a partir
de la segunda mitad del siglo XX. Esta herramienta por sí sola no es capaz de efectuar
ninguna tarea, es tan sólo un conjunto de cables y circuitos que necesitan recibir instrucción
por parte de los humanos para desempeñar alguna tarea. El problema entonces, se puede fijar
en ¿cómo vamos a poder hacer que un conjunto de circuitos desempeñen una determinada
tarea y nos entreguen los resultados que nosotros esperamos?, es decir, ¿de qué manera se
puede lograr la comunicación entre el hombre y el ordenador?
Así pues, tratando de dar una solución al problema planteado, surgieron los lenguajes de
programación, que son como un lenguaje cualquiera, pero simplificado y con ciertas normas,
para poder trasmitir nuestros deseos al ordenador.
Por otro lado, un conjunto de circuitos no entendería ningún lenguaje que nosotros
conozcamos, por más sencillo que éste parezca. Los circuitos en todo caso, sólo reconocen
presencia o ausencia de energía, es decir que debemos hablarle a la máquina en su propio
lenguaje (presencia y ausencia de energía, 0 y 1), o nuestro lenguaje deberá de ser traducido
a un lenguaje binario cuyo alfabeto es el 0 y el 1, mediante las herramientas desarrolladas
para llevar a cabo esta tarea, las cuales reciben el nombre de traductores, y los hay de muchos
tipos, dependiendo de características más específicas del lenguaje a traducir y de la manera
de llevar a cabo su traducción.
Como ya habréis entendido, para crear un lenguaje de programación, deberemos crear la
herramienta que lo traduce, y es justamente de ellas, de las que hablaremos a continuación,
para describir como han ido evolucionando en los últimos 50 años.

Programación Básica 1
Evolución de los Lenguajes de Programación

EVOLUCIÓN DE LOS LENGUAJES


DE PROGRAMACIÓN

Primeros lenguajes (Antes de 1940)

Los primeros lenguajes de programación surgieron de la idea de Charles Babagge, la cual


se le ocurrió a este hombre a mediados del siglo XIX. Era un profesor matemático de la
universidad de Cambridge e inventor inglés, que al principio del siglo XIX predijo muchas
de las teorías en que se basan los actuales ordenadores.
Consistía en lo que él denominaba la
maquina analítica, pero que por motivos
técnicos no pudo construirse hasta
mediados del siglo XX. Con él colaboro
Ada Lovedby, la cual es considerada
como la primera programadora de la
historia, pues realizo programas para aquélla supuesta máquina de Babagge, en tarjetas
perforadas.
Como la máquina no llego nunca a construirse, los programas de Ada, lógicamente,
tampoco llegaron a ejecutarse, pero si suponen un punto de partida de la programación, sobre
todo si observamos que en cuanto se empezó a programar, los programadores utilizaron las
técnicas diseñadas por Charles Babagge, y Ada, que consistían entre otras, en la
programación mediante tarjetas perforadas. A pesar de ello, Ada ha permanecido como la
primera programadora de la historia.

Primeras Computadoras modernas (1940)

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 que la programación en lenguaje
ensamblador requería de un gran esfuerzo
intelectual y era muy propensa a errores.
En 1948, Konrad Zuse publicó un artículo acerca de su lenguaje de
programación Plankalkül. Sin embargo, no fue implementado en su vida y sus
contribuciones fueron aisladas de otros desarrollos.

Programación Básica 2
Evolución de los Lenguajes de Programación

Entre algunos lenguajes importantes que fueron desarrollados en este período se


encuentran:

 1943 - Plankalkül (Konrad Zuse), diseñado, pero sin implementar durante medio
siglo
 1943 - el sistema de codificación ENIAC.
 1949 - 1954 -- una serie de conjuntos de instrucciones nemotécnicas, como la de
ENIAC, comenzando en 1949 con C-10 para BINAC (que luego evolucionaría en
UNIVAC). Cada conjunto de instrucciones estaba destinado a un fabricante
específico.

Lenguajes Modernos (1950 y 1960)

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 et al.;


 LISP (1958), creado por John McCarthy et al.;
 COBOL (1959), creado por el Short Range Committee, altamente influenciado por
Grace Hopper.
Otro hito a finales de 1950 fue la publicación, por un comité Americano y Europeo de
científicos de la computación, de un nuevo “lenguaje para algoritmos”; el Reporte
de ALGOL 60 ("ALGOrithmic Language"). Este reporte consolidó muchas ideas que
estaban circulando en aquel entonces, y proporcionó dos innovaciones importantes para los
lenguajes de programación:

 Estructuras de bloques anidadas: las secuencias de código y las declaraciones


asociadas se pueden agrupar en bloques sin tener que pertenecer explícitamente a
procedimientos separados;
 Ámbito léxico: un bloque puede tener sus propias variables, procedimientos y
funciones, invisible al código fuera de dicho bloque, por ejemplo, ocultamiento de
información.
Otra innovación, relacionada con esto, fue cómo el lenguaje fue descrito:

 Una notación matemática exacta, Backus-Naur Form (BNF), fue utilizada para
describir la sintaxis del lenguaje. Todos los subsecuentes lenguajes de programación
han utilizado una variante de BNF para describir la porción libre del contexto de su
sintaxis.
Algol 60 influenció particularmente en el diseño de lenguajes posteriores, de los cuales
algunos se hicieron más populares. Los grandes sistemas de Burroughs fueron diseñados
para ser programados en un subconjunto extendido de Algol.
Programación Básica 3
Evolución de los Lenguajes de Programación

Las ideas fundamentales de Algol se continuaron, produciendo Algol 68:

 la sintaxis y la semántica se hizo aún más ortogonal, con rutinas anónimas, un sistema
de tipificación recursiva con funciones de orden superior, etc.;
 y no sólo la parte libre del contexto, sino que tanto la sintaxis como la semántica del
lenguaje completo fueron definidos formalmente, en términos de una gramática de
Van Wijngaarden, un formalismo diseñado específicamente para este propósito.
Las variadas pero poco usadas características de Algol 68 (por ejemplo, bloques
simultáneos y paralelos) y su complejo sistema de atajos sintácticos y coerciones
automáticas de tipo lo hicieron impopular entre los ejecutores y se ganó una reputación de
ser difícil. Niklaus Wirth salió del comité de diseño para crear el sencillo lenguaje Pascal.
Algunos de los lenguajes importantes que fueron desarrollados en este período incluyen:

 1951 - Regional Assembly Language


 1952 - Autocode
 1954 - IPL (precursor de LISP)
 1955 - FLOW-MATIC (precursor de COBOL)
 1957 - FORTRAN (primer compilador)
 1957 - COMTRAN (precursor de COBOL)
 1958 - LISP
 1958 - ALGOL 58
 1959 - FACT (precursor de COBOL)
 1959 - COBOL
 1959 - RPG
 1962 - APL
 1962 - Simula
 1962 - SNOBOL
 1963 - CPL (precursor de C)
 1964 - BASIC
 1964 - PL/I
 1967 - BCPL (precursor de C)

Florecimiento de lenguajes de programación (1968-1979)

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:

Programación Básica 4
Evolución de los Lenguajes de Programación

 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 sistemas, fue desarrollado por Dennis
Ritchie y Ken Thompson en losLaboratorios 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 Robin Milner en 1973)
en el tope de Lisp, pionero en loslenguajes funcionales de programación con tipado
estático.
Cada uno de estos lenguajes generó toda una familia de descendientes, y los lenguajes
más modernos cuentan al menos uno de ellos en su ascendencia.
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.
Algunos lenguajes importantes que se desarrollaron en este período fueron:

 1968 - Logo
 1969 - B (precursor C)
 1970 - Pascal
 1970 - Forth
 1972 - C
 1972 - Smalltalk
 1972 - Prolog
 1973 - ML
 1975 - Scheme
 1978 - SQL (inicialmente sólo un lenguaje de consulta, posteriormente ampliado con
construcciones de programación)

Programación Básica 5
Evolución de los Lenguajes de Programación

Consolidación, módulos, rendimiento (1980)

La década de 1980 fueron años de


consolidación relativa en
los lenguajes imperativos. En vez de
inventar nuevos paradigmas, se
comenzó a trabajar a partir de las
ideas inventadas en la década
anterior. C++ combinaba la
programación orientada a objetos y la
programación de sistemas. El
gobierno de Estados Unidos
estandarizó Ada, un lenguaje de
programación de sistemas destinado a
ser utilizado por contratistas de defensa. En Japón y en otras partes, se gastaron enormes
sumas investigando los llamados lenguajes de programación de quinta generación que
incorporaban construcciones de la programación lógica. La comunidad de los lenguajes
funcionales llevaron a cabo la estandarización de ML y Lisp. La investigación en Miranda,
un lenguaje funcional, con evaluación perezosa, comenzó a tomar fuerza en esta década.
Una nueva tendencia importante en el diseño de lenguajes era un mayor enfoque en la
programación de sistemas a gran escala a través del uso de módulos, una organización a gran
escala de unidades de código. Modula, Ada, y ML desarrollaron sistemas de módulos
notables en la década de 1980. Los sistemas de módulos eran relacionados con frecuencia
con construcciones de programación genéricas, que serían, en esencia, módulos
parametrizados (véase también polimorfismo en programación orientada a objetos).
Aunque no aparecían nuevos paradigmas de lenguajes de programación imperativos,
muchos investigadores expandieron las ideas de los lenguajes anteriores y las adaptaron a
nuevos contextos. Por ejemplo, los lenguajes de los sistemas Argusy Emerald adaptaron la
programación orientada a objetos para sistemas distribuidos.
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.
Las tecnologías de los lenguajes continuaron sobre estas líneas entrando en la década de
1990.
Algunos lenguajes importantes que se desarrollaron en este período son:

Programación Básica 6
Evolución de los Lenguajes de Programación

 1980 - C++ (C con clases, el nombre cambió en Julio de 1983)


 1983 - Ada
 1984 - Common Lisp
 1984 - MATLAB
 1985 - Eiffel
 1986 - Objective-C
 1986 - Erlang
 1987 - Perl
 1988 - Tcl
 1988 - Mathematica
 1989 - FL (Backus);

La era del internet (1990)

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. En particular, el lenguaje de programación Java se hizo popular
debido a su pronta integración con el navegador web Netscape Navigator, y varios lenguajes
de scripting alcanzaron un amplio uso en el desarrollo de aplicaciones personalizadas para
servidores web.
La década de 1990 no vio ninguna novedad fundamental en los lenguajes imperativos,
pero sí mucha recombinación y la maduración de viejas ideas. Esta era comenzó la difusión
de los lenguajes funcionales. Una filosofía de conducción grande era la productividad del
programador. Surgieron muchos lenguajes de “aplicaciones de desarrollo rápido” (RAD),
los cuales usualmente venían con un IDE, recolector de basura, y eran descendientes de
lenguajes anteriores. Todos estos lenguajes eran orientados a objeto. Estos incluían Object
Pascal,Visual Basic y Java. Java, en particular, recibió mucha atención. Pero más radicales
e innovadores que los lenguajes de RAD eran los nuevos lenguajes de script. Estos no
descendían directamente de otros lenguajes y ofrecieron nuevas sintaxis e incorporación más
liberal de otras características.
Muchos consideran estos lenguajes de script más productivos que los lenguajes de RAD,
aunque esto se debe a menudo a que es más difícil escribir y mantener largos programas que
pequeños programas simples. Sin embargo, no es menos cierto que los programas de script
llegaron para convertirse en los más prominentes en la conexión con la Web.
Algunos lenguajes importantes que se desarrollaron en este período son:

 1990 - Haskell
 1991 - Python
Programación Básica 7
Evolución de los Lenguajes de Programación

 1991 - Visual Basic


 1991 - HTML (lenguaje de marcado de hipertexto)
 1993 - Ruby
 1993 - Lua
 1994 - CLOS (parte del ANSI Common Lisp)
 1995 - Java
 1995 - Delphi (Object Pascal)
 1995 - JavaScript
 1995 - PHP
 1996 - WebDNA
 1997 - Rebol
 1999 - D

Lenguaje fortran (1957)

Fue el primer lenguaje de alto nivel: fue desarrollado por IBM y su primera versión se
lanzó en 1957. Su nombre proviene de la contracción de FORmula TRANslation, y da una
buena indicación del lenguaje que fue, según consta en el primer manual FORTRAN,
proporciona un lenguaje capaz de expresar cualquier problema en función de un cálculo
numérico, en particular aquellos problemas en los que hay involucradas numerosas formas
y muchas variables. Fue diseñado para su uso en aplicaciones científicas y técnicas. Se
caracteriza por su potencia en los cálculos matemáticos pero está limitado en lo relativo al
tratamiento de datos no numéricos, por lo que no resulta adecuado para aplicaciones de
gestión manejo de ficheros, tratamiento de caracteres y edición de informes. Por esta razón
no a sido usado extensamente en el ámbito del microordenador, pero sigue siendo un
lenguaje común en aplicaciones de investigación, ingeniería y educación
1953, Job Backus, un empleado de IBM propuso el desarrollo de un nuevo lenguaje de
programación, el Fortram. Por aquella época, todos los programadores escribían en
ensamblador. Las razones de Backus se basaban en el alto coste del tiempo que dedicaban a
su trabajo los programadores debido en su mayor parte a las grandes dificultades que
acarreaba la escritura de programas en ensamblador. La propuesta de Backus fue aceptada y
en 1954 un equipo empezó a trabajar en el desarrollo de formas bajo en control de IBM. El
objetivo principal del grupo era la producción de un lenguaje que pudiera traducirse de forma
eficaz al lenguaje máquina. Está considerado como el primer lenguaje de alto nivel. Por ser
el primero alcanzo una gran popularidad desde su primera versión en 1957. Se llegó a admitir
que el FORTRAN podía no ser ideal para problemas fuera del área numérica y realmente las
áreas principales de aplicación han sido la resolución de problemas científicos y de
ingeniería. El lenguaje a sido, sin embargo, satisfactoriamente aplicado en otras áreas de
problemas.
La versión original del FORTRAN fue desarrollada para correr en una máquina en
particular (el IBM 704) y fue concebido a la luz de las características de esa máquina. Por

Programación Básica 8
Evolución de los Lenguajes de Programación

tanto algunos de los aspectos del fortram tiene sus orígenes de acuerdo con un ordenador en
particular, y el diseño del lenguaje no es del todo lógico pero refleja lo que podría
convenientemente conseguirse en esa máquina. Esto está en serio contraste con el ALGOL
60, contemporáneo del FORTRAN que es un lenguaje formalmente definido y lógicamente
estructurado.
La importancia del FORTRAN como el primer lenguaje de alto nivel fue el hecho de que
facilito una alternativa al código ensamblador ofreciendo a los programadores un cierto
descanso de la tiranía y minuciosidad impuestas por este último. Desde su introducción ha
evolucionado a través de muchas versiones incluyendo el FORTRAN II, se estandarizo
(FORTRAN IV) y mejoró en 1966 (se aumentó la portabilidad del lenguaje) y nuevamente
en 1977 (Fortram 77) y en 1990 (Fortram 90) es la versión actual. Fue el primer lenguaje
estandarizado por un órgano nacional de estándares (el FORTRAN IV se ha mantenido como
reliquia en forma estándar por el American National StandardsInstitute). El FORTRAN
durante su evolución, ha incorporado numerosas inclusiones, alguna de las cuales tiene por
objeto hacerlo adecuado para cálculos no numéricos, pero su núcleo original ha
permanecido. Incidentalmente el BASIC tiene sus orígenes en el FORTRAN II. Como quiera
que el FORTRAN llevo la primacía como primer lenguaje de ordenador de alto nivel, a pesar
de que posteriormente ha sido aventajado por otros lenguajes más modernos, pude parecer
sorprendente que haya sobrevivido con tanta fuerza. Sin embargo, el número de
programadores que lo han aprendido, la existencia de gran cantidad de software escrita en
este lenguaje y la existencia de muchas librerías de aplicaciones, incluyendo el paquete de
gráficos GINO-F, se combinan para asegurar que el FORTRAN es y continuará siendo
ampliamente utilizado.

Lenguaje Algol (1960)

El ALGOL ("ALGOrithmic
Lenguage") es el primer
lenguaje que fue creado por un
comité internacional. En 1960
se reunieron representantes de
varios países europeos y de
Estados Unidos para crear un
lenguaje destinado a "describir
procesos" mediante
instrucciones de control (iteraciones y alternaciones) de nivel más elevado que las existentes
en las versiones existentes de su predecesor, el FORTRAN.
Permite escribir programas de resolución de problemas en forma limpia y clara, de
fácil lectura. Aunque poco "transportable" (no permite con facilidad que un programa
Programación Básica 9
Evolución de los Lenguajes de Programación

escrito para un tipo de computadora funcione en otro), es de gran importancia conceptual


por cuanto introdujo la "programación estructurada", lo cual influyó en muchos lenguajes
creados posteriormente.
En 1968 se implementó una nueva versión multi-propósito especialmente orientada a la
tercera generación de computadoras que empezaban a copar el mercado. (A diferencia de la
primera versión, ésta resultó muy compleja y, por ello, tuvo poco éxito). En la actualidad
está en desuso salvo excepciones.

Lenguaje Basic (1965)

Diseñado por JG Kemeny y TE Kertz del colegio Dartmouth en Estados Unidos. Fue
concebido como lenguaje interactivo que podría ser de fácil aprendizaje y enseñanza
como resultado de su semejanza con el idioma inglés. Estuvo disponible en 1.965. Existen
diversas versiones disponibles de BASIC, el dialecto conocido como Microsof BASIC ha
sido casi aceptado como un estándar para microordenadores.
El BASIC provee muy pocas estructuras para facilitar al programador la construcción de
programas. Esta es, la razón por la cual el BASIC es tan fácil de aprender (otros lenguajes
tienden a facilitar repertorios más potentes). Es así mismo un factor determinante
característico de los programas en BASIC; tienen que construirse utilizando el mismo
número, corto además, de bloques.
El BASIC posee un abanico de funciones; incluye funciones numéricas ampliamente
comparables a las que tiene una calculadora científica y funciones para el manejo de
caracteres.
El Basic ofrece un reducido repertorio de estructuras de programación a pesar de que al
igual que todos los lenguajes de programación, ofrece al usuario la posibilidad de construir
otras: Es factible describir cualquier calculo en BASIC, pero para escribir programas de
cierta envergadura, tiene definitivamente una serie de restricciones, como consecuencia de
la carencia de unas buenas estructuras de programación.

Lenguaje Cobol (1968)

El deseo de desarrollar un lenguaje de programación que fuera aceptado por cualquier


marca de ordenador, reunió en Estados Unidos, en Mayo de 1959, una comisión
(denominada CODASYL: Conference On Data Systems Languages) integrada por
fabricantes de ordenadores, empresas privadas y representantes del Gobierno, dando lugar
a la creación del lenguaje COBOL (COmmon Business Oriented Language) orientado a
los negocios, llamándose ésta primera versión COBOL-60, por ser éste el año que vio la luz.

Programación Básica 10
Evolución de los Lenguajes de Programación

El COBOL Es un lenguaje para cálculos en el campo de los negocios y proceso de datos


comerciales. El encumbramiento del COBOL en esta área iba en contra de la política del
gobierno de EEUU que requería la adquisición de un compilador COBOL para cada
ordenador comprado con sus fondos. COBOL, estaba en constante evolución gracias a las
sugerencias de los usuarios y expertos dando lugar a las revisiones de 1.961, 1.963 y 1.965.
La primera versión standard nació en 1968, siendo revisada en 1.974, llamadas COBOL
ANSI o COBOL-74, muy extendidas todavía. En la actualidad es COBOL-85 la última
versión revisada del lenguaje COBOL, estando pendiente la de 1.997.
Como lenguaje comercial, el COBOL destaca en el manejo de datos alfanuméricos y
ficheros, de forma que permite la realización de tareas tales como la lectura y actualización
de ficheros de registros y la cumplimentación automática de formularios. Entre sus
inconvenientes se encuentran sus rígidas reglas de formato de escritura, la necesidad de
escribir todos los elementos al máximo detalle, la extensión excesiva de sus sentencias y la
inexistencia de funciones matemática

Lenguaje Pascal (1970)

Fue diseñado por el profesor Hiklaus Wirth del Instituto Federal de Tecnología de
Zurich en 1970. Le puso el nombre de un matemático francés del siglo XVII, Blaise Pascal,
a quien se debe, entre otros descubrimientos, la primera máquina de calcular. El lenguaje fue
implantado por primera vez por su diseñador y posteriormente estuvo disponible para todos
los microordenadores populares.
La razón principal que impulsó a Wirth a desarrollar PASCAL fue el ofrecer un lenguaje
para enseñanza de la programación como disciplina sistematizada, de forma que los
principios de la disciplina estuvieran claramente reflejados por el lenguaje. Se basa en un
lenguaje anterior de programación, el ALGOL 60, conservando todas las características
deseables de este lenguaje, con las aplicaciones y correcciones necesarias. El hecho de que
el PASCAL fuera adoptado ampliamente no solo para la enseñanza de la programación sino
también para el desarrollo de sistemas de microprocesadores y por usuarios de
microordenadores es un indicativo de su éxito y también del éxito de su diseñador al
conseguir su principal propósito. También pretendía que una eficiente y fiable implantación
del lenguaje, pudiera realizarse con cualquier ordenador. En esta área el Pascal no tuvo tanto
éxito. Muchas de sus implantaciones distan mucho de ser compactas necesitando más
memoria que sus implantaciones en BASIC.
El PASCAL provee un amplio repertorio de estructuras de programación y permite definir
tipos de datos según se requieran. Por consiguiente, al programador se le facilitan todas las
características necesarias para dar a sus programas una estructura lógica y se le proporciona
la posibilidad de diseñar sus propias estructuras de datos en caso de que las suplidas por el

Programación Básica 11
Evolución de los Lenguajes de Programación

pascal no satisfagan sus necesidades. De esta manera no se hace necesario recurrir a métodos
artificiales o idiosincrásicos para diseñar programas y manejar datos.
Las normas impuestas por el Pascal, tales, como el requerir del programador cada variable
y decir cómo se utilizará, deben ser consideradas como un beneficio ya que al permitir el
desarrollo de programas en forma sistematizada se evitan automáticamente la mayor parte
de los errores más comunes en programación.

Lenguaje C. (1972)

El lenguaje fue creado en 1972 por Dennis Ritchie, que junto con Ken Thompson había
diseñado anteriormente el sistema operativo UNIX, y su intención al desarrollar el lenguaje
C fue conseguir un lenguaje idóneo para la programación de sistemas que fuese
independiente de la máquina para utilizarlo en la implementación del sistema operativo
UNIX. Desde entonces, tanto el UNIX como el C han tenido un enorme desarrollo y
proliferación, hasta convertirse en un estándar industrial para el desarrollo de software
El C es un lenguaje moderno de propósito general que combina las características de
un lenguaje de alto nivel (programación estructurada, tipos y estructura de datos,
recursividad, etc.) con una serie de características más propias de lenguajes de más bajo
nivel. Esta cualidad del C hace posible que el programador use la programación estructurada
para resolver tareas de bajo nivel, obteniendo un código ejecutable veloz y eficiente.
Debido a sus características de más bajo nivel, mucha gente considera al C como un lenguaje
de nivel medio.
Debido a esta libertad de programación que proporciona este lenguaje, se ha vuelto muy
popular y es el lenguaje más usado entre los desarrolladores profesionales de software de
aplicaciones comerciales (procesamiento de textos, bases de datos, aplicaciones científico-
técnicas, etc.). Además C, es un lenguaje pequeño (posee pocas instrucciones) y conciso (no
presenta instrucciones redundantes).
El coste de un lenguaje tan potente y útil es que no es particularmente fácil de aprender.
De hecho, la programación segura y fiable en este lenguaje requiere un conocimiento
bastante profundo del mismo.
La programación en C se utiliza, entre otras cosas, para el desarrollo de sistemas
operativos. El primer sistema operativo escrito en C fue Unix. Más tarde, otros sistemas
operativos como Linux también fueron escritos en C. Pero C no es sólo el lenguaje de
programación de los sistemas operativos. C es el precursor e inspirador para casi todos los
lenguajes de alto nivel más populares disponibles en la actualidad. De hecho, Perl, PHP,
Python y Ruby están escritos mediante programación en C.

Programación Básica 12
Evolución de los Lenguajes de Programación

¿POR QUÉ APRENDER A PROGRAMAR EN C HOY EN DÍA CUANDO


EXISTEN OTROS LENGUAJES DE MÁS ALTO NIVEL?
Existen ventajas de aprender programación en C antes de C ++ o Java, por ejemplo.
Cuando se trabaja en lenguajes como Java o incluso Python, te inicias inmediatamente
alejándote del aprendizaje de los fundamentos de un lenguaje de programación y comienzas
a aprender librerías y frameworks asociados. Pero con C tienes un par de llamadas a librerías,
y después tienes que mantener la concentración en la semántica del lenguaje, y C a menudo
te obliga a pensar más y más profundo acerca de lo que está realmente sucediendo.

C es un lenguaje de nivel medio. Es el lenguaje de los compiladores, intérpretes, editores,


sistemas operativos y programación embebida. Cuando se aprende programación en C casi
tienes que aprender cómo se ejecutan los programas. Aprendes lo que significan cosas como
registro, pila, mapeado de memoria, etc.
Algunas de las ventajas adicionales de aprender programación en C son:

Simplicidad y velocidad

C es simple, elegante y endiabladamente rápido. Es también compacto y eficiente.


C tiene punteros puros, operadores bit a bit, y las keywords extern, volatile, static, y
register lo que significa que vas a entender más acerca de cómo escribir el código
eficiente que se puede obtener de cualquier lenguaje de alto nivel. La única cosa que te
enseñará estas cosas mejor es un lenguaje de más bajo nivel, pero con los complejos
procesadores modernos no sería recomendable utilizar ensamblador o similar.

La sintaxis de C es la razón por la que los programadores hablan de la “familia C de


lenguajes de programación”, que por lo general incluye lenguajes como C, C ++, Java,
JavaScript, Objective-C y muchos otros.

Disciplina

La programación en C también pasa por ser exigente, fastidiosa, meticulosa y a


veces francamente críptica. Puedes escribir fácilmente código que puede ser difícil de
leer y de mantener. Sin embargo, y esto es un punto clave, no tienes por qué hacerlo.
Aprender a escribir código mantenible en C requerirá disciplina de codificación. En la
mayoría de los lenguajes solucionar errores de sintaxis puede ser trivial. Sin embargo,
encontrar y corregir un punto y coma que falta o sobra en C puede ser a veces una
empresa épica.

Pocas distracciones

Programación Básica 13
Evolución de los Lenguajes de Programación

C no es un lenguaje orientado a objetos por lo que no te distraerás con cosas como


herencia y polimorfismo. No es que estos no sean conceptos importantes, es sólo que
puedes simplificar las cosas un poco, aprendiendo programación procedimental en
primer lugar. De hecho, una vez que has aprendido C, y has escrito un par de programas,
el aprendizaje de C ++ es un paso natural.

Programación embebida

Un argumento final para aprender programación en C está ligado a hacer


programación embebida. Hacer que un ordenador haga lo que quieres puede ser
satisfactorio. Pero cuando integras tu código embebido con un poco de hardware y ves
cómo provoca que ocurran cosas fuera de un ordenador, como por ejemplo mover un
brazo robótico, es una emoción incomparable. Esa emoción sólo ocurre cuando aprendes
programación en C.

¿Dónde se utiliza todavía la programación en C?

Microsoft Windows

El kernel de Microsoft Windows se desarrolla principalmente en C, con algunas partes en


lenguaje ensamblador. Durante décadas, el sistema operativo más utilizado del mundo, con
aproximadamente el 90 por ciento de la cuota de mercado, ha sido impulsado por un núcleo
escrito en C.

Linux

Como ya hemos dicho Linux también está escrito principalmente en C, con algunas
partes, al igual que windows, en ensamblador. Alrededor del 97 por ciento de los 500
superordenadores más potentes del mundo corren el núcleo de Linux. También se utiliza en
muchos ordenadores personales.

Mac

Los ordenadores Mac también son soportados por una programación en C. El núcleo
OS X está escrito principalmente en C y cada programa y driver en un Mac, igual que en
Windows y Linux, se ejecuta con un kernel C.

Móvil

Los kernels de iOS, Android y Windows Phone también están escritos en C. En realidad
son sólo adaptaciones móviles de los kernels existentes en Mac OS, Linux y Windows. Así
que los teléfonos inteligentes que utilizamos todos los días se están ejecutando en un núcleo
con programación en C.

Programación Básica 14
Evolución de los Lenguajes de Programación

Bases de datos

Las bases de datos más populares del mundo, incluyendo bases de datos Oracle,
MySQL, MS SQL Server y PostgreSQL, están codificados en C (los primeros tres de
ellos en realidad tanto en C como C ++). Las bases de datos se utilizan en todo tipo de
sistemas: financieros, gubernamentales, en medios de comunicación, entretenimiento,
telecomunicaciones, salud, educación, comercio minorista, redes sociales, web, y similares.

Películas 3D

Las películas en 3D son creadas con aplicaciones que generalmente están escritas en C y
C ++. Esas aplicaciones tienen que ser muy eficientes y rápidas, ya que manejan una gran
cantidad de datos y hacen muchos cálculos por segundo. Cuanto más eficientes son, menos
tiempo toma a los responsables de crearlas para generar los fotogramas de las películas. Y
eso no solo es tiempo sino también mucho dinero ahorrado.

Programación Básica 15
Evolución de los Lenguajes de Programación

Programación Básica 16
Evolución de los Lenguajes de Programación

Programación Básica 17

You might also like