Skip to main content

Wat is een tussenliggende taal?

In computerprogrammering, wanneer de mens-leesbare broncode wordt ontleed door een compiler, vertaalt de compiler vaak de bronopdrachten in een reeks instructies die niet helemaal native machinecode zijn, maar verder kunnen worden verwerkt, geoptimaliseerd of gecompileerd door de compiler of anderesoftwaretools.De geproduceerde bestanden bevatten instructies waarvan wordt gezegd dat ze zich in een tussenliggende taal bevinden, omdat de taal die door de compiler wordt gebruikt, noch betekenisvol is voor het grotere besturingssysteem, noch de taal die de programmeur gebruikt om de code in de eerste plaats te schrijven, maar in plaats daarvanis een taal die fungeert als een brug tussen het schrijven en de uitvoering van het programma.Een tussenliggende taal wordt soms gebruikt om een compiler in staat te stellen zeer precieze optimalisaties te maken, zodat het programma efficiënter werkt, maar het kan ook worden gebruikt om uitvoerbestanden te produceren die draagbaar zijn tussen verschillende, onverenigbare systemen.De werkelijke syntaxis van de taal kan lijken op machinecode of andere soorten niet-menselijke leesbare bytecode, of de taal kan slechts een bestaande platformonafhankelijke computerprogrammeertaal zijn.een broncodebestand en breekt de opdracht op in de tussenliggende taal.Een enkele mens-leesbare programmeerverklaring kan afbreken in tientallen instructies voor machinaal taalgebruik, zodat de tussenliggende taal een abstractieniveau creëert dat de compiler kan gebruiken om gebieden van de code te identificeren waar optimalisaties kunnen worden gemaakt zonder eerst de code te binden aan de code aanalle native implementaties of bibliotheken.Eenmaal voltooid, kan het intermediaire codebestand vervolgens verder worden samengesteld om een native binair bestand te maken, of het kan worden uitgevoerd via een ander programma, bekend als een tolk, dat de code zal uitvoeren door deze in native instructies te compileren als dat nodig is.

SommigeTalen, zoals Java , gebruiken een tussenliggende taal om gecompileerde bestanden te maken die zijn geoptimaliseerd maar ook draagbaar voor andere computersystemen.Dit type code staat soms bekend als bytecode en lijkt op machinecode of assemblietaal.Bytecode wordt opgeslagen in bestanden op een manier die van platformonafhankelijk is, wat betekent dat het kan worden overgedragen naar elk computersysteem of apparaat dat een tolk kan uitvoeren.Zodra de bytecode op een systeem staat, kan het worden uitgevoerd als een geïnterpreteerd programma of kan het worden samengesteld om native op het doelsysteem te worden uitgevoerd.

In sommige gevallen is een computertaal ontworpen om het gemakkelijk te maken om te programmeren naar een specifiekeBeëindig, zoals een interactieve webtoepassing, maar de ontwerpers willen geen aangepaste compilers, tolken of plug-ins voor verschillende systemen opnemen.In deze gevallen kan de tussenliggende taal van de compiler een bestaande taal zijn die al platformoverschrijdende tolken heeft gevestigd.De resulterende tussenliggende taal is in dit geval de mens leesbaar.Een voorbeeld van een computerprogrammeertaal die ook wordt gebruikt als een tussenliggende taal is JavaScript , die het voordeel heeft om vanaf 2011 in bijna elke webbrowser op elk platform te kunnen lopen.