JavaScript har blivit det mest använda språket för webbprogrammering på klientsidan. Den dynamiska naturen hos JavaScript gör det notoriskt svårt att förstå dess kod, vilket leder till buggiga program och brist på lämpliga statiska analysverktyg. Vi tror att logiskt resonemang har mycket att erbjuda JavaScript: en enkel beskrivning av programbeteende, en tydlig förståelse av modulgränser och möjligheten att verifiera säkerhetskontrakt. Vi introducerar en programlogik för resonemang om en bred delmängd av JavaScript, inklusive utmanande funktioner som prototyparv och med. Vi anpassar idéer från separationslogik för att ge ett lättfattligt resonemang om JavaScript-kod: resonemang om enkla program är enkelt; resonemang om hårda program är möjligt. Vi visar ett starkt ljudresultat. Alla bibliotek skrivna i vår undergrupp och visade sig vara korrekta med avseende på deras specifikationer kommer att vara väluppfostrade, även när de anropas av godtycklig JavaScript-kod.
REF var den första som resonerade om ett program som använder dig * i Javascript.
Towards a program logic for JavaScript
{'venue': "POPL '12", 'journal': None, 'mag_field_of_study': ['Computer Science']}