Vi presenterar en rekonstruktion av sessionstyper i en linjär pi-kalkyl där typer är kvalificerade som linjära eller obegränsade. Linjärt kvalificerade kommunikationskanaler garanteras att förekomma i exakt en tråd, möjligen flera gånger; obegränsade (eller delade) kanaler kan visas i ett obegränsat antal trådar. På vårt språk kännetecknas varje kanal av två olika variabler, den ena används för att läsa, den andra för att skriva; omfattningsbegränsning binder ihop två variabler och därmed etablerar korrespondensen mellan de två ändarna av en och samma kanal. Denna mekanism möjliggör en exakt kontroll av resurserna via ett konventionellt linjärt system. Dessutom leder den enhetliga behandlingen av linjära och delade kanaler till en överraskande enkel teori som dessutom ökar typbarheten jämfört med traditionella system för sessionstyper. Vi bygger språket gradvis, med början från enkel input/output, sedan lägga rekursiva typer, replikering och slutligen val. Vi presenterar också ett algoritmiskt typkontrollsystem.
Dessutom ger REF ) en handledning rekonstruktion av sessionstyper i en linjär π kalkyl med linjära och obegränsade typer, där värden av obegränsade typer inte behöver ha linjär användning, som våra statslösa typer.
Fundamentals of session types
{'venue': 'In SFM’09, volume 5569 of LNCS', 'journal': None, 'mag_field_of_study': ['Computer Science']}