F {D}, s ?OwnerCheck a False THROW OwnerMismatch, s WriteNull P, w ? null.F {D} := Val vs, s ?Silent THROW NullPointer ,
(h, l) ?OwnerCheck a False THROW OwnerMismatch, s CallNull P, w ? null.M (map Val vs), s ?Silent THROW NullPointer ,
throw null, s ?Silent THROW NullPointer, s Figure 2.3: Siaam Exceptional expression reduction CastT P, w ? Cast C throw e, s ?Silent throw e, s ,
= throw e, s ?Silent throw e, s ,
= throw e, s ?Silent throw e, s ,
Val v ?bop? throw e, s ?Silent throw e, s ,
{V : T ; Throw a}, s ?Silent Throw a ,
{V : T ; V := Val v; Throw a}, s ?Silent Throw a ,
M (es), s ?Silent throw e, s ,
M (map Val vs @ (throw e · es ? )), s ?Silent throw e, s Throw P, w ? throw e; e2 , s ?Silent throw e, s ,
throw throw e, s ?Silent throw e, s Figure 2.4: Exception propagation ANNEXE C. ABSTRACTS in a state-of-the-art Java virtual-machine and a set of custom static analyses automatically reduce the runtime overhead ,
Actors: a model of concurrent computation in distributed systems, 1986. ,
Deconstructing process isolation, Proceedings of the 2006 workshop on Memory system performance and correctness , MSPC '06, pp.1-10, 2006. ,
DOI : 10.1145/1178597.1178599
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.109.1184
Balloon types: Controlling sharing of state in data types, ECOOP'97 ? Object-Oriented Programming, pp.32-59, 1997. ,
An extended form of must alias analysis for dynamic allocation, Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '95, pp.74-84, 1995. ,
DOI : 10.1145/199448.199466
Modern compiler implementation in Java, 1998. ,
DOI : 10.1017/CBO9780511811432
A history of Erlang, Proceedings of the third ACM SIGPLAN conference on History of programming languages , HOPL III, pp.6-7, 2007. ,
DOI : 10.1145/1238844.1238850
Concurrent programming in, 1996. ,
Adaptive optimization in the Jalape??o JVM, ACM SIGPLAN Notices, vol.35, issue.10, pp.47-65, 2000. ,
DOI : 10.1145/354222.353175
A Survey of Adaptive Optimization in Virtual Machines, Proceedings of the IEEE, vol.93, issue.2, 2004. ,
DOI : 10.1109/JPROC.2004.840305
Processes in kaffeos: isolation, resource management, and sharing in java, Proceedings of the 4th conference on Symposium on Operating System Design & Implementation, pp.23-23, 2000. ,
use-once " variables and linear objects: storage management, reflection and multi-threading, SIGPLAN Not, vol.30, issue.1, pp.45-52, 1995. ,
Interpretation of Locales in Isabelle: Theories and Proof Contexts, LNAI 4108, pp.31-43, 2006. ,
DOI : 10.1007/11812289_4
The DaCapo benchmarks: Java benchmarking development and analysis, OOPSLA '06: Proceedings of the 21st annual ACM SIGPLAN conference on Object-Oriented Programing, Systems, Languages, and Applications, pp.169-190, 2006. ,
Immix: a mark-region garbage collector with space efficiency, fast collection, and mutator performance, SIGPLAN Not, vol.43, issue.6, pp.22-32, 2008. ,
Escape analysis for object-oriented languages, ACM SIGPLAN Notices, vol.34, issue.10, pp.20-34, 1999. ,
DOI : 10.1145/320385.320387
Instance keys: A technique for sharpening whole-program pointer analyses with intraprocedural information, 2007. ,
Taming reflection, Proceeding of the 33rd international conference on Software engineering, ICSE '11, pp.241-250, 2011. ,
DOI : 10.1145/1985793.1985827
Removing unnecessary synchronization in Java, ACM SIGPLAN Notices, vol.34, issue.10, pp.35-46, 1999. ,
DOI : 10.1145/320385.320388
Static cloning of library methods for application and vm contexts (patch) http://sourceforge, 2013. ,
Object-oriented analysis and design with applications, 1994. ,
A parameterized type system for race-free Java programs, ACM SIGPLAN Notices, vol.36, issue.11, pp.56-69, 2001. ,
DOI : 10.1145/504311.504287
Alias killing: Unique variables without destructive reads, Lecture Notes in Computer Science, vol.1743, pp.148-149, 1999. ,
DOI : 10.1002/spe.370
Connecting effects and uniqueness with adoption, SIGPLAN Not, vol.40, issue.1, pp.283-295, 2005. ,
Asm: A code manipulation tool to implement adaptable systems, Adaptable and extensible component systems, 2002. ,
An approach to safe object sharing, ACM SIGPLAN Notices, vol.35, issue.10, pp.367-381, 2000. ,
DOI : 10.1145/354222.353196
A Course in Universal Algebra, Graduate Texts in Mathematics, vol.78, 1981. ,
DOI : 10.1007/978-1-4613-8130-3
Message analysis for concurrent programs using message passing, ACM Transactions on Programming Languages and Systems, vol.28, issue.4, pp.715-746, 2006. ,
DOI : 10.1145/1146809.1146813
Interprocedural exception analysis for Java, Proceedings of the 2001 ACM symposium on Applied computing , SAC '01, pp.620-625, 2001. ,
DOI : 10.1145/372202.372786
Escape analysis for java, Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, OOPSLA '99, pp.1-19, 1999. ,
Stack allocation and synchronization optimizations for Java using escape analysis, ACM Transactions on Programming Languages and Systems, vol.25, issue.6, pp.876-910, 2003. ,
DOI : 10.1145/945885.945892
External Uniqueness Is Unique Enough, European Conference for Object-Oriented Programming (ECOOP), pp.176-200, 2003. ,
DOI : 10.1007/978-3-540-45070-2_9
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.109.1645
Minimal Ownership for Active Objects, Proceedings of the 6th Asian Symposium on Programming Languages and Systems, APLAS '08, pp.139-154, 2008. ,
DOI : 10.5381/jot.2007.6.4.a5
Ownership types for flexible alias protection, Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), pp.48-64, 1998. ,
Message Passing: A Case for Mixing Deep-Copy and Migration, 2012. ,
URL : https://hal.archives-ouvertes.fr/hal-01472110
Foundations of actor semantics, 1981. ,
Systematic design of program analysis frameworks, Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages , POPL '79, pp.269-282, 1979. ,
DOI : 10.1145/567752.567778
Multitasking without compromise, ACM SIGPLAN Notices, vol.47, issue.4a, pp.60-73, 2012. ,
DOI : 10.1145/2442776.2442785
Multitasking without comprimise, ACM SIGPLAN Notices, vol.36, issue.11, pp.125-138, 2001. ,
DOI : 10.1145/504311.504292
Introduction to Lattices and Order. Cambridge mathematical text books, 2002. ,
Thread-local heaps for Java, ACM SIGPLAN Notices, vol.38, issue.2 supplement, pp.76-87, 2002. ,
DOI : 10.1145/773039.512439
Language support for fast and reliable message-based communication in singularity OS, ACM SIGOPS Operating Systems Review, vol.40, issue.4, pp.177-190, 2006. ,
DOI : 10.1145/1218063.1217953
RedCard: Redundant Check Elimination for Dynamic Race Detectors, Lecture Notes in Computer Science, vol.7920, pp.255-280, 2013. ,
DOI : 10.1007/978-3-642-39038-8_11
A comprehensive evaluation of object scanning techniques, ACM SIGPLAN Notices, vol.46, issue.11, pp.33-42, 2011. ,
DOI : 10.1145/2076022.1993484
VMKit, Proceedings of the 6th ACM SIGPLAN/SIGOPS international conference on Virtual execution environments, VEE '10, pp.51-62, 2010. ,
DOI : 10.1145/1735997.1736006
URL : https://hal.archives-ouvertes.fr/inria-00354577
Java theory and practice: Safe construction techniques, 2002. ,
The Java Language Specification, 1996. ,
Call graph construction in object-oriented languages, ACM SIGPLAN Notices, vol.32, issue.10, pp.108-124, 1997. ,
DOI : 10.1145/263700.264352
Ownership-Based Isolation for Concurrent Actors on Multi-core Machines, pp.281-301, 2013. ,
DOI : 10.1007/978-3-642-39038-8_12
URL : https://hal.archives-ouvertes.fr/hal-00944012
Isolation in Maestro, 2009. ,
Capabilities for Uniqueness and Borrowing, Proceedings of the 24th European conference on Object-oriented programming, pp.354-378, 2010. ,
DOI : 10.1007/978-3-642-14107-2_17
Implementing multiple protection domains in java, Proceedings of the annual conference on USENIX Annual Technical Conference, ATEC '98, pp.22-22, 1998. ,
Adaptive online context-sensitive inlining, International Symposium on Code Generation and Optimization, 2003. CGO 2003., pp.253-264, 2003. ,
DOI : 10.1109/CGO.2003.1191550
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.1.7404
A universal modular actor formalism for artificial intelligence, Proceedings of the 3rd international joint conference on Artificial intelligence, IJCAI'73, pp.235-245, 1973. ,
Pointer analysis, Proceedings of the 2001 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering , PASTE '01, pp.54-61, 2001. ,
DOI : 10.1145/379605.379665
Islands, ACM SIGPLAN Notices, vol.26, issue.11, pp.271-285, 1991. ,
DOI : 10.1145/118014.117975
Singularity: rethinking the software stack, SIGOPS Oper. Syst. Rev, vol.41, issue.2, pp.37-49, 2007. ,
Actor frameworks for the jvm platform: a comparative analysis, Proceedings of the 7th International Conference on Principles and Practice of Programming in Java, PPPJ '09, pp.11-20, 2009. ,
Jinja is not java Archive of Formal Proofs, 2005. ,
A machine-checked model for a Java-like language, virtual machine, and compiler, ACM Transactions on Programming Languages and Systems, vol.28, issue.4, pp.619-695, 2006. ,
DOI : 10.1145/1146809.1146811
The soot framework for java program analysis: a retrospective ,
Extended ssa numbering: introducing ssa properties to languages with multi-level pointers, Proceedings of the 1996 conference of the Centre for Advanced Studies on Collaborative research, CASCON '96, p.23, 1996. ,
The Problem with Threads, Computer, vol.39, issue.5, pp.33-42, 2006. ,
DOI : 10.1109/MC.2006.180
Flexible Immutability with Frozen Objects, Proceedings of the 2nd international conference on Verified Software: Theories, Tools, Experiments, VSTTE '08, pp.192-208, 2008. ,
DOI : 10.1007/978-3-540-87873-5_17
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.146.3898
Java(tm) memory model and thread specification revision, 2013. ,
Reflection Analysis for Java, Proceedings of the Third Asian conference on Programming Languages and Systems, APLAS'05, pp.139-160, 2005. ,
DOI : 10.1007/11575467_11
A Machine-Checked, Type-Safe Model of Java Concurrency : Language , Virtual Machine, Memory Model, and Verified Compiler, 2012. ,
Dynamically checking ownership policies in concurrent c/c++ programs, ACM SIGPLAN Notices, vol.45, issue.1, pp.457-470, 2010. ,
DOI : 10.1145/1707801.1706351
JSR 121: Application Isolation API Specification ,
Towards alias-free pointers, Proceedings of the 10th European Conference on Object-Oriented Programming, ECCOP '96, pp.189-209, 1996. ,
Effective static race detection for Java, ACM SIGPLAN Notices, vol.41, issue.6, pp.308-319, 2006. ,
DOI : 10.1145/1133255.1134018
Inferring ownership transfer for efficient message passing, ACM SIGPLAN Notices, vol.46, issue.8, pp.81-90, 2011. ,
DOI : 10.1145/2038037.1941566
Principles of Program Analysis, 1999. ,
DOI : 10.1007/978-3-662-03811-6
Flexible alias protection, Proceedings of the 12th European Conference on Object-Oriented Programming, ECCOP '98, pp.158-185, 1998. ,
DOI : 10.1007/BFb0054091
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.18.4971
Incommunicado, ACM SIGPLAN Notices, vol.37, issue.11, pp.262-274, 2002. ,
DOI : 10.1145/583854.582444
On the criteria to be used in decomposing systems into modules, Communications of the ACM, vol.15, issue.12, pp.1053-1058, 1972. ,
DOI : 10.1145/361598.361623
Java components vulnerabilities -an experimental classification targeted at the osgi platform. CoRR, abs/0706, 2007. ,
URL : https://hal.archives-ouvertes.fr/inria-00157341
Pointer and escape analysis for multithreaded programs, ACM SIGPLAN Notices, vol.36, issue.7, pp.12-23, 2001. ,
DOI : 10.1145/568014.379553
Pick your contexts well, ACM SIGPLAN Notices, vol.46, issue.1, pp.17-30, 2011. ,
DOI : 10.1145/1925844.1926390
Incremental call graph reanalysis for object-oriented software maintenance, Proceedings IEEE International Conference on Software Maintenance. ICSM 2001, p.682, 2001. ,
DOI : 10.1109/ICSM.2001.972787
Kilim: Isolation-Typed Actors for Java, Proceedings of the 22nd European conference on Object-Oriented Programming, pp.104-128, 2008. ,
DOI : 10.1007/978-3-540-70592-5_6
Points-to analysis in almost linear time, Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '96, pp.32-41, 1996. ,
DOI : 10.1145/237721.237727
Compositional pointer and escape analysis for Java programs, ACM SIGPLAN Notices, vol.34, issue.10, pp.187-206, 1999. ,
DOI : 10.1145/320385.320400
Barriers reconsidered, friendlier still! SIGPLAN Not, pp.37-48, 2012. ,