Semantik av begränsningar logik programmeringsspråk med koroutinering faciliteter (\freeze, "suspension, residuation, etc.) Det kan inte vara helt och hållet deklarativt, och därför måste en operationell semantik betraktas som den avgörande. Vi ger en formell operationell semantik för ett prolog-liknande språk med klipp och medbestämmande-baserat villkor. Kulturen här är att presentera semantiken i en form som abstrakterar bort oväsentliga detaljer och belyser samspelet mellan språkkonstruktioner. Vår metod är härledd från dem som används för samtidig analys. Vi använder abstrakta syntax träd, kongruens lagar och skriva om regler för att de ne semantik. Ett beräkningssteg modelleras som tillämpning av en omskrivningsregel på en abstrakt syntaxträdmodulo strukturell kongruens. Denna semantik fungerar som ett verktyg för språkdesignern och som gränssnittet mellan språkdesignern och implementatorn; det gör det möjligt för programmeraren att kontrollera sin intuition med en formell exekveringsmodell och det ger honom en prestandamått för utförandet av program. Vi har använt semantiken för att göra exakt, för första gången, den kritiska interaktionen mellan sekventiell körning (inklusive backtracking och klippbeskärning) och koroutinering. I synnerhet uppvisar vi fall där denna interaktion kan leda till odeterministiska resultat (dvs. till icke-prediktabel programutförande).
Slutligen, REF definiera en operativ semantik för begränsningar logik program med koroutinering för att specificera samspelet mellan bakåtspårning, klipp och koroutinering.
Operational Semantics of Constraint Logic Programs with Coroutining
{'venue': 'ICLP', 'journal': None, 'mag_field_of_study': ['Mathematics', 'Computer Science']}