Passer à la navigation principale Passer à la recherche Passer au contenu principal

Fully abstract compilation to JavaScript

  • Cédric Fournet
  • , Nikhil Swamy
  • , Juan Chen
  • , Pierre Evariste Dagand
  • , Pierre Yves Strub
  • , Benjamin Livshits
  • Microsoft Research Cambridge
  • INRIA-MSR Joint Center

Résultats de recherche: Le chapitre dans un livre, un rapport, une anthologie ou une collectionContribution à une conférenceRevue par des pairs

45 Citations (Scopus)

Résumé

Many tools allow programmers to develop applications in high-level languages and deploy them in web browsers via compilation to JavaScript. While practical and widely used, these compilers are ad hoc: no guarantee is provided on their correctness for whole programs, nor their security for programs executed within arbitrary JavaScript contexts. This paper presents a compiler with such guarantees. We compile an ML-like language with higher-order functions and references to JavaScript, while preserving all source program properties. Relying on type-based invariants and applicative bisimilarity, we show full abstraction: two programs are equivalent in all source contexts if and only if their wrapped translations are equivalent in all JavaScript contexts. We evaluate our compiler on sample programs, including a series of secure libraries.

langue originaleAnglais
titrePOPL 2013 - Proceedings of 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Pages371-383
Nombre de pages13
Les DOIs
étatPublié - 26 févr. 2013
Modification externeOui
Evénement40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2013 - Rome, Italie
Durée: 23 janv. 201325 janv. 2013

Série de publications

NomConference Record of the Annual ACM Symposium on Principles of Programming Languages
ISSN (imprimé)0730-8566

Une conférence

Une conférence40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2013
Pays/TerritoireItalie
La villeRome
période23/01/1325/01/13

Empreinte digitale

Examiner les sujets de recherche de « Fully abstract compilation to JavaScript ». Ensemble, ils forment une empreinte digitale unique.

Contient cette citation