Lex

Lex es un API escrito en Python que se encargara de:

process

  1. Leer Codigo LMR
  2. Transpilar (traducir)
  3. LMR a Python

Routes

Lex sera el API responsable de "Transpilar" su codigo escrito en LMR.

Tendra 2 @routes (no esta limitado a estos 2 unicamente, usted puede agregarle mas)

/root

El root sera endpoint grafico que desplegara: el codigo Python Transpilado y la hora que fue hecho el request.

lex

note que se muestra el TimeStamp de cuando fue transpilado

/lex

POST endpoint para Procesar/ Ejecutar el codigo.

Recibe LMR => [Lex] => Transpile to Python => [Execute to Cozmo]

El codigo vendra en el request payload 1

{
    "request_timestamp": "Sun Nov  3 01:42:41 CST 2019",
    "lmr": "SAY HI\nMOVE 50 100"
}


Obviamente debe devolver un status code dependiendo del resultado de ejecutar el programa.

1: Ojo que se puede utilizar Redis para evitar enviar una llamada REST y utilizar canales real-time.

Extra functions

Cada vez que Lex traduzca un programa debera:





Transpilers, or source-to-source compilers, are tools that read source code written in one programming language, and produce the equivalent code in another language.