90 likes | 108 Vues
This toolkit aims to minimize effort in Eclipse IDE development by reusing existing architecture and enabling fast prototype development, while addressing the challenges of support and development workload. It introduces a front-end code model that offers improved access, scalability, and search capabilities. The proposed technique involves the XML DOM projection of the code model, allowing for flexibility and reuse across programming languages.
E N D
Towards Common Language Toolkit Institute for System Programming of RAS, www.ispras.ru UniTESK Lab, www.unitesk.com Sergey Gomanyuk, sergg@ispras.ru
Goal Eclipse IDE development under condition of effort minimization
Toolkit wanted ! Reuse of existing architecture Fast prototype development Still huge amount of work Effort of support and development is big enough JDT Architecture Cloning Java Development Tools (JDT) Clone C/C++ Development Tools (CDT)
Toolkit architecture decomposition Toolkit Front-end Code model: access, scalability, search IDE Features
Dynamic Language Toolkit (DLTK) • Built-in code model with fixed structure • Reuse of existing front-end capability • Programming language structure can be incompatible with built-in model structure • Built-in code model interaction support • IDE Features implementation based on built-in code model Toolkit Front-end Code model: access, scalability, search IDE Features
IMP (also known asSAFARI) • LPG parser generator • No restrictions on programming language structure • Existing front-end functionality duplication • Lack of code model scalability and search support • Language neutral IDE features implementation • LPG interfacesdependency (is going to be removed) Toolkit Front-end Code model: access, scalability, search IDE Features
Problems to solve • DLTK – code model with fixed structure • IMP – lack of code model interaction support and present-time dependency on the specific parser generator
Technique Proposed • XML DOM projection of front-end code model • No restrictions on code model structure • Reuse of existing front-end written in Java or other programming language • XML DOM is persisted in XML DB • Scalability • XQuery search • XML DOMandpredefined attributes - input for language neutral implementation of IDE features Toolkit Front-end Code model: access, scalability, search IDE Features