BNF, EBNF og Málrit (syntax diagrams). Flashcards
Hvað er “mál”?
Mál er einfaldlega mengi strengja.
Hvað er strengur?
Strengur er endanleg runa tákna úr einhverju mengi, sem við þá köllum táknróf eða stafróf (alphabet) málsins.
BNF stendur fyrir ?
Backus-Naur Form
Hvað er BNF?
BNF er aðferð, svokallað meta-mál, til að skilgreina mál.
Hver skilgreingdi BNF ?
John Backus, sem fann upp FORTRAN forritunarmálið og Peter Naur, ritstjóri skilgreiningarinnar á ALGOL-60 forritunarmálinu
En BNF á sér einnig rætur í málvísindum, hver skilgreindi samhengisfrjálsar mállýsingar áður en Backus og Naur skilgreindu BNF?
Málvísindamaðurinn Noam Chomsky
útleiðsla?
Þegar gefin er BNF skilgreining má yfirleitt leiða út ótakmarkaðan fjölda strengja í málinu
Mállýsing er margræð ef ?
Strenginn má leiða út á fleiri en einn hátt.
Málið er samhengisfrjálst ef?
Ef unnt er að lýsa tilteknu máli með BNF (þ.e. með samhengisfrjálsri mállýsingu)
Hvaða aðferðið eru notaðar til að lýsa málfræði forritunarmála ?
BNF, EBNF (Extended BNF) og málrit (syntax diagrams).
Hvað eru regluleg mál (regular language).
Frumeiningar forritunarmála, svo sem lykilorð, strengfastar, heiltölufastar, fleytitölufastar, o.s.frv., eru yfirleitt regluleg mál (regular language).
Regluleg mál eru undirmengi samhengisfrjálsra mála, þ.e. ?
þ.e. öll regluleg mál eru samhengisfrjáls, en ekki öfugt.
Reglulegar segðir?
Ein aðferð til að skilgreina regluleg mál er reglulegar segðir
Endanlegar stöðuvélar ?
Enn ein aðferð til að skilgreina regluleg mál.
Hvernig er EBNF?
EBNF er svipað og BNF, en þar hefur verið bætt við hugmyndum úr reglulegum segðum.