Thesis (Selection of subject)Thesis (Selection of subject)(version: 368)
Thesis details
   Login via CAS
IntelliSense Implementation of a Dynamic Language
Thesis title in Czech: Implementace IntelliSense pro dynamický jazyk
Thesis title in English: IntelliSense Implementation of a Dynamic Language
Academic year of topic announcement: 2008/2009
Thesis type: diploma thesis
Thesis language: angličtina
Department: Department of Software Engineering (32-KSI)
Supervisor: RNDr. Filip Zavoral, Ph.D.
Author: hidden - assigned and confirmed by the Study Dept.
Date of registration: 19.11.2008
Date of assignment: 19.11.2008
Date and time of defence: 07.09.2009 00:00
Date of electronic submission:07.09.2009
Date of proceeded defence: 07.09.2009
Opponents: doc. RNDr. Pavel Parízek, Ph.D.
 
 
 
Guidelines
By analyzing the abstract syntax tree of the source code offer a list of possible completions for the word just being typed or a list of all words which should be placed at the specified place. Into this analysis include all constructs defined in or referenced by the application being edited. Every offered symbol name should have a short description generated using metadata-based reflection. Propose methods how to solve problems of incomplete information of types and of declarations in dynamic languages which are fully known during runtime.
The integral part of the work will be the implementation of proposed mechanisms for the chosen dynamic language (PHP).
References
1) Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman: Compilers: Principles, Techniques, and Tools
2) J. E. Hopcroft, J. D. Ullman: Introduction to Automata Theory, Languages and Computation
3) Using IntelliSense, http://msdn.microsoft.com/en-us/library/hcw1s69b.aspx
4) PHP compiler, http://www.codeplex.com/Phalanger, http://www.php-compiler.net/
Preliminary scope of work
Analýzou abstraktního syntaktického stromu zdrojového kódu zjišťujte v reálném čase možná doplnění pro slovo, které programátor právě píše nebo bude moci na konkrétním místě napsat. Do analýzy zahrňte všechny definice referencované právě psanou aplikací. K nabízeným symbolům ať je zobrazována dokumentace generovaná z meta-dat. Navrhněte možné způsoby řešení nekompletní informace o typech a deklaracích, které jsou v dynamických jazycích k dispozici typicky až za runtimu.
Nedílnou součástí práce bude implementace navržených mechanismů pro vybraný dynamický jazyk (PHP).
Preliminary scope of work in English
By analyzing the abstract syntax tree of the source code offer a list of possible completions for the word just being typed or a list of all words which should be placed at the specified place. Into this analysis include all constructs defined in or referenced by the application being edited. Every offered symbol name should have a short description generated using metadata-based reflection. Propose methods how to solve problems of incomplete information of types and of declarations in dynamic languages which are fully known during runtime.
The integral part of the work will be the implementation of proposed mechanisms for the chosen dynamic language (PHP).
 
Charles University | Information system of Charles University | http://www.cuni.cz/UKEN-329.html