Font Size: a A A

Scalable Key Technology Research, The Compilation System

Posted on:1999-03-10Degree:DoctorType:Dissertation
Country:ChinaCandidate:W P HuFull Text:PDF
GTID:1118360185495584Subject:Computer architecture
Abstract/Summary:PDF Full Text Request
The language mechanism is the main vehicle to provide abstraction. But we arc still using some "ancient" languages while software has been used everywhere. To promote software productivity, programmers want to code domain abstractions and optimizing skills, which can not be expressed explicitly in those "ancient" languages. So an extensible compiler infrastructure is designed to support users write language extensions.This paper introduces the extensible compiler architecture which is called X architecture. Then it exhibits some language mechanisms to support writing language extensions. At last, it shows a prototype system and demonstrates the extensibility of the system. The set of language mechanisms, which includes extended, is called X language. The main feature of the system is:It provides a uniform language; the program of that language can access multi-views of program (AST, class graph, type etc.). The domain abstraction vendor can extend the language incrementally to reduce the development cost of software.The main contributions of the paper are:Defines language as a set of language mechanisms, a semantics for X language is defined by merging separately defined language mechanisms. Then by analyzing the weak-points of "ancient" languages, brings the requirements-design an extensible language to support free abstraction and the multi-views programming paradigm.Defines the mirror model. The mirror includes the multi-views of program like AST, class graph, code of the compiler etc. The extensibility of X is originated from the mirror's accessibility to user's program.Defines the X architecture, It balances the requirements of efficiency and abstraction to improve reusability of the source code of a compiler.Defines a set of new language mechanisms, like polymorphism parameter passing, views union, incrementally datatype and algorithm extending. Users can program in multi-views, rule based and incremental style. It facilitates incremental language extensions.Shows how a language extension can be absorbed into a prototype system and demonstrates the extensibility of X architecture.Provides a set of language extensions accessible by C++ programmers. Let them access the technologies developed in the functional and meta programming and compiler community.X architecture can provide a suitable tool to encode domain abstraction. It is the domain abstraction vendors who bring down the cost of software development eventually.We are pretty sure the development of X architecture can reduce the cost of software development.
Keywords/Search Tags:Extensible compiler architecture, X architecture, Language Mechanism, Multi-views, Abstract data type (ADT), rewriting system, partial evaluation, incremental programming, polymorphism parameter passing
PDF Full Text Request
Related items