Durante esta actividad, los alumnos serán capaces de:
NOTA: Este es un ejercicio para realizar en clase. No se tiene que entregar nada.
Escribir en Clojure un programa que reciba como entrada un archivo de texto que contenga expresiones aritméticas y comentarios, y nos regrese una tabla con cada uno de sus tokens encontrados, en el orden en que fueron encontrados e indicando de qué tipo son. El programa se debe implementar utilizando el API de expresiones regulares.
Las expresiones aritméticas sólo podrán contener los siguientes tipos de tokens:
(
)
//
seguido de caracteres hasta que se acabe el renglónPor ejemplo:
b=7 a = 32.4 *(-8.6 - b)/ 6.1E-8 d = a ^ b // Esto es un comentario
El ejemplo anterior debe producir la siguiente salida:
======================================================== Token Tipo ======================================================== b Variable = Asignación 7 Entero a Variable = Asignación 32.4 Real * Multiplicación ( Paréntesis que abre -8.6 Real - Resta b Variable ) Paréntesis que cierra / División 6.1E-8 Real d Variable = Asignación a Variable ^ Potencia b Variable // Esto es un comentario Comentario ========================================================
_
)10.
o 10.0
)E
, mayúscula o minúscula, pero después de la letra E
sólo puede ir un entero positivo o negativo (e.g. 2.3E3
, 6.345e-5
, -0.001E-3
, 0.467E9
)//
y todo lo que sigue hasta que termina el renglón es un comentario