> > I guess the other side of that question, why couldn't we do the same as >> what tern does in JSDT? >> > > Many people have tried (original JSDT team, vjet, red hat, and a few others) and the conclusion is the same - keeping up with javascript language with a parser written in java is a *massive* undertaking.
> Hence why using existing tools being done in the javascript world is being considered instead. Glad to hear that. I would like to add too, that tern.java provides several linter (validator) https://github.com/angelozerr/tern.java/wiki/Tern-Linter based on powerful JavaScript linter like : * Lint https://github.com/angelozerr/tern.java/wiki/Tern-Linter-Lint * JSHint https://github.com/angelozerr/tern.java/wiki/Tern-Linter-JSHint * ESLint https://github.com/angelozerr/tern.java/wiki/Tern-Linter-ESLint * JSCS https://github.com/angelozerr/tern.java/wiki/Tern-Linter-JSCS You can use thoses validators together, so for instance you can use Lint (for type checking) and JSHint (to validate ES6). And it's like tern using, there are a big community around JSHint, ESLint, etc, not only Eclipse. For license term, I don't know -( Regard's Angelo 2015-10-14 17:05 GMT+02:00 Gorkem Ercan <[email protected]>: > > > On 14 Oct 2015, at 10:38, Doug Schaefer wrote: > > On 2015-10-14, 5:03 AM, "[email protected] on behalf of Max >> Rydahl Andersen" <[email protected] on behalf of >> [email protected]> wrote: >> >> Thanks Gorkem, that's what I suspected. >>>>> >>>> >>>> For your information, it's possible to execute tern.java with J2V8, >>>> but it's not official because: >>>> >>>> * I'm waiting for J2V8 supports OSGi >>>> https://github.com/eclipsesource/J2V8/issues/37 >>>> * it's a little slower than node.js but I have implemented tern client >>>> with J2V8 very quick. See >>>> >>>> >>>> https://github.com/angelozerr/tern.java/tree/master/core/tern.server.j2v8 >>>> * there are little limitation because some tern plugin like node.js >>>> uses require function to supppirt completion for required modules. >>>> >>>> Cool. I was hoping that but. Ian’s done some great work with J2V8 >>>> and we should make sure we can use it from Eclipse projects. If there >>>> are performance issues, we should try and fix them. At the end of it, >>>> it’s the same engine that node uses. >>>> >>> >>> Yes, so using j2v8 and/or node.js probably end up having the same issues >>> (if any) around getting licensed cleared. >>> >> >> Yeah, approving V8 would be interesting. But I can see j2v8 being >> important for a variety of use cases (React pre-rendering for example). >> Unless Oracle improves the performance of Nashorn that is, but I’m not >> counting not that at the moment. >> >> >>> I guess the other side of that question, why couldn't we do the same >>>>> as what tern does in JSDT? >>>>> >>>> >>> Many people have tried (original JSDT team, vjet, red hat, and a few >>> others) and the conclusion is the same - keeping up with javascript >>> language with a parser written in java is a *massive* undertaking. >>> >>> Hence why using existing tools being done in the javascript world is >>> being considered instead. >>> >> >> I think that’s what we’ve concluded as well. >> >> >>> IMHO, I think it's a very hard and long task. tern.js supports ES6 and >>>> provides the capability to implement tern plugins like requirejs, >>>> nodejs, angular, dojo, YUI, etc >>>> I hope it will support ES7 decorator (used by Angular2 if I have well >>>> understood). >>>> >>> >>> As it can be used in any context, there are a lot of editors like >>>> Emacs, Vim, Sublime, Atom, Bracket which uses ternjs. So there are a >>>> big community around ternjs. >>>> When you write a tern plugin, other editors can use it (write once, >>>> run anywhere). I see this benefit with >>>> https://github.com/angelozerr/tern-tabris or >>>> https://github.com/angelozerr/tern-phaser where there are CodeMirror, >>>> Atom, Sublime users who improve thoses plugins, that I use inside >>>> tern.java. >>>> >>>> I think it should be very shame to give up ternjs just for a license >>>> term. >>>> >>> >>> But that is unfortunate the reality of OpenSource - if the tern >>> community does not clearly put a license on their various projects and >>> keep track of who contributed to their project their project is >>> unfortunately seen as a liability to use. >>> >>> If we can ensure/encourge that what we include in tern js has a clear >>> license from start this is not a problem. >>> >> >> Orion has tern.js approved. We’ve been assuming that wasn’t the issue. >> >> Has anyone tried to approve node? I thought Cordova gave that a go but >> failed. Or was that specific to Cordova? >> >> > Thym has not tried node.js. It was for Cordova's mobile platform's. I have > today filed a new CQ for Cordova CLI which is a node.js based tool. > > node.js actually has an exempt-prerequisite CQ [2]. I am not sure if > anyone tried to file one for redistribution so far. > > Tern.js is probably a workable case because it has a very small dependency > tree (see below) > and Orion is not using things like glob and minimatch and hence they have > not CQed those. > > [email protected] > ├─ [email protected] > ├─ [email protected] > │ ├─ [email protected] > │ └─ [email protected] > ├─ [email protected] > │ ├─ [email protected] > │ └─ [email protected] > │ ├─ [email protected] > │ └─ [email protected] > └─ [email protected] > > > However the root issue is the ability to utilize full strength of node.js. > As a comparison Grunt or Bower has a > dependency tree that is 3 screens long. > > [1] https://dev.eclipse.org/ipzilla/show_bug.cgi?id=10264 > [2] https://dev.eclipse.org/ipzilla/show_bug.cgi?id=9479 > > > > >>> Yes, it would be a shame, but it’s the reality we face at Eclipse. >>>> We really need modern web development tooling to be one of the core >>>> pieces of the Eclipse IDE. And being able to add support for new >>>> frameworks quickly is very important. Angular 2 and React are critical >>>> there IMHO, Angular 1 and Ember are probably in the mix there too. And >>>> as we all know there’s a new one every day :). >>>> >>>> We need to do what we need to do, though. Hopefully we can work this >>>> out with tern. If it doesn’t, we need to consider alternatives. >>>> >>> >>> got anything in mind ? >>> >> >> The main alternative we’ve considered is writing our own from scratch. But >> as you suggest, that’s a huge amount of work and we really have better >> things we should be doing to improve the Eclipse IDE. >> >> The other alternative is to do what Xtext has done and download node after >> asking the user if it’s OK. >> >> I also think that the Eclipse Marketplace offers solutions. We could >> provide packages that mix Eclipse and non-Eclipse things. I also hope we >> can extend the Eclipse installer to add 3rd party things from the >> Marketplace, just as Visual Studio has done. >> >> That’s likely the path I’ll pursue for Qt. Seems like most ISV lawyers >> have more lenient rules that Eclipse lawyers so I can still build a >> product based on tern.js/java even if Eclipse doesn’t allow it. As long as >> I have some way to easily get this feature to Eclipse users and my QNX >> customers, I’m happy. >> >> Doug >> >> >>> /max >>> >>> >>>> Regard's Angelo >>>> >>>> >>>> 2015-10-11 0:02 GMT+02:00 Dawid Pakuła >>>> <[email protected]<mailto:[email protected]>>: >>>> Hi, >>>> >>>> currently it’s not possible to do many things in JSDT by design (JDT >>>> history). JSDT build thirth semi model (something between AST and >>>> language model) during it’s inference process. This model have a lot >>>> of limitations like: >>>> 1. Unable to change return type based on arguments >>>> 2. Unable to register method/field without AST >>>> 3. Unable to drop fields wrongly detected by default inferencer >>>> >>>> So a lot of context based completions and semantic analysis aren’t >>>> possible without second index and additional (external) processing. >>>> >>>> Via bug 466589 [1] I requested porting DLTK inference engine as fully >>>> pluggable, simple and fast alternative to current. >>>> >>>> [1] - https://bugs.eclipse.org/bugs/show_bug.cgi?id=466589 >>>> -- >>>> Dawid Pakuła >>>> +48 795 996 064<tel:%2B48%20795%20996%20064> >>>> >>>> >>>> On 10 October 2015 at 23:12:37, Doug Schaefer >>>> ([email protected]<mailto:[email protected]>) wrote: >>>> >>>> Thanks Gorkem, that's what I suspected. >>>> >>>> I guess the other side of that question, why couldn't we do the same >>>> as what tern does in JSDT? For QML we have been working on an ANTLR 4 >>>> grammars for JavaScript and still need to make sure it's correct and >>>> then do the hard part, the semantic analysis. But it could be a path >>>> to success as well. >>>> >>>> Sent from my BlackBerry 10 smartphone on the Rogers network. >>>> Original Message >>>> From: Gorkem Ercan >>>> Sent: Saturday, October 10, 2015 12:06 PM >>>> To: General discussion of project-wide or architectural issues. >>>> Reply To: General discussion of project-wide or architectural issues. >>>> Subject: Re: [wtp-dev] Draft JSDT plan is now on Wiki >>>> >>>> >>>> On 9 Oct 2015, at 21:43, Doug Schaefer wrote: >>>> >>>> Quick question on the tern.java integration. If I¹m correct, it >>>>> looks >>>>> like >>>>> it¹s optional depending on whether tern.java is installed on the >>>>> user¹s >>>>> system. What are the arguments against making a tighter integration >>>>> if >>>>> tern is so much better than JSDT could ever do. >>>>> >>>>> It is legal. tern.java uses tern.js which uses node.js. Our current >>>> CQs >>>> for node.js, and npm are >>>> for prerequisite exempt only and it is not enough for tighter >>>> integration. >>>> Also tern.js and all its npm dependencies needs to go through legal >>>> process. >>>> >>>> Until eclipse makes its peace with node.js and npm, we will continue >>>> to >>>> have restrictions on >>>> utilizing tools that are based on node.js. >>>> >>>> I don¹t think I need to state this but we do want the best user >>>>> experience >>>>> possible so the user doesn¹t have to concern themselves about >>>>> installing >>>>> stuff they probably don¹t know about. >>>>> >>>>> Doug. >>>>> >>>>> On 2015-10-09, 11:37 AM, >>>>> "[email protected]<mailto:[email protected]> on >>>>> behalf of >>>>> Gorkem >>>>> Ercan" >>>>> <[email protected]<mailto:[email protected]> on >>>>> behalf of >>>>> [email protected]<mailto:[email protected]>> >>>>> wrote: >>>>> >>>>> >>>>>> I have moved the draft JSDT plan to wiki [1] and cleaned up the >>>>>> bugzilla >>>>>> references. >>>>>> I think it is still missing a few bugzillas but feel free to >>>>>> add/remove, >>>>>> contribute. >>>>>> >>>>>> Once we are happy with it we can move it to eclipse project >>>>>> management >>>>>> portal. >>>>>> >>>>>> [1] https://wiki.eclipse.org/JSDT/JSDT_Neon_Plan >>>>>> -- >>>>>> Gorkem >>>>>> _______________________________________________ >>>>>> wtp-dev mailing list >>>>>> [email protected]<mailto:[email protected]> >>>>>> To change your delivery options, retrieve your password, or >>>>>> unsubscribe >>>>>> from this list, visit >>>>>> https://dev.eclipse.org/mailman/listinfo/wtp-dev >>>>>> >>>>> >>>>> _______________________________________________ >>>>> wtp-dev mailing list >>>>> [email protected]<mailto:[email protected]> >>>>> To change your delivery options, retrieve your password, or >>>>> unsubscribe from this list, visit >>>>> https://dev.eclipse.org/mailman/listinfo/wtp-dev >>>>> >>>> _______________________________________________ >>>> wtp-dev mailing list >>>> [email protected]<mailto:[email protected]> >>>> To change your delivery options, retrieve your password, or >>>> unsubscribe from this list, visit >>>> https://dev.eclipse.org/mailman/listinfo/wtp-dev >>>> _______________________________________________ >>>> wtp-dev mailing list >>>> [email protected]<mailto:[email protected]> >>>> To change your delivery options, retrieve your password, or >>>> unsubscribe from this list, visit >>>> https://dev.eclipse.org/mailman/listinfo/wtp-dev >>>> >>>> _______________________________________________ >>>> wtp-dev mailing list >>>> [email protected]<mailto:[email protected]> >>>> To change your delivery options, retrieve your password, or >>>> unsubscribe from this list, visit >>>> https://dev.eclipse.org/mailman/listinfo/wtp-dev >>>> >>>> _______________________________________________ >>>> wtp-dev mailing list >>>> [email protected] >>>> To change your delivery options, retrieve your password, or >>>> unsubscribe from this list, visit >>>> https://dev.eclipse.org/mailman/listinfo/wtp-dev >>>> >>> >>> >>> /max >>> http://about.me/maxandersen >>> _______________________________________________ >>> wtp-dev mailing list >>> [email protected] >>> To change your delivery options, retrieve your password, or unsubscribe >>> from this list, visit >>> https://dev.eclipse.org/mailman/listinfo/wtp-dev >>> >> >> _______________________________________________ >> wtp-dev mailing list >> [email protected] >> To change your delivery options, retrieve your password, or unsubscribe >> from this list, visit >> https://dev.eclipse.org/mailman/listinfo/wtp-dev >> > _______________________________________________ > wtp-dev mailing list > [email protected] > To change your delivery options, retrieve your password, or unsubscribe > from this list, visit > https://dev.eclipse.org/mailman/listinfo/wtp-dev >
_______________________________________________ wtp-dev mailing list [email protected] To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/wtp-dev
