Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
lfa:proiect:etapa1 [2021/10/31 16:25] stefan.stancu [Starile unui AFD] |
lfa:proiect:etapa1 [2021/12/23 00:48] (current) stefan.stancu [Etapa 1 - Lexer cu AFD-uri] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Etapa 1 - Lexer cu AFD-uri ====== | ====== Etapa 1 - Lexer cu AFD-uri ====== | ||
+ | |||
+ | **Checker si teste**: [[lfa:proiect:checker|Checker proiect LFA]]. | ||
Etapa 1 consta in implementarea unui lexer simplu (in Python sau Haskell). | Etapa 1 consta in implementarea unui lexer simplu (in Python sau Haskell). | ||
Line 259: | Line 261: | ||
* Vizitati functiile din biblioteca ''Data.Map'' si ''Data.Set''. Unele pot fi foarte utile pentru implementare | * Vizitati functiile din biblioteca ''Data.Map'' si ''Data.Set''. Unele pot fi foarte utile pentru implementare | ||
- | * Refolositi functia ''splitBy'' de la PP | + | * Refolositi functia ''splitBy'' de la PP. |
* Aruncati o privire peste functia ''sortOn''. Este mai simplu de folosit si mai performanta decat ''sortBy''. | * Aruncati o privire peste functia ''sortOn''. Este mai simplu de folosit si mai performanta decat ''sortBy''. | ||
* Aruncati o privire peste **list comprehensions**. Pot fi utile local. | * Aruncati o privire peste **list comprehensions**. Pot fi utile local. | ||
+ | * Nu uitati de tipuri precum ''Data.Maybe'' si ''Data.Either'', ar putea fi utile in anumite contexte. | ||
==== Debugging ==== | ==== Debugging ==== |