Moderna webbapplikationer kan nu erbjuda skrivbordsliknande upplevelser inifrån webbläsaren, tack vare tekniker som WebSockets, som möjliggör duplexkommunikation med låg latens mellan webbläsaren och servern. Även om dessa framsteg är bra för användarupplevelsen, representerar de ett nytt ansvar för webbutvecklare som nu behöver hantera och verifiera riktigheten av mer komplexa och potentiellt stateful interaktioner i sin ansökan. I detta dokument presenterar vi en teknik för att utveckla interaktiva webbapplikationer som är statiskt garanterade att kommunicera enligt ett givet protokoll. För det första beskrivs det globala interaktionsprotokollet i Scribbes protokollspråk - baserat på flera partisessioner typer. Scribble protokoll kontrolleras för väl formbarhet, och sedan varje roll projiceras till en Finite State Machine som representerar strukturen av kommunikation ur rollens perspektiv. Vi använder källkodsgenerering och en ny typ-nivå kodning av FSMs med hjälp av multi-parameter typ klasser för att utnyttja typsystemet för målspråket och garanterar endast program som kommunicerar efter protokollet kommer att skriva kontroll. Vårt arbete riktar sig till PureScript - ett funktionellt språk som sammanställer till JavaScript - som har ett uttrycksfullt nog typsystem för att ge statiska linjäritetsgarantier. Vi visar effektiviteten i vår strategi genom ett webbaserat Battleship spel där kommunikation utförs via WebSocket anslutningar.
Sessionstyper i Web Development King et al. REF-riktad webbutveckling i PureScript med Concur UI-ramverket och föreslog en typ-nivåkodning av EFSM som flerparametertypklasser.
Multiparty Session Type-safe Web Development with Static Linearity
{'venue': 'EPTCS 291, 2019, pp. 35-46', 'journal': None, 'mag_field_of_study': ['Computer Science']}