Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
teaching:cc4101:tareas:2016-2:tarea3 [2016/11/30 20:13] – [Tarea 3] fmosso | teaching:cc4101:tareas:2016-2:tarea3 [2017/11/07 14:56] (current) – old revision restored (2016/11/30 16:16) folmedo | ||
---|---|---|---|
Line 9: | Line 9: | ||
Para claridad los lenguajes prohibidos son: Racket, Scheme, Lisp, Haskell, Scala, ML, OCaml, Coq, Idris, Agda, Rust y Erlang. | Para claridad los lenguajes prohibidos son: Racket, Scheme, Lisp, Haskell, Scala, ML, OCaml, Coq, Idris, Agda, Rust y Erlang. | ||
- | ====== Números (2pt)====== | + | |
Su tarea recibirá un String como argumento; su tarea debe parsear, interpretar y retornar el resultado como un String. Su lenguaje debe ser capaz de soportar los mismos casos que el lenguaje visto en clases y se deberá caer en los mismos casos. | Su tarea recibirá un String como argumento; su tarea debe parsear, interpretar y retornar el resultado como un String. Su lenguaje debe ser capaz de soportar los mismos casos que el lenguaje visto en clases y se deberá caer en los mismos casos. | ||
- | A continuación se presenta la gramática BNF del lenguaje a implementar: | + | A continuación se presenta la gramática BNF del lenguaje a implementar |
+ | ====== Números (2pt)====== | ||
<code scheme> | <code scheme> | ||
< | < | ||
Line 27: | Line 28: | ||
- **'' | - **'' | ||
- | Al igual que en la tarea pasada, usted tiene total libertad en como implementar | + | Al igual que en la tarea pasada, usted tiene total libertad en como implementar |
====== Funciones (2pt)====== | ====== Funciones (2pt)====== | ||
- | Usted deberá extender su lenguaje con funciones de primera clase, estas deben tener régimen de evaluación eager y scope estático. | + | Usted deberá extender su lenguaje con funciones de primera clase, estas deben tener régimen de evaluación eager y scope estático. |
<code scheme> | <code scheme> |