Wat is het Abstract Syntax?

Abstracte syntax is een manier voor computerprogrammeurs in kaart te brengen van de structuur van het programma dat ze willen maken zonder zich te bekommeren over de eigenlijke code die nodig is om het uit te voeren. Het laat de programmeur om zich te concentreren op wat het programma moet doen alvorens zich te concentreren op hoe je de computer om de gewenste functies daadwerkelijk uit te voeren. Het abstracte syntax geeft bepaalde taken van het programma, zoals het toevoegen van twee getallen met elkaar en toont welke typen gegevens in dat programma worden gebruikt. Zodra de samenvatting mapping is voltooid, wordt een abstracte syntax boom getekend, die overeenkomt met de abstracte concepten concreet syntax - de eigenlijke symbolen programmeur moet typen aan het programma ze creëren draaien.

Het idee voor abstracte syntax is de focus op data types en hun relaties, zonder verstrikt te raken in de details van hoe ze te coderen. Computercode is veel anders dan de menselijke taal, en proberen te denken in deze termen is moeilijk. In plaats daarvan, programmeurs maak een lijst van de stappen die het programma nodig heeft om te voltooien en te gebruiken beton syntax om de afstemming van de abstracte termen met de computer code termen die deze stappen uit te voeren dan. Vaak zal de programmeur soorten gegevens opnemen in haar abstracte markup om te laten zien welke typen gegevens - of het nu cijfers, letters of decimalen - het programma kan werken. Specifieke gegevens niet vereist in dit stadium programmering echter de programmeur kan kiezen abstracte datatypen, die louter theoretisch worden vervangen specifieke gegevens wanneer het programma is geschreven gebruiken.

Dit soort abstract idee programmering wordt vaak gebruikt in compiler theorie. Computers kunnen alleen begrijpen twee waarden: 1s en 0s. Dit staat bekend als binaire code. Voor de computer om een ​​programma geschreven in een programmeertaal te begrijpen, moet het te compileren, of te vertalen, de woorden en letters in een stroom van 1s en 0s. Compilers zijn complex te maken en in kaart brengen van een vaag of abstract idee van wat ze moeten doen helpt een programmeur plannen uit foutloze code.

Wanneer de programmeur wil de abstracte syntax om concrete syntax kaart en start het coderen van het programma of de compiler, creëert ze een abstracte syntax boom. Dit is gewoon een lijst van alle abstracte instructies ze geschreven, zoals "voeg 2 variabelen," met een lijn van elke abstracte term naar de specifieke regel code die nodig is om die instructie uit te voeren. De programmeur kan geen abstracte termen ze wil gebruiken, maar het is meer gebruikelijk om bekende code termen als "var" voor variabele en "int" voor integer te gebruiken.