Considerati expunerea ca fiind insotitoarea capitolului al III-lea din cartea lui Anthony A Aaby, Constructia compilatoarelor folosind Flex si Bison.
Pentru a testa codul din capitolul al 3-lea, puteti folosi cartea de la aceasta adresa (dar comunicati-mi pe e-mail daca ea nu mai e disponibila).
Cautati deci Compiler Construction using Flex and Bison on-line, pe internet.
O varianta mai veche gasiti in Spania, aici, la aceasta universitate.
http://pegaso.ls.fi.upm.es/~jfuertes/Software/compiler.pdf
Din cuprinsul acestui (mai vechi curs) video:
1. Expresii regulare, ca in cursul teoretic. Explicam cum, teoretic, putem defini un fel de expresii (seamana cu expresiile aritmetice) dar semnificatia lor este o multime de cuvinte, nu un numar. Vizionati minutele 0:00 -> 7:00.
2. Structura unui fisier pentru Yacc sau Bison. Explicam faptul ca fisierul destinat software-ului Bison are si el trei parti:
Partea I: Declaratii C si declaratii pentru scanner (aici fiind si niste expresii regulare care capata niste nume), in carte DIGIT si ID. Ca declaratii C, nu uitati sa includeti cu #include fisierul "simple.tab.h" generat de Bison, in experimentul din capitolul al II-lea.
Partea aII-a: Descrieri ale atomilor lexicali sub forma de expresii regulare si ceea ce are de executat programul cand intalneste acesti atomi. De obicei returneaza o constanta indicand tipul acestor atomi. Practic il invatam pe Lex/Flex ce are de facut software-ul cand intalneste anumite parti de text numite atomi lexicali. Si ce are de facut scriem intr-o acolada cu cod { ... }
Partea aIII-a: Functii C,subrutine. Aici se scriu toate celelalte functii apelate din codul din acoladele de mai sus. De asemenea, daca folositi Flex/Lex pentru a scrie un software care cauta cuvinte si executa actiuni, atunci functia main() va fi si ea scrisa aici.
Vizionati minutele: 7:00 ->18:30.
Din pacate, platforma blogger a lui Google refuza incarcarea unui fisier video de 1.3 GB.
Solicitati pe e-mail, link-ul wetransfer al video-ului.
Niciun comentariu:
Trimiteți un comentariu