Diferencia entre revisiones de «Instrucciones del Compilador eWa de Idioma eWa»

De Wiki~eWa
Ir a la navegaciónIr a la búsqueda
Línea 11: Línea 11:
 
Otro beneficio directo consiste en que varias [[soluciones informáticas]] pueden hacer uso de código escrito para otro compilador usando el mismo [[Idioma]], lo que garantiza la portabilidad. De igual forma, se pueden usar [[compilador]]es específicos para trabajar con y otros más genéricos o [[estándares]] para hacer más eficaz la [[Solución Informática]].
 
Otro beneficio directo consiste en que varias [[soluciones informáticas]] pueden hacer uso de código escrito para otro compilador usando el mismo [[Idioma]], lo que garantiza la portabilidad. De igual forma, se pueden usar [[compilador]]es específicos para trabajar con y otros más genéricos o [[estándares]] para hacer más eficaz la [[Solución Informática]].
  
== Definiciones ==
+
== Expresiones ==
  
La sintaxis de las [[Instrucciones del Compilador de Idioma eWa]] se define como '''expresiones que empiezan por el símbolo almohadilla (''#'')'''. El conjunto de '''Instrucciones del Compilador de Idioma eWa''' tienen '''expresiones''' que, nativamente en Español, permiten realizar las distintas tareas de creación de los '''objetos''' (tipos de datos), de la declaración de '''instancias''' (variables ) y '''funciones''', además de reservar y liberar de '''recursos de bajo nivel'''. Los [[dialectos]] traducen a otros idiomas o completan este conjunto, pero sin alterar eliminar la funcionalidad nativa.
+
La sintaxis de las [[Instrucciones del Compilador de Idioma eWa]] se define como '''expresiones que empiezan por el símbolo almohadilla (''#'')'''. El conjunto de '''Instrucciones del Compilador de Idioma eWa''' tienen '''expresiones''' que, nativamente en Español, permiten realizar las distintas tareas de creación de '''estructuras''': los '''objetos''' (tipos de datos), de la declaración de '''instancias''' (variables ) y '''funciones''', además de reservar y liberar de '''recursos de bajo nivel'''. Los [[dialectos]] traducen a otros idiomas o completan este conjunto, pero sin alterar eliminar la funcionalidad nativa.
  
 
=== Reservar recursos ===
 
=== Reservar recursos ===

Revisión del 16:59 28 may 2009

Las Instrucciones del Compilador de Idioma eWa son un conjunto de instrucciones disponibles en cualquier lenguaje que implemente el Idioma eWa: Lenguaje eWamblador, Lenguaje eWa o Lenguaje eWa++. Se usan para concretar las estructuras primitivas.

Aparición

Por sí solo, el Idioma eWa no contiene prácticamente ninguna estructura definida. Sólo detecta instrucciones, funciones, argumentos, comentarios, cadenas de literales, caracteres escapados, números naturales de precisión infinita, prioridades; y, por suerte, las Instrucciones del Compilador. Aunque la lista anterior es muy jugosa, en realidad no da juego alguno para la creación de soluciones informáticas. Es necesario, al menos, el uso de algunas de estas instrucciones.

Por qué no están incluidas en el Idioma

El hecho de que las instrucciones del Compilador estén fuera de la definición del Idioma eWa lo convierten en un Idioma de programación realmente modular. La capacidad que tiene de transformarse es realmente útil. De esta manera, es posible utilizar el mismo Idioma (el eWa) para un mismo entorno de programación y a la vez usar diferentes compiladores que, por poder, pueden tener diferentes, más o menos, Instrucciones del Compilador.

Otro beneficio directo consiste en que varias soluciones informáticas pueden hacer uso de código escrito para otro compilador usando el mismo Idioma, lo que garantiza la portabilidad. De igual forma, se pueden usar compiladores específicos para trabajar con y otros más genéricos o estándares para hacer más eficaz la Solución Informática.

Expresiones

La sintaxis de las Instrucciones del Compilador de Idioma eWa se define como expresiones que empiezan por el símbolo almohadilla (#). El conjunto de Instrucciones del Compilador de Idioma eWa tienen expresiones que, nativamente en Español, permiten realizar las distintas tareas de creación de estructuras: los objetos (tipos de datos), de la declaración de instancias (variables ) y funciones, además de reservar y liberar de recursos de bajo nivel. Los dialectos traducen a otros idiomas o completan este conjunto, pero sin alterar eliminar la funcionalidad nativa.

Reservar recursos

La expresión reservar, que se puede asemejar a la de declarar variables de los lenguajes de más alto nivel, es realmente útil no solo para crear alias de recursos, si no para verificar las colisiones de reservas: si se reserva un recurso y luego se vuelve a reservar otro sin haberlo liberado anteriormente, el eWamblador dará un aviso. Las librerías estándares suelen incorporar condicionales para revisar si estos recursos están o no reservados, tanto con ese nombre como con otro.

#reservar alias recurso
#reservar espacioA bus[0x01.00]0xFF // esto creará un alias llamado espacioA que reservará
                                    // 0xFF direcciones desde la 0x1.00 del Bus
#reservar espacioB bus[]0xFF   // esto creará un alias llamado espacioB que reservará
                               // 0xFF direcciones (bits) desde un sitio libre

#reservar espacioC witQ[1]  // esto creará un alias llamado espacioC que reservará
                            // los 8 bits de la página 1 del puntero Q

Liberar recursos

La expresión liberar se usa para liberar recursos, pero sin eliminar el alias.

#liberar alias
#liberar espacioA // esto liberará el recurso espacioA
#liberar espacioB // esto liberará el recurso espacioB

Crear alias

La expresión alias se usa para declarar alias pero sin reservar los recursos que usa. Es útil para utilizarse en entornos compartidos seguros monoprogramados en donde no es necesario andarse preocupando de la modificación de recursos o se desea compartir. Por ejemplo es muy útil para crear alias de los CUWs o posiciones concretas del Sistema Informático.

#alias alias recurso
#alias espacioA [0x01.00]0xFF // esto creará un alias llamado espacioA de
                              // 0xFF direcciones desde la 0x1.00 del Bus

#alias espacioB witQ[]0xFF // esto creará un alias llamado espacioB de
                           // 0xFF direcciones desde la 0x1.00 del Bus