Code selection through object code optimization
ACM Transactions on Programming Languages and Systems (TOPLAS) - Lecture notes in computer science Vol. 174
Algebraic specifications of computable and semicomputable data types
Theoretical Computer Science
Handbook of logic in computer science (vol. 1)
Inside Windows 95
Java intermediate bytecodes: ACM SIGPLAN workshop on intermediate representations (IR'95)
IR '95 Papers from the 1995 ACM SIGPLAN workshop on Intermediate representations
Smalltalk, objects, and design
Smalltalk, objects, and design
A type system for Java bytecode subroutines
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A type system for object initialization in the Java bytecode language
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A specification of Java loading and bytecode verification
CCS '98 Proceedings of the 5th ACM conference on Computer and communications security
Algebraic models of microprocessors: the correctness and verification of a simple computer
MDS '95 Proceedings of the second international conference on Mathematics of dependable systems II
Initial Algebra Semantics and Continuous Algebras
Journal of the ACM (JACM)
The problem of programming communication with changing machines: a proposed solution
Communications of the ACM
Language Prototyping: An Algebraic Specification Approach: Vol. V
Language Prototyping: An Algebraic Specification Approach: Vol. V
Java Virtual Machine Specification
Java Virtual Machine Specification
The Operational Semantics of a Java Secure Processor
Formal Syntax and Semantics of Java
A Formal Specification of Java Virtual Machine Instructions for Objects, Methods and Subrountines
Formal Syntax and Semantics of Java
Algebraic Models of Superscalar Microprocessor Implementations: A Case Study
Proceedings of the ESPRIT Working Group 8533 on Prospects for Hardware Foundations: NADA - New Hardware Design Methods, Survey Chapters
Hierarchies of Spatially Extended Systems and Synchronous Concurrent Algorithms
Proceedings of the ESPRIT Working Group 8533 on Prospects for Hardware Foundations: NADA - New Hardware Design Methods, Survey Chapters
Defining the Java Virtual Machine as Platform for Provably Correct Java Compilation
MFCS '98 Proceedings of the 23rd International Symposium on Mathematical Foundations of Computer Science
VM/370: a study of multiplicity and usefulness
IBM Systems Journal
Formalizing the safety of Java, the Java virtual machine, and Java card
ACM Computing Surveys (CSUR)
Algebraic Models of Superscalar Microprocessor Implementations: A Case Study
Proceedings of the ESPRIT Working Group 8533 on Prospects for Hardware Foundations: NADA - New Hardware Design Methods, Survey Chapters
Hierarchies of Spatially Extended Systems and Synchronous Concurrent Algorithms
Proceedings of the ESPRIT Working Group 8533 on Prospects for Hardware Foundations: NADA - New Hardware Design Methods, Survey Chapters
Formal Verification of Explicitly Parallel Microprocessors
CHARME '99 Proceedings of the 10th IFIP WG 10.5 Advanced Research Working Conference on Correct Hardware Design and Verification Methods
Verifying a Simple Pipelined Microprocessor Using Maude
WADT '01 Selected papers from the 15th International Workshop on Recent Trends in Algebraic Development Techniques
Algebraic models of simultaneous multithreaded and multi-core processors
CALCO'07 Proceedings of the 2nd international conference on Algebra and coalgebra in computer science
Hi-index | 0.00 |
We develop an algebraic specification of the architecture of an abstract and simplified version of the Java Virtual Machine (JVM). This concentration on the implementation-independent features of the machine allows us to build a clean and easily comprehensible model in which its structure is emphasised. We then axiomatise the semantics of programs operating on this architecture. We also consider how we can concretise this abstract model which provides us with a firm foundation for exploring the entire JVM and thus of analysing the correctness of Java implementations.