Lenguajes de alto nivel de creación de programas que son más fáciles para un ser humano de descifrar, a diferencia de lenguajes de bajo nivel , que una máquina puede ejecutar más fácilmente. Se pueden clasificar por paradigmas , es decir , las clasificaciones de abstracciones utilizadas para comprender la estructura de control de la lengua . Los lenguajes de programación no " descienden " de otras lenguas. Sin embargo, los diseñadores del lenguaje prestado conceptos y la sintaxis de otras lenguas . Esto hace que los nuevos idiomas fácil de aprender una vez que haya dominado el paradigma básico . Idioma Typing
El enfoque para escribir el idioma varía según el idioma. Typing se refiere a la clasificación de datos como un tipo , y si es o no un tipo de datos puede ser tratada como otro tipo de datos de un programa . Por ejemplo , cualquier número , carácter alfanumérico o verdadero /falso valor está representado por un valor binario . Por lo tanto , sin necesidad de escribir , usted podría hacer una expresión legal que calcula el valor del símbolo "!" dividido por 2 . Los lenguajes con tipos prevenir esto, y lenguajes de tipo estático de prueba antes de escribir el programa se ejecuta , por lo general cuando se compila .
Compilado y lenguajes interpretados
Compilar un lenguaje lo convierte en máquina de código , y compilado idiomas están diseñados para ser ejecutado de tal manera . Por el contrario , un lenguaje interpretado porque se ejecuta un programa intérprete analiza la sintaxis del lenguaje y sigue las órdenes lógicas que encuentra , sin necesidad de compilar de antemano . La distinción entre lenguajes compilados e interpretados es principalmente una cuestión de la preferencia del diseñador del lenguaje - en teoría, cualquier lenguaje puede ser ya sea compilado o interpretado. Los lenguajes interpretados también son llamados " lenguajes de script . " C + +, dialectos más básicos y Common Lisp son lenguajes compilados . Perl y Python son lenguajes interpretados . Java combina ambos paradigmas compilados e interpretados , en el que el código normal de Java se compila en bytecode de Java , que es interpretado por la máquina virtual Java.
Declarativa vs Imperativo
Los lenguajes de programación
puede encarnar paradigmas declarativas o imperativas : impulsado por la lógica computacional o flujo de control. Idiomas diseñados con el paradigma declarativo especifican qué máquina debe cumplir, sin que necesariamente se indica cómo debe hacerse. Incluyen lenguajes dedicados a un dominio de problema específico , como HTML y lenguajes de programación funcional sin un estado persistente , como Lisp. El paradigma imperativo , por el contrario , trata de un programa como una serie de comandos que cambian el estado del programa . Idiomas de procedimiento , tales como C son lenguajes imperativos , y estructurado , como Java , utilice el estilo imperativo . Algunos idiomas , como las que se encuentran en un archivo MAKE utilizados para crear programas , utilizan los dos estilos declarativas e imperativas .
Estructurado y Orientado a Objetos
Una clase especial de lenguajes imperativos , lenguajes estructurados lógica del programa se dividen en subsecciones separadas para reducir el " código espagueti ", o saltos de lógica al azar a lo difícil de seguir las partes del programa . El enfoque estructurado convirtió solidificado por la programación orientada a objetos, que dividió a los fragmentos de código en clases y métodos. Java y C + + son lenguajes de programación orientados a objetos.
Metaprogramación
" Metaprogramación " se refiere a los programas que actúan sobre otros programas. Algunos idiomas se diseñan específicamente para metaprogramming . El idioma Marca , por ejemplo, es un lenguaje de programación sencillo que compila y ejecuta programas escritos en lenguajes compilados como C, C + + y Python también presentan características metaprogramación .