miércoles, 3 de junio de 2015

Bitácora día 2: 03-06-2015

Gramática BNF de JHaSIC

<programa_jhasic>  ⇒  empezar <main> terminar
<main>  ⇒  <instrucción>|<instrucción><main>
<instrucción>  ⇒   <while_si>|<if_si>|<op>|<assign>|<mostrar_si>
<assign>  ⇒  <string>(<entero>)|s.<string>(<string>)
<string>  ⇒  <char>|<char><string>
<char>  ⇒  a|b|c|d|e|f|...|z| |
<entero>  ⇒  0|1|2|3|4|5|6|7|8|9|<entero><entero>

<mostrar_si>  ⇒  (mostrar(muestra))
<muestra>  ⇒  <string>|<string>+<muestra>|s.<string>|s.<string>+<muestra>

<while_si>  ⇒  (mientras(<condición>))<main> fin
<condición>  ⇒  <string><signo><entero>|<string><signo><string>

<signo>  ⇒ >|<|>>|>>|!!|==

<op>  ⇒  <op>+<expr>|<op>-<expr>|<expr>
<expr>  ⇒  <expr>*<term>|<expr>/<term>|<term>
<term>  ⇒  (<op>)|<string>|<entero>

<if_si>  ⇒  (si(condicion))<main>fin|(si(condicion))<main>sino<main>fin

Bitácora día 1 : 02-06-2015

Creación del lenguaje JHaSIC

Hoy conformamos el equipo definitivo de trabajo y seleccionamos el nombre del lenguaje dentro de un grupo de ideas: JaBA, VaSic, JaSic o VaBa.
Ya que nuestro lenguaje se basará en Java y Basic sacamos silabas de estos para conformar un nuevo nombre en nuestra lluvia de ideas.
Finalmente de todas estas ideas, determinamos que el nombre quedaría en JaSic pero con una leve modificación para que se pudiera ocupar el acrónimo:de:
Juntos
Hacemos
Super
Ingenioso
Código

Características del lenguaje:

  • Uso de paréntesis para definir instrucciones.
  • Número de líneas para secuencia de instrucciones
  • Definición de variables:
    • Entero: <string>(<entero>)
    • String: s.<string>(<string>)
  • Contador para seguir linea de código para el uso de ciclos iterativos y GO TO.
  • Instrucciones basadas en Java pero en español.
  • Uso de "empezar" y "terminar" para definir inicio y termino de instrucciones.