1. Clasificación de lenguajes
de programación
Un lenguaje de programación es un lenguaje inventado para controlar
una máquina, (normalmente, un ordenador).
Hay muchísimos, de toda clase de tipos y características, inventados
para facilitar el abordaje de distintos problemas, el mantenimiento
del software, su reutilización, mejorar la productividad, etc.
Los lenguajes de programación se pueden clasificar según varios
criterios. He encontrado doce en total:
1.-Nivel de abstracción, 2.-
Propósito, 3.-Evolución histórica,
4.-Manera de ejecutarse, 5.-Manera de abordar
la tarea a realizar, 6.-Paradigma de programación, 7.- Lugar
de ejecución, 8.-Concurrencia, 9.-
Interactividad, 10.-Realización
visual, 11.-Determinismo 12.-
Productividad.
2. Lenguajes Se realiza teniendo muy en cuenta
de bajo las características del procesador.
nivel: Ejemplo: Lenguajes ensamblador.
Puede realizar operaciones
1. Nivel de Lenguajes lógicas y de desplazamiento con
abstracció de nivel bits, tratar todos los tipos de
n. medio datos como lo que son en
realidad a bajo nivel
(números), etc.
Manejan conceptos, tipos de
datos, etc., de una manera
Lenguajes cercana al pensamiento humano
de alto ignorando (abstrayéndose) del
nivel funcionamiento de la máquina.
3. Lenguajes de
propósito ge Aptos para todo tipo de tareas:
neral: Ejemplo: C
Hechos para un objetivo muy
Lenguajes de
concreto. Ejemplo: Csound (
propósito
para crear ficheros de audio).
2. Propósito
específico:
Lenguajes
Diseñados para realizar sistemas
de programa
operativos o drivers. Ejemplo: C.
ción de
sistemas
Para realizar tareas varias de
Lenguajes control y auxiliares llamados
de script: lenguajes de procesamiento
4. Lenguajes
de primera Código máquina.
generación
(1GL)
Lenguajes
de segunda Lenguajes ensamblador.
generación
(2GL)
3.
Evolución Lenguajes La mayoría de los lenguajes
histórica. de tercera modernos, Ejemplos:
generación C, Java.
(3GL):
Lenguajes Diseñados con un propósito
de cuarta concreto, o sea, para
generación abordar un tipo concreto de
(4GL) problemas.
Que el programador
Lenguajes establezca el qué problema
de quinta ha de ser resuelto y las
generación condiciones a reunir, y la
(5GL) máquina lo resuelve.
5. Un programa traductor
Lenguajes traduce el código del
compilados: programa (código fuente) en
4. Manera código máquina (código
de objeto).
ejecutarse.
Un programa
Lenguajes (intérprete), ejecuta las
interpretados instrucciones del programa
de manera directa.
Lenguajes Indican cómo hay que hacer
imperativos la tarea, es decir, expresan los
pasos a realizar.
5. Manera
de abordar
la tarea a
realizar.
Lenguajes
declarativos Indican qué hay que hacer.
6. Lenguajes de programación procedural:
Divide el problema en partes más
pequeñas, que serán realizadas por
subprogramas
(subrutinas, funciones, procedimientos), que
se llaman unas a otras para ser ejecutadas.
Ejemplos: C, Pascal.
Es el estilo
de Lenguajes de programación orientada a
programació objetos: Crean un sistema de clases y objetos
n empleado. siguiendo el ejemplo del mundo real, en el que
6. Paradigma Algunos unos objetos realizan acciones y se comunican
de lenguajes con otros objetos. Ejemplos: C++, Java.
programación. soportan
varios Lenguajes de programación funcional: La
paradigmas, tarea se realiza evaluando funciones, (como en
y otros sólo Matemáticas), de manera recursiva. Ejemplo:
uno. Lisp.
Lenguajes de programación lógica:
La tarea a realizar se expresa empleando lógica
formal matemática. Expresa qué computar.
Ejemplo: Prolog.
7. Se ejecutan en el servidor.
Lenguajes Ejemplo: PHP es el más
de servidor utilizado en servidores web.
7. Lugar de
ejecución.
Se ejecutan en el cliente.
Lenguajes Ejemplo: Java Script en
de cliente navegadores web.
Lenguajes concurrentes. Ejemplo: Ada.
8.
Concurrencia.
Lenguajes no concurrentes. Ejemplo: C.
8. El flujo del programa es
Lenguajes controlado por la interacción con
orientados el usuario o por mensajes de otros
a sucesos programas/sistema operativo
9.
Interactividad
Lenguajes
El flujo del programa no depende
no
de sucesos exteriores, sino que se
orientados
conoce de antemano,
a sucesos
Lenguajes El programa se realiza moviendo
de progra bloques de construcción de
mación programas (objetos visuales) en
10. visual un interfaz adecuado para ello
Realización
visual.
Lenguajes
de progra El código del programa se realiza
mación escribiéndolo. Ejemplos:
textual C, Java, Lisp.
9. Lenguajes d Ejemplos: Todos los anteriores.
eterministas
11.
Determinismo Sirven para explorar grandes
espacios de búsqueda, (como
Lenguajes prob gramáticas), y en la investigación
abilísticos o no teórica de hipercomputación.
deterministas Ejemplo: mutt (generador de
texto aleatorio).
Sus virtudes en cuanto a
eficiencia, sencillez, claridad, pr
Lenguajes útile oductividad, etc., motiva que
s o productivos sean utilizados en
empresas, administraciones
12. públicas y/o en la enseñanza.
Productividad Inventados con la intención de
ser los más
Lenguajes esoté raros, oscuros, difíciles, simples
ricos o exóticos y/o retorcidos de los
lenguajes, para diversión y
entretenimiento de frikis
programadores.