Jaka jest składnia abstrakcyjna?

Składnia abstrakcyjna to sposób, w jaki programiści komputerowi mogą odwzorować strukturę programu, który chcą stworzyć, bez martwienia się o rzeczywisty kod potrzebny do jego wdrożenia. Pozwala programiście skupić się na tym, co program musi zrobić, zanim skupi się na tym, jak sprawić, by komputer faktycznie wykonywał żądane funkcje. Abstrakcyjna składnia określa konkretne zadania programu, takie jak dodawanie dwóch liczb razem, i pokazuje, jakie typy danych mogą być używane w tym programie. Po zakończeniu mapowania abstrakcyjnego rysowane jest drzewo składni abstrakcyjnej, które łączy abstrakcyjne koncepcje z konkretną składnią — rzeczywistymi symbolami, które programista musi wpisać, aby uruchomić tworzony przez niego program.

Pomysł na składnię abstrakcyjną polega na skupieniu się na typach danych i ich relacjach bez zagłębiania się w szczegóły ich kodowania. Kod komputerowy znacznie różni się od ludzkiego języka i próba myślenia w tych kategoriach jest trudna. Zamiast tego programiści tworzą listę kroków, które program musi wykonać, a następnie używają konkretnej składni, aby dopasować abstrakcyjne terminy do terminów kodu komputerowego, które wykonują te kroki. Często programista dołącza typy danych do swoich abstrakcyjnych znaczników, aby pokazać, z jakimi typami danych — czy to cyframi, literami czy ułamkami dziesiętnymi — może pracować program. Na tym etapie programowania nie są jednak wymagane określone typy danych, a programista może zdecydować się na użycie abstrakcyjnych typów danych, które są czysto teoretyczne i zostaną zastąpione określonymi typami danych podczas pisania programu.

Ten rodzaj abstrakcyjnej idei programowania jest często używany w teorii kompilatorów. Komputery mogą rozumieć tylko dwie wartości: jedynki i zera. Jest to znane jako kod binarny. Aby komputer zrozumiał program napisany w języku programowania, musi skompilować lub przetłumaczyć słowa i litery na strumień jedynek i zer. Kompilatory są skomplikowane, jeśli chodzi o tworzenie i mapowanie niejasnych lub abstrakcyjnych pomysłów na to, co muszą zrobić, aby pomóc programiście zaplanować kod bez błędów.

Kiedy programista chce zmapować składnię abstrakcyjną na składnię konkretną i rozpocząć kodowanie programu lub kompilatora, tworzy drzewo składni abstrakcyjnej. Jest to po prostu lista wszystkich instrukcji abstrakcyjnych, które napisała, takich jak „dodaj 2 zmienne”, z linią narysowaną od każdego abstrakcyjnego terminu do konkretnej linii kodu potrzebnej do wykonania tej instrukcji. Programista może używać dowolnych abstrakcyjnych terminów, jakie chce, ale częściej używa się dobrze znanych terminów kodowych, takich jak „var” dla zmiennej i „int” dla liczby całkowitej.