Lenguajes informáticos
Valoramos el conocimiento y expresión en una lengua, a admiramos a los que dominan varias (políglotas), a la vez que descuidamos otras maneras de comunicarnos con los actualmente ubicuos ordenadores digitales...
Los lenguajes informáticos son lenguajes formales que constan de caracteres (letras, números y signos de puntuación) y sirven para interactuar con un ordenador.
A diferencia de las lenguas naturales (castellano, inglés etc.), han de escribirse siguiendo una lógica muy rígida, lo que a menudo requiere ponerse en el lugar de la máquina.
Son, entre muchos otros:
- Archivos de configuración
- Lenguajes de marcado, a veces orientados a la impresión
- Lenguajes de programación
- Lenguajes para interactuar con bases de datos
- Lenguajes de intercambio de información, entre los que destaca JSON (JavaScrip Object Notation)
Un ejemplo
A continuación pondré un sencillo ejemplo. Inventaré un lenguaje de marcado específico para escribir novelas en el que los títulos de los capítulos se marcan
precediéndolos de almohadilla + espacio (como en MarkDown), y los párrafos se separan mediante líneas en blanco (como en TeX/LaTex):
Diciendo estas y otras razones, despedí a mi candidato, prometiéndole las más eficaces recomendaciones. # El castellano viejo Ya en mi edad pocas veces gusto de alterar el orden que en mi manera de vivir tengo hace tiempo establecido, y fundo esta repugnancia en que no he abandonado mis lares ni un solo día para quebrantar mi sistema, sin que haya sucedido el arrepentimiento más sincero al desvanecimiento de mis engañadas esperanzas. Un resto, con todo eso, del antiguo ceremonial ...
Características
- constan de sintaxis y semántica: carecen de morfología y de fonética
- comentarios: casi todos permiten escribir comentarios, los cuáles no afectan a cómo se procesa; suelen ir o a continuación de algún caracter o secuencia de caracteres o entre dos secuencis de caracteres, en cada lenguaje de programación potencialmente distintas.
- signos de puntuación: determinan fuertemente el significado y condicionan la interpretación, mientras que en una lengua natural su omisión no generaría ambigüedades insuperables.
Bien formado frente a validado
Bien formado significa sin errores sintácticos, mientras que validado
viene de validar, que significa comprobar que sigue un esquema.
Por ejemplo la oración La lluvia entraba a raudales por las ventanas abiertas
está mal formada porque no cumple la regla (sintáctica) de que el sujeto ha de concordar con el verbo en número. La oración La lluvia votó a favor de su partido
es inválida porque incumple la regla semática de que el sujeto de votar
debe ser un ente dotado de derechos políticos y la lluvia no lo es. Podrá objetarse que más que de una regla de semántica formal la invalidez de esta última frase tiene que ver con el sentido común y que resulta obvio que la frase chirría. Ahora bien, en los lenguajes informáticos y en general cuanto más artificial es un lenguaje más peso adquiere la semántica formal y la validación
que permite hacer de las concatenaciones de signos.
Veamos un ejemplo en un lenguaje castellano inventado:
si (llueve) hay goteras; el lechero se retrasa;
El autor ha sangrado la segunda y tercera línea pensando que se cumplen si la condición se cumple. Supongamos además que lo correcto hubiese sido rodear la consecuencia entre llaves cuando hay más de una.
si (llueve)
{
hay goteras;
el lechero se retrasa;
}
Entonces la máquina en realidad interpreta:
si (llueve)
{
hay goteras;
}
el lechero se retrasa;
Es decir, que llueva o no, le lechero se retrasa. Se ha cometido un error de semántica pues queríamos decir que se retrasa cuando llueve, no siempre.