A Modular Design for the Common Language Runtime (CLR) Architecture

  title={A Modular Design for the Common Language Runtime (CLR) Architecture},
  author={Nicu G. Fruja},
  booktitle={Abstract State Machines},
  • Nicu G. Fruja
  • Published in Abstract State Machines 2005
  • Computer Science
This paper provides a modular high-level design of the Common Language Runtime (CLR) architecture. Our design is given in terms of Abstract State Machines (ASMs) and takes the form of an interpreter. We describe the CLR as a hierarchy of eight submachines, which correspond to eight submodules into which the Common Intermediate Language (CIL) instruction set can be decomposed. 

Modeling the .NET CLR Exception Handling Mechanism for a Mathematical Analysis

This work reuse the method developed for similar work for Java and the Java Virtual Machine (JVM) in [25] with the aim of establishing some important properties of C and CLR by mathematical proofs.

The abstract state machines method for modular design and analysis of programming languages

It is shown how programming features (read: programming constructs) modularize not only the source programs, but also the program property statements and their proofs.

Coupling Design and Verification in Software Product Lines

An ASM-based method to integrate into current feature-based software design practice modular verification techniques and show the benefits of using ASM techniques for modular verification in software development.

The ASM Method: a Cornerstone in Computer Science Education

  • E. Börger
  • Computer Science
    Abstract State Machines
  • 2005
The versatility and wide applicability of the Abstract State Machines Method for the design and the analysis of computational systems has not yet been fully exploited for teaching. We suggest to use

A tribute

  • Deepak Chauhan
  • Medicine
    Journal of the Indian Society of Pedodontics and Preventive Dentistry
  • 2016
Dr. Kapil Rajiv Sharma, who was working as the Professor and head of the Department of Pediatric Dentistry at H. P. Government Dental College and Hospital, Shimla, left for heavenly abode on June 19,



Analysis of the .NET CLR Exception Handling Mechanism

We provide a complete mathematical model for the exception handling mechanism of the Common Language Runtime (CLR), the virtual machine underlying the interpretation of .NET programs. The goal is to

A high-level modular definition of the semantics of C#

Specification and Implementation Problems for C#

During the attempts to build an Abstract State Machine (ASM) model for the semantics of C# programs, this work and the comparison between the corresponding ASM models for C# and Java brought to light a few gaps and mistakes in the C# reference manual, inconsistencies with different implementations ofC#.

The Correctness of the Definite Assignment Analysis in C#

The definite assignment analysis of the C# compiler with data flow equations is formalized and the correctness of the analysis is proved.

Stacking them up: a comparison of virtual machines

  • K. J. Gough
  • Computer Science
    Proceedings 6th Australasian Computer Systems Architecture Conference. ACSAC 2001
  • 2001
In this study, a compiler was implemented which can produce output code that may be run on either the JVM or .NET platforms, and facilitates comparisons to be made both at compile time and at runtime.

Typing a multi-language intermediate code

The main theorem asserts type safety, that well-typed programs in their IL fragment do not lead to untrapped execution errors, and the formal system of this paper is an abstraction of informal and executable specifications the authors wrote for the full product during its development.

Compiling for the .NET Common Language Runtime

Renowned compiler expert John Gough presents an unprecedented "under the hood" inspection of Microsoft's .NET CLR, illuminating the key concepts underlying Microsoft's new technology and demonstrating exactly how CLR maximizes interoperability across multiple programming languages.

Java and the Java Virtual Machine: Definition, Verification, Validation

The goals of the book are to Decomposing Java and the JVM and to verify the correctness proof of the compiler.

Abstract State Machines. A Method for High-Level System Design and Analysis

This chapter discusses ASM Design and Analysis Method, which focuses on the design of ASMs based on the principles of Hierarchical System Design, as well as some of the techniques used in structured programming.

An Executable Specification of C++

The developed AsM model is validated here by providing an executable model which supports the experimentation with the ASM model by depicting the techniques on building and using AsmL as a Specification Language.