Hlavní navigace

Názor ke článku Postavte si jazyk od Ivan - @25 Tou gramatikou je Oracle SQL. Ta gramatika...

  • 1. 1. 2012 22:27

    Ivan (neregistrovaný)

    @25 Tou gramatikou je Oracle SQL. Ta gramatika je extremne nejednoznacna, obsahuje mnoho klicovych slov, ktere mohou byt zaroven i identifikatory. Kvuli tomu ma vetsina pravidel dlouhy look-ahead. Podobne je to i s jinymi SQL gramatikami, autor ANTLR gramatiky pro ISO SQL 2003 uvadi, ze pro vygenerovani prijimaciho automatu je potreba 8GB Ram a samotny vypocet trva pres pul hodiny.

    Zadanim pro me byla referencni prirucka jazyka a nejaky balik testovacich dotazu. Ten balik obsahoval ruzny obskurdni dotazy, ktery referenece nepopisovala. Osetreni tech vyjimek vyzadovalo ruzne refactoringy te gramatiky a pokazde se zvetsila velikost prijimaciho automatu. Kdyby to bylo napsany "rucne" tak by to urcite nemelo tolik radek, ale nespis bych to nemel nikdy hotovy.