Compilers
Welk soort grammatica wordt gebruikt om de grammatica van veel programmeertalen weer te geven en vormt de basis van parsing?
- AAlleen reguliere grammatica's
- BDe grammatica van natuurlijke taal
- CContextvrije grammatica
Antwoord en toelichting tonen
Antwoord: C. Contextvrije grammatica
Genestelde haakjes en structuren waarin een if-statement een ander if-statement bevat, kunnen niet met reguliere expressies worden weergegeven. De grammatica van de meeste programmeertalen wordt weergegeven met een contextvrije grammatica, een verzameling herschrijfregels zoals "expressie → expressie + term", en parsing gebeurt op basis van deze grammatica. Er zijn parsingmethoden zoals LL, waarbij regels van boven af worden toegepast, en LR, waarbij van onder af wordt opgebouwd, en er zijn ook tools die parsers automatisch uit een grammatica maken. Reguliere grammatica's zijn geschikt voor lexicale analyse en kunnen geen geneste structuren aan.