Type checking for JavaScript

Christopher Anderson, Paola Giannini

Risultato della ricerca: Contributo su rivistaArticolo da conferenzapeer review

Abstract

JavaScript is a powerful imperative object based language made popular by its use in web pages. It supports flexible program development by allowing dynamic addition of members to objects. Code is dynamically typed: a runtime access to a non-existing member causes an error. We suggest a static type system for JavaScript that will detect such type errors. Therefore, programmers can benefit from the flexible programming style offered by JavaScript and from the safety offered by a static type system. We demonstrate our type system with a formalism of JavaScript, JS0. Our types are structural. Members of an object type are classified into definite and potential. A potential member becomes definite upon assignment. We outline a proof that our type system is sound.

Lingua originaleInglese
pagine (da-a)37-58
Numero di pagine22
RivistaElectronic Notes in Theoretical Computer Science
Volume138
Numero di pubblicazione2
DOI
Stato di pubblicazionePubblicato - 23 nov 2005
EventoProceedings of the Second Workshop on Object Oriented Developments (WOOD 2004) -
Durata: 30 ago 200430 ago 2004

Fingerprint

Entra nei temi di ricerca di 'Type checking for JavaScript'. Insieme formano una fingerprint unica.

Cita questo