The essence of javascript

作者: Claudiu Saftoiu , Shriram Krishnamurthi , Arjun Guha

DOI: 10.5555/1883978.1883988

关键词:

摘要: We reduce JavaScript to a core calculus structured as small-step operational semantics. present several peculiarities of the language and show that our models them. explicate desugaring process turns programs into ones in core. demonstrate faithfulness using real-world test suites. Finally, we illustrate utility by defining security property, implementing it type system on core, extending full language.

参考文章(16)
Simon Holm Jensen, Anders Møller, Peter Thiemann, None, Type Analysis for JavaScript static analysis symposium. pp. 238- 255 ,(2009) , 10.1007/978-3-642-03237-0_17
Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Semantics Engineering with PLT Redex ,(2009)
Luca Cardelli, Martin Abadi, A Theory of Objects ,(1996)
A. H. Borning, Classes versus prototypes in object-oriented languages fall joint computer conference. pp. 36- 40 ,(1986) , 10.5555/324493.324538
Sergio Maffeis, John C. Mitchell, Ankur Taly, Isolating JavaScript with filters, rewriting, and wrappers european symposium on research in computer security. pp. 505- 522 ,(2009) , 10.1007/978-3-642-04444-1_31
Sam Tobin-Hochstadt, Matthias Felleisen, The design and implementation of typed scheme Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '08. ,vol. 43, pp. 395- 406 ,(2008) , 10.1145/1328438.1328486
A.K. Wright, M. Felleisen, A Syntactic Approach to Type Soundness Information & Computation. ,vol. 115, pp. 38- 94 ,(1994) , 10.1006/INCO.1994.1093
David Ungar, Randall B. Smith, Self: The power of simplicity Conference proceedings on Object-oriented programming systems, languages and applications - OOPSLA '87. ,vol. 22, pp. 227- 242 ,(1987) , 10.1145/38765.38828
Dachuan Yu, Ajay Chander, Nayeem Islam, Igor Serikov, JavaScript instrumentation for browser security symposium on principles of programming languages. ,vol. 42, pp. 237- 249 ,(2007) , 10.1145/1190215.1190252
Sergio Maffeis, John C. Mitchell, Ankur Taly, An Operational Semantics for JavaScript Programming Languages and Systems. pp. 307- 325 ,(2008) , 10.1007/978-3-540-89330-1_22