Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Framework for Developing Compiler-like Components Jackline Ssanyu ( Software Engineering and Technology Group) Eindhoven University of Technology Supervisors:

Similar presentations


Presentation on theme: "A Framework for Developing Compiler-like Components Jackline Ssanyu ( Software Engineering and Technology Group) Eindhoven University of Technology Supervisors:"— Presentation transcript:

1 A Framework for Developing Compiler-like Components Jackline Ssanyu ( Software Engineering and Technology Group) Eindhoven University of Technology Supervisors: 1. Mark Van De Brand 2. Kees Hemeric

2 Outline Research aim Motivation The Component Framework Research Questions Case study

3 Research Aim Design and develop a framework for developing compiler- like components - based-on existing theory, techniques and tools. - by applying MDSD and CBSD design principles.

4 Motivation Compiler construction has well-defined tasks – scanning, parsing, tree building, tree Rewriting, ……. – tasks are used in other applications, not necessarily compilers – suitable to be defined as components with simple interfaces. – can combine components in different ways to build applications for different purposes. Compiler field started in 1950’s – before use of components and models in software construction. – CBSD and MDSD came later. – existing compiler-related tools have not really utilized them. Example 1 – Many tools are based on one parsing algorithm – LL, LR,..... – E.g Lex/Yacc, JavaCC, Eli, Antlr, Grammatica – Would like to have a grammar component connected to parser components of different algorithms.

5 Motivation Example 2 - Tools require effort to learn them in order to use them – input specifications are mixture of grammar and code – no clear separation between PIM and PSM – would like to define algorithms for developing different components at a high level of abstraction. – To enable users provide input specifications in the usual mathematical notation. – use model transformations to later realize the specifications and algorithms into a specific programming language.

6 The Component Framework Characteristics - components will be described at a high-level of abstraction. - components of the same type but using different algorithms to solve a problem. - users will be able to adjust attributes of the components to generate applications of their choice. - ability to combine components in different ways to get different applications. - embed the framework in existing frameworks such as Eclipse or.NET

7 Proposed of Components Front-end compiler components - Scanner - Parser - Tree-builder - Tree Matcher - Tree Rewriting - Structure Editor - Formatter

8 Research Questions What are the right abstractions and notions for components at PIM level that can later be realized into different PSMs? What kind of transformations do we need to obtain concrete applications from the models of abstraction? How will the components be organized(Architecture)?

9 Case Study Will consider one or more of the following: - Grammar Workbench. - A toolkit for a compiler course. - Processing Natural language into SQL queries for data manipulation. - Processing of XML - Small programming language for a teaching environment. - Small mathematical language (grammar for sets, propositions, Boolean Algebra).

10 Questions & Suggestions Thank You! The End


Download ppt "A Framework for Developing Compiler-like Components Jackline Ssanyu ( Software Engineering and Technology Group) Eindhoven University of Technology Supervisors:"

Similar presentations


Ads by Google