Herramientas de usuario

Herramientas del sitio


es:manual:ssl

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
es:manual:ssl [2021/06/16 15:11] – [Aspectos sintácticos] rootes:manual:ssl [2021/07/07 17:46] (actual) – [Aspectos semánticos] root
Línea 34: Línea 34:
     round       round  
  
-a las que hay que añadir los identificadores predefinidos.+a las que hay que añadir los identificadores predefinidos. Actualmente no todas las sentencias correspondientes a algunas de estas palabras reservadas están implementadas, algunas están simplemente reservadas para futuros usos.
  
 === Identificadores === === Identificadores ===
Línea 40: Línea 40:
  
     * ''answer''. contiene el texto de la respuesta del alumno. En caso de que la respuesta del alumno sea múltiple la variable ''answer'' contiene una matriz que puede accederse como ''answer[0]'', ''answer[1]'', etc. En ese caso la variable ''answer'' sigue conservando la matriz completa.     * ''answer''. contiene el texto de la respuesta del alumno. En caso de que la respuesta del alumno sea múltiple la variable ''answer'' contiene una matriz que puede accederse como ''answer[0]'', ''answer[1]'', etc. En ese caso la variable ''answer'' sigue conservando la matriz completa.
 +    * ''respuesta'', contiene exactamente lo mismo que la anterior, para poder escribir el código en español.
  
 === Operadores === === Operadores ===
Línea 90: Línea 91:
  
 === Expresiones === === Expresiones ===
-Son prácticamente las mismas que en Javascript, añadiendole el operador elvis. Las variables pueden ser variables simples o matrices de una sola dimensión, en cuyo caso pueden estar indexadas por una expresión.+Son prácticamente las mismas que en Javascript, añadiendole el [[wp>Elvis_operator|operador elvis]]. Las variables pueden ser variables simples o matrices de una sola dimensión, en cuyo caso pueden estar indexadas por una expresión.
  
 <code> <code>
Línea 112: Línea 113:
  
 var: IDENTIFICADOR var: IDENTIFICADOR
-   | IDENTIFICADOR '[' exp ']' 
    ;    ;
 </code> </code>
Línea 192: Línea 192:
 </code> </code>
  
 +
 +=== Sentencia print ===
 +<code>
 +sentPrint: 'print' '(' exp ')' 
 +         ;
 </code> </code>
  
 +=== Arrays ===
 +Pueden definirse arrays unidimensionales son la siguiente sintaxis:
  
-=== Sentencia for === 
 <code> <code>
-sentPrint: 'print' '(exp  ')' ';' +asigvar '=' '{listaExp '}' 
-       ; +    ;  
 +listaExp: listaExp ',' exp 
 +        | exp 
 +        ;
 </code> </code>
  
 +y acceder a sus elementos mediante:
 +
 +<code>
 +var: IDENTIFICADOR '[' exp ']'
 +   ;
 +</code>
  
  
 ==== Aspectos semánticos ==== ==== Aspectos semánticos ====
 +
 +El lenguaje no tiene tipos. Cuando se realiza una operación SSL intenta acomodar la semántica de la operación a un posible tipo que infiere de sus operadores. Así por ejemplo, la operación ''x=2+2'', tendrá como resultado ''x=4'' pero la operación ''x='a'+'b''' tendrá como resultado ''x='ab'''.
 +
 +Las operaciones entre números se hacen siempre considerando que los operadores son números reales.
 +
  
es/manual/ssl.1623856272.txt.gz · Última modificación: 2021/06/16 15:11 por root

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki