Idioma eWa

De Wiki~eWa
Ir a la navegaciónIr a la búsqueda

El Idioma eWa es un Idioma de programación.

Bajo este idioma, se forma la familia de Lenguajes de Programación eWa: 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.

Resaltador de sintaxis

Véase también: Idioma

Símbolos del Idioma eWa

El Idioma eWa reserva unos pocos caracteres básicos para detectar sus estructuras.

# ( ) { } " ' , ; : \

#

La almohadilla (#) está reservada para comunicarse con el compilador, y el intérprete o ensamblador. Las líneas que comienzan con la almohadilla permiten realizar llamadas a Instrucciones del Compilador de Idioma eWa y llamadas Primitivas.

( )

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.

" "

Las comillas dobles (") se reservan para abrir y cerrar cadena de literales.

Se abre con una comilla doble y se cierra con otra comilla doble. Dentro de las cadenas solo se permiten literales, es decir, en primera mano todo son literales aunque pueden ser interpretados más adelante. Su estructura es, en la definición de estructuras del Compilador de Idioma eWa, #STRING.

' y '*... ...*'

La comilla simple (') se reserva para comentar desde ella hasta el final de la línea (salto de línea o \n). La comilla simple + asterisco ('*) se reserva para comentar hasta el siguiente asterisco + comilla simple (*') 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 no terminará con un exceso de asteriscos, ' y no ahora,
aunque es algo no recomendable. Se recomienda terminar con el número de asteriscos
que sean necesarios para terminar y no hacer más: *****' 'Eso sería poco recomendable *'
'*** aquí comienza un código que espera tres-asteriscos + comilla para finalizar.
si pongo *' no va a cerrar. Tampoco si pongo ** *' o si pongo **' o, cualquier cosa
que no sea ***'
'*****
 al poner comilla + 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 fastidiarí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 + comilla.
*****'
' 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 (,), salvo en caso de aparecer los dos, en cuyo caso, creará una matriz de argumentos: primero lo separado por ; y por cada uno de esos, argumentos separados por ,.

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++ ){ ... } // esto no es válido porque los argumentos no son funciones.
for( i = 0; i < longitud, i++ ){ ... } // esto no es válido porque combina separadores , y ;.
for( i = 0, i < longitud; i++ ){ ... } // esto no es válido porque combina separadores , y ;.
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:

+ - * / . = ~ % · | & < > ? ! [ ] ¬ ¿ ¡ ´ ` ^ º ª

Continúe leyendo: Operadores

Véase también: Operadores Estándares

A partir de combinaciones de ellos, se declaran los operadores estándares del Proyecto eWa que son los mismos en los diferentes Lenguajes de Programación eWa. Aunque algunos son alias de funciones literales (por ejemplo el operador "a + b" representa a la función "suma(a,b)") que facilitan la programación anidada, sobretodo para la realización de operaciones matemáticas; existen operadores que implementan procedimientos puros de forma nativa.