Idioma eWa
Un Idioma de programación es un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus símbolos y expresiones. Es utilizado para controlar el comportamiento físico y lógico de una máquina.
En el caso particular del Idioma eWa, es el conjunto que caracteriza a los Lenguajes de Programación eWa como son el Lenguaje eWamblador, el Lenguaje eWa, y el Lenguaje eWa++. Estas características generalmente se usan tanto para desarrollar los lenguajes como las Soluciones Informáticas.
Sumario
Símbolos del Idioma eWa
El Idioma eWa reserva unos pocos caracteres básicos o pares de caracteres básicos para detectar sus estructuras.
# ( ) { } " ' /* */ // , ; : \
#
La almohadilla (#) está reservada para comunicarse con el compilador. Las líneas que comienzan con la almohadilla permiten realizar llamadas a Instrucciones del Compilador de Idioma eWa.
( )
Los paréntesis (()) se reservan para forzar prioridades entre los parámetros de una expresión, de una forma análoga a su uso en las matemáticas.
{ }
Las llaves ({}) se reservan para generar funciones temporales como conjunto de cero o más instrucciones. Su estructura es, en la definición de estructuras del Compilador de Idioma eWa, #FUNCTION.
" y '
Las comillas dobles (") se reservan para abrir y cerrar cadena de literales. La comilla simple (') se reserva para abrir y cerrar cadenas de literales también.
Obviamente, si se abre con un tipo de comilla, no se puede cerrar con el otro. Dentro de las cadenas solo se permiten literales, es decir, en primera mano todo son literales aunque pueden ser interpretados más adalente. Su estructura es, en la definición de estructuras del Compilador de Idioma eWa, #STRING.
// y /*... ...*/
La doble barra (//) se reserva para comentar desde ella hasta el final de la línea (salto de línea o \n). La barra asterisco (/*) se reserva para comentar hasta el siguiente asterisco barra (*/) independientemente de los caracteres que se encuentren entre ellos. Es necesario siempre cerrar los bloques de comentarios de este segundo tipo. Permite, además, cerrar y abrir en función del número de asteriscos que tenga al abrir, siendo más prioritario cuanto más asteriscos tenga. Unos ejemplos de comentarios ayuda a aclarar las cosas:
// este es un comentario de línea que terminará después de este salto de línea /* este bloque / no ha terminado todavía, termina tras esto */ /* este otro bloque terminará con un exceso de asteriscos, // y no ahora, algo que no es nada recomedable. Se recomienda terminar con el número de asteriscos que sean necesarios para terminar. *****/ // Eso sería poco recomendable /*** aquí comienza un código que espera tres-asteriscos barra para finalizar. si pongo */ no va a cerrar. Tampoco si pongo ** */ o si pongo **/ o, cualquier cosa que no sea ***/ /***** al poner barra cinco-asteriscos, si tuviera otro bloque de tres antes /*** Este bloque estaba antes ***/ lo podría englobar junto con más comentarios que estuvieran antes sin preocuparme que se me cierre el bloque en un sitio que no controle. Si ese bloque existente cerrara con exceso de asteriscos, se fastiaría el invento: habría que abrir con más. Por eso abrimos con cinco asteriscos, /** Este bloque estaba antes ****/ ya que había un bloque que cerraba con cuatro-asteriscos barra. *****/ // fin de los comentarios
,
La coma (,) se reserva para separar argumentos. Se diferencia de un simple espacio ( ) ya que gracias a la coma se pueden crear los argumentos vacíos; mientras que, por ejemplo, si se ponen dos espacios seguidos, no se genera un argumento vacío. Junto con el espacio, su estructura es, en la definición de estructuras del Compilador de Idioma eWa, #ARGUMENT.
;
El punto y coma (;) se reserva para separar instrucciones. Cabe destacar que si se encuentra entre pares de símbolos (por ejemplo los paréntesis, las llaves, o las comillas tanto dobles como simples) se comportará exactamente igual que una coma (,).
Por ejemplo, en el bucle for, se pueden usar algunas de estas sintáxis:
for( i = 0, i < longitud, i++ ){ ... } for( i = 0; i < longitud, i++ ){ ... } for( i = 0, i < longitud; i++ ){ ... } for( i = 0; i < longitud; i++ ){ ... }
:
Los dos puntos (:) se reservan para trabajar con los Objetos (clase, tipo de dato...) estructurados. Su estructura es, en la definición de estructuras del Compilador de Idioma eWa, #OBJECT.
\
La barra de escape se reserva para escapar caracteres no imprimibles directamente por los teclados.
Números
Los números son detectados por el Idioma eWa como enteros sin signo. Se pueden encontrar en diferentes bases: la decimal (1000 o 0d1000), hexadecimal (0x3E8) o binaria (0b1111101000 o 10B01000). El número en base decimal que está delante de la letra de la base indica el tamaño en número de bits (salvo si es 0 o no existe, en cuyo caso se toma como si fuera el tamaño de lo que has escrito después de la letra), siendo rellenado por 0s binarios si la letra está en minúscula y por 1s binarios si está en mayúscula. Su estructura es, en la definición de estructuras del Compilador de Idioma eWa, #UINT.
Operadores del Idioma eWa
El Idioma eWa tiene reservados los siguientes caracteres básicos para funcionar como operadores:
+ - * / . = ¬ ~ % · | & < > ¿ ? ¡ ! ^ ´ ` [ ]
La única restricción que existe es con el operador barra (/) que no se puede concatenar con él mismo (//) ni con el asterisco (*) delante (/*) ni detrás (*/), ya que esos resultados son símbolos del Idioma eWa reservado. Cualquier otra combinación está permitida.