Aunque en el cuarto día se debería a empezar a picar algo de código, sobre todo sabiendo ya las instrucciones que usaremos, hoy nos vamos a centrar en un asunto que nos va a interesar a medio plazo tenerlo definido: el idioma de programación. Este concepto está muy poco documentado, por lo que voy a presentarlo por alto. De todas formas, lo que define existe y se usa, aunque en cada lenguaje de programación (ensamblador, c, java, etc) es diferente... veremos que será mejor mantenerlo siempre definido de la misma forma para avanzar más rápido y lograr mucha estandarización.
"
Un Idioma de programación es un conjunto de símbolos y reglas sintácticas y semánticas que definen las estructuras y el significado de los símbolos y expresiones de un lenguaje de programación" dice la
documentación oficial del
Proyecto eWa. De una forma más técnica, un
idioma de programación define cómo se debe de dividir un
código fuente en porciones menores conocidas. Existen dos tipos de reglas para conseguirlo.
Las primeras son las reglas sintácticas tratan de definir, cuando escribamos el código fuente, qué estructura será cada cosa: las funciones creo que quedan muy bien si están entre paréntesis ({...}); las cadenas de texto entre comillas dobles o simples ("..." o '...'); los comentarios entre los signos habituales de alto nivel (//, /* y */) y para las prioridades los paréntesis ((...)). En el apartado de reglas sintácticas, está también la definición de cosas como: el separador de instrucciones, que usaremos el punto y coma (;); o el separador de argumentos, que usaremos la coma (,); y para el tipado, ya que vamos a declarar con este idioma siempre lenguajes orientados a objetos, usaremos los dos puntos (:). Por último vamos a necesitar que nuestro idioma tenga en cuenta la almohadilla (#) y la barra de escape (\) que se usarán respectivamente para presentar estructuras y permitir la escritura de caracteres no disponibles en nuestro teclado.
Por otra parte, el idioma de programación también incluye reglas semánticas, que nos indicará los operadores que se podrán declarar y usar en las instrucciones que se generen tras el paso anterior: en el caso que nos toca, tendremos disponibles combinaciones con los siguientes símbolos: + - * / . = ~ % · | & < > ? ! [ ] ¬ ¿ ¡ ´ ` ^, siempre y cuando las combinaciones que empiecen por (//, /* y */) no se usen, ya que están reservados por la definición sintáctica. Nótese que el espacio ( ) no es un operador, por lo que los operadores no podrán contener espacios en medio. Pero veremos más adelante cómo se pueden agrupar varios operadores para, por ejemplo, crear funciones del tipo variable[valor] que se conviertan en funcion(variable, valor) y demás.
Con esta definición tan básica y tan cómoda para programadores de lenguajes de alto nivel (como c++ o ActionScript), intentaremos que todos nuestros códigos fuente conserven esta definición.