Co je abstraktní syntaxe?
Abstraktní syntaxe je způsob, jak počítačoví programátoři mapují strukturu programu, který chtějí vytvořit, aniž by se museli starat o skutečný kód potřebný k jeho implementaci. Umožňuje programátorovi soustředit se na to, co program musí udělat, než se zaměří na to, jak přimět počítač, aby skutečně vykonával požadované funkce. Abstraktní syntaxe nastiňuje specifické úkoly programu, jako je například přidání dvou čísel dohromady, a ukazuje, jaké typy dat lze v tomto programu použít. Jakmile je abstraktní mapování kompletní, je nakreslen abstraktní strom syntaxe, který odpovídá abstraktním konceptům s konkrétní syntaxí - skutečné symboly, které programátor potřebuje napsat, aby spustil program, který vytváří.
Myšlenkou abstraktní syntaxe je zaměřit se na datové typy a jejich vztahy, aniž by se zachytili v podrobnostech, jak je kódovat. Počítačový kód je hodně odlišný od lidského jazyka a pokusit se myslet v těchto termínech je obtížné. Místo toho programátoři sestaví seznam kroků, které program potřebuje k dokončení, a poté pomocí konkrétní syntaxe spojí abstraktní pojmy s pojmy počítačového kódu, které tyto kroky provádějí. Programátor často do své abstraktní značky zahrne datové typy, aby ukázal, s jakými typy dat - ať už jsou to čísla, písmena nebo desetinná místa - program může pracovat. Specifické datové typy se však v této fázi programování nevyžadují a programátor se může rozhodnout použít abstraktní datové typy, které jsou čistě teoretické a budou nahrazeny specifickými datovými typy, když je program zapsán.
Tento druh abstraktní myšlenky programování je často používán v kompilátorové teorii. Počítače mohou rozumět pouze dvěma hodnotám: 1 s a 0 s. Toto je známé jako binární kód. Aby počítač pochopil program napsaný v programovacím jazyce, musí kompilovat nebo překládat slova a písmena do proudu 1 s a 0 s. Kompilátory jsou složité na vytvoření a zmapování neurčité nebo abstraktní představy o tom, co musí udělat, pomůže programátorovi naplánovat bezchybný kód.
Když chce programátor mapovat abstraktní syntaxi na konkrétní syntaxi a začít kódovat program nebo kompilátor, vytvoří abstraktní strom syntaxe. Toto je prostě seznam všech abstraktních instrukcí, které napsala, například „přidat 2 proměnné“, s řádkem nakresleným z každého abstraktního výrazu na konkrétní řádek kódu potřebného k provedení této instrukce. Programátor může použít libovolné abstraktní termíny, které chce, ale jeho běžnější je použití dobře známých kódových výrazů jako „var“ pro proměnnou a „int“ pro celé číslo.