Historiskt har sann kontextkänslig tolkning sällan tillämpats på programmeringsspråk, på grund av dess inneboende komplexitet. Många vanliga programmerings- och markeringsspråk (C, Haskell, Python, XML och mer) har dock kontextkänsliga funktioner. Dessa funktioner hanteras traditionellt med ad-hoc-kod (t.ex. anpassade lexers), utanför ramen för tolkningsteori. Nuvarande grammatikformalismer kämpar för att uttrycka kontextkänsliga drag. De flesta lösningar saknar sammanhangstransparens: de gör grammatik svår att skriva, underhålla och komponera genom att hårdvirra sammanhang genom hela grammatiken. Istället närmar vi oss kontextkänslig tolkning genom idén att tolker kan återkalla tidigare matchade indata (eller data som härletts därifrån) för att kunna fatta tolkningsbeslut. Vi använder oss av mutable parse state för att möjliggöra denna form av återkallande. Vi inför en principiell statisk tolkning som en ny transaktionsdisciplin som gör statliga förändringar öppna för tolkningsmekanismer som backtracking och memoning. För att upprätthålla denna disciplin anger användare tolker som använder formellt specificerade primitiva statliga manipulationer. Vår lösning finns som ett tolkningsbibliotek som heter Höst. Vi illustrerar vår lösning genom att implementera några praktiska kontextkänsliga grammatikdrag såsom betydande hantering av blanktecken och namnrymdsklassificering.
Laurent och Mens REF presenterade en principiell statisk tolkning och implementerade algoritmen som ett tolkkombinatorbibliotek som heter Höst.
Taming context-sensitive languages with principled stateful parsing
{'venue': 'SLE 2016', 'journal': None, 'mag_field_of_study': ['Computer Science']}