Skip to content

Commit

Permalink
CB vom 15.02.22 (#20)
Browse files Browse the repository at this point in the history
* Notizen vom 15.02.22

* chore(docs): update TOC

Co-authored-by: TOCGEN <[email protected]>
  • Loading branch information
ZeroPointMax and ZeroPointMax authored Feb 18, 2022
1 parent 68a3603 commit 4d092f0
Showing 1 changed file with 22 additions and 0 deletions.
22 changes: 22 additions & 0 deletions CB-KUSCHE/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ Wahlpflichtmodul Compilerbau
- [Entwurf](#entwurf)
- [Arten](#arten)
- [Lexer-Regeln](#lexer-regeln)
- [Praxis mit yacc / bison](#praxis-mit-yacc--bison)
- [Parser mit rek. Abstieg](#parser-mit-rek-abstieg)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->

Expand Down Expand Up @@ -117,3 +119,23 @@ float = ['+'|'-']digit{digit}['.'{digit}][('e'|'E')['+'|'-']digit{digit}]
Achtung: eigentlich ist der falsch; die Regel kann nicht zwischen Float und Int unterscheiden $\rightarrow$ Zweideutigkeit

- Namenstrenner: Freiräume wie Leertasten, Tabs

# Praxis mit yacc / bison

- bei rekursiven Non-Terminals sollte die leere Alternative zuerst kommen
- eine Zeile pro Alternative

Bsp.:

```txt
Input:
// Leere Alternative
| Line Input
;
```

- C-Code wird in geschwungene Klammern geschrieben

# Parser mit rek. Abstieg

- einfachste Möglichkeit zur Implementierung eines Compilers

0 comments on commit 4d092f0

Please sign in to comment.