This page is no longer maintained — Please continue to the home page at www.scala-lang.org

[GSOC] Self-introduction and my proposal "Advanced Semantic Tools for SDT"

No replies
Jin Mingjian
Joined: 2010-04-03,
User offline. Last seen 2 years 22 weeks ago.
Hi, Scala community. Hi, everyone. 
I am Jin Mingjian, one Phd candidate in my final term, from the Institute of Electrical Engineering, Chinese Academy of Sciences. I have proposed one GSOC project, called "Advanced Semantic Tools for the Scala IDE for Eclipse", which stems from the project idea #11 listed in [1]. I am an old man in Eclipse community. So I believe that I could contribute to the SDT(that is, Scala IDE for Eclipse) in many aspects.
For some reason, I decided to take part in this year's GSOC just about two weeks ago. I need a little time to be familiar with SDT. I have reviewed partial codes of SDT, and port SDT svn codes to work well under the Eclipse 3.6M6(latest Eclipse milestone). I've blogged some results and my thoughts here[2]. 
Any comments and criticisms are always welcome:) I'd like to contribute those codes. One thing is that how the SDT team think about the porting effort for the latest Eclipse. If no, I will consider to rollback my Eclipse enirvoment to R3.5 to avoid branching. If yes, I can be held responsible for the alignment with the Eclipse milestone when all dependent projects have aligned with latest Eclipse already.
I have planned 5 items, first three items of which are listed in ideas' page[1]: 
1. A mechanism for showing inferred type hovers for expressions  comments: this item is the one mentioned in the GSOC idea list[1]. However I think this should be redefined through some use cases. I show one basic screenshot for the type hover of current SDT. In another side, how to infer the type? using the Scala itself's type inferrer? or code a new one from scratch? 2. Visual indicators of the application of implicit conversions and the provision of implicit parameters.  3. A mechanism for transiently expanding inferred types and implicit conversion and parameters inline in source text. 
By me:4. Mark Ocurrencences 5. Refactoringcomment: this is a big topic indeed:) I know someone are doing independent framework for refactoring from the recent maillist posts by Miles or others. I have some experiences refactoring support in the Eclipse IMP[3]. Although it is hard to provide the perfect solution in one summer, SDT really need refactoring to support (inter/intra)project-level modification. It will be the killing reason for the acceptance of SDT. I hope to add my little efforts if possible.
If some one has some comments on these ideas or has new ideas, please point out them. I am considering to put them into the proposal and sort them into a list with appropriate priorities. Ideally, the SDT will support all functionalities been implementated by JDT with some Scala individualities. Thanks first:)

Note: the idea of "Testing framework for semantically driven features of the Scala IDE for Eclipse" seem ok for me as well. But, as I guess, it seem in a relatively low priority. And I also consider to write some functional or integration tests when coding.

Best regards,Jin Mingjian

[1] http://www.scala-lang.org/gsoc2010[2] http://jmj-eclipse.blogspot.com/2010/04/align-scala-development-tools-with.html [3] http://www.eclipse.org/imp/

Copyright © 2012 École Polytechnique Fédérale de Lausanne (EPFL), Lausanne, Switzerland