Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 47607

Summary: Add editing in alternate concrete syntax [misc]
Product: [Eclipse Project] JDT Reporter: Oyvind Harboe <oyvind.harboe>
Component: UIAssignee: JDT-UI-Inbox <jdt-ui-inbox>
Status: RESOLVED WONTFIX QA Contact:
Severity: enhancement    
Priority: P4 CC: tore
Version: 3.0Keywords: helpwanted
Target Milestone: ---   
Hardware: All   
OS: All   
Whiteboard:

Description Oyvind Harboe CLA 2003-11-27 03:44:39 EST
The idea here is to reuse the syntax skills of the programmer from other 
languages.

This is nothing new. .Net has one abstract syntax and multiple concrete 
syntaxes. The exact same program can be expressed in C# or Visual Basic .Net.

If a programmer knows e.g. Pascal, C++, Visual Basic, C#, Lisp,  etc. he can be 
frustrated when trying to figure out what the concrete syntax for a particular 
construct is in Java.

Java has an abstract syntax tree that could be rendered/viewed in Pascal, C++ 
Visual Basic, etc. 

The programmer would then be able to switch views of a Java app to e.g. Visual 
Basic .Net syntax, make some changes, and switch back to Java view.

Today the program is persisted in Java concrete syntax, which will probably be 
preferred by most. The obvious alternative is to persist the application in 
abstract syntax.

Comments would of course have to become part of the abstract syntax to allow 
round tripping between the various views.

White space formatting is just a rendering issue in this scenario(just like 
colors are used today), and the programmer would probalby loose some control 
over white space formatting, but on the other hand all the code in the universe 
would be rendered in his preferred way.

Øyvind
Comment 1 Oyvind Harboe CLA 2003-11-28 08:23:53 EST
The Delphi programming language has a large following.

Øyvind
Comment 2 Martin Aeschlimann CLA 2006-06-12 06:01:36 EDT
Definily an intersting idea for an experimental plugin. No plans for JDT to go in that direction.