On Sat, Mar 23, 2013 at 2:27 PM, rusi <rustompm...@gmail.com> wrote: > On Mar 23, 4:11 pm, Fabio Zadrozny <fabi...@gmail.com> wrote: > > On Sat, Mar 23, 2013 at 12:38 AM, rusi <rustompm...@gmail.com> wrote: > > > > > > ie Eclipse-4 claims to have made plugin development (for new custom > > > languages) easier. > > > What is the relation of liclipse to eclipse 3<->4 plugin architecture? > > > > Well, it may have become a bit easier (with dltk and xtext), but it's > still > > far from trivial (you still have to know at least java, how plugins work, > > eclipse internals, creating a grammar, etc.). > > I still have one (quite general) question: > When eclipse 'does' pydev, is it mostly in java or in python? > > Using python's native parser etc makes the analysis more reliable at > the cost of more fragile, non-portable(?) etc plumbing between java > and python. > > Whereas rewriting python's parsing etc in java, makes the basic > architecture easier but will always keep you behind target when say > python changes/adds to its syntax/feature set etc. >
Parsing in PyDev is done at java (so, yes, I have to update it when Python itself goes forward). Still, note that even if I was in Python and could use the Python parser, I don't think that using the internal Python parser would be a good choice (because it ends up being too fragile for me -- i.e.: if the IDE is done using Python 2.x it wouldn't be able to analyze a Python 3 codebase -- unless it spawned scripts based on the configured Python you're developing against, but things as a proper code analysis would prove very difficult to do that way). Also, the feature set from the PyDev grammar is different from the Python grammar: For example: - it has to be fault tolerant (because you'll still want to see the outline and get code completion even if you don't have the complete file correct) - it may need to store more information in case a pretty-printing is needed later on (so, the Python grammar can get something as "a = (1)" and remove the parenthesis as they don't make part of the AST, as that's the same as "a = 1" but in case you were pretty-printing the AST you may not want to throw that away). > > Which do you choose? And are the new facilities in Juno easier for > cross-language feature-sets? > As for easier cross-language feature sets, not sure what exactly are you referring to... (but I don't think Eclipse 4 itself changed much from the existing status quo... it's may difference in the programming model is on the dependency injection, so some APIs are cleaner now -- besides the UI changes). Cheers, Fabio > -- > http://mail.python.org/mailman/listinfo/python-list >
-- http://mail.python.org/mailman/listinfo/python-list