Graph-Based Semantics of the .NET Intermediate Language

DOWNLOAD EBOOK HERE





Contents

1Introduction                                                                                                                        
1.1ProblemStatement
1.2Approach
1.3Overview
2The.NETFramework                                                                                                            
2.1Overviewof.NET
2.1.1CommonLanguageRuntime
2.1.2BaseClassLibrary
2.1.3CommonTypeSystemandCommonLanguageSpecification
2.1.4Types
2.1.5PortableExecutables
2.1.6VirtualExecutionSystem
2.1.7CodeManagement
2.1.8GarbageCollection
2.2TheIntermediateLanguage
2.2.1Directives
2.2.2ModulesandAssemblies
2.2.3Namespaces
2.2.4Methods
2.2.5TheILInstructionSet
2.2.6Generics
2.2.7NameResolution
2.3OurWork
2.4Summary
3GraphsandGraphTransformations                                                                                       
3.1Graphs
3.1.1ThePacmanExample
3.2GraphProductionRules
3.2.1ThePacmanExample-Productionrules
3.3GraphProductionSystem
3.3.1ThePacmanExample-GraphTransitionSystem
3.4GraphTransformationTool
3.4.1ThePacmanExample-GROOVE.
3.5Summary
4TranslatingILProgramstoGraphs                                                                                         
4.1Translator
4.2Meta-ModelAbstractSyntaxGraph
4.2.1High-levelstructure
4.2.2Types



4.2.3Attributes
4.2.4Instructions
4.3DesignDecisions
4.3.1Classnamesandnamespaces
4.3.2Methodsignatures
4.3.3Identifiers
4.4TranslatingC#andVB.NETtoIL
4.5Example:ILtoASG
4.6Summary
5 SpecifyingILSemanticswithGraphTransformations41
5.1StaticAnalysis
5.2ControlFlowAnalysis
5.3Modellingtheruntimeenvironment
5.3.1Meta-modeloftheFrameGraph
5.3.2Meta-modeloftheValueGraph
5.3.3Stack
5.3.4MethodFrameRepresentationandTransferringArguments
5.4Productionrules
5.4.1StartingExecution
5.4.2ObjectCreation
5.4.3Callingmethods
5.4.4CommonInstructions
5.4.5Limitations
5.5SimulationExamples
5.5.1Example:Fibonacci
5.5.2Example:Calculator
5.6Performance
5.7Summary
6Conclusion                                                                                                                       
6.1Discussion
6.1.1Implementation
6.1.2GROOVE
6.1.3Approach
6.2RelatedWork
6.3FutureWork
Appendices                                                                                                                        
AILprogramssidetoside                                                                                                        
BCalculatorExample:ILCodeandASG                                                                                    
CProductionRules-Simulation