Re: CEDET, future and Emacs
Alex Ott <[email protected]> Sun, 28 Mar 2021 20:08:24 +0200
| Newsgroups | gmane.emacs.cedet |
|---|---|
| Message-ID | <CALV1_=KzkEw8UXKAGMDv5QvvnrMnYqJ1NwhpGfeUdS=ezokhUg@mail.gmail.com> |
--===============6417153658958879324== Content-Type: multipart/alternative; boundary="000000000000667eff05be9ca74a" --000000000000667eff05be9ca74a Content-Type: text/plain; charset="UTF-8" I think that you can also look into reusing LSP if it's available, but expand on the "traditional" IDE features - refactoring (maybe starting with simple rename, method extract, etc.), more templates for code, etc. - for these things we may not need to have full-blown parsers. Another area is support for build tools, like, Maven for Java, etc. - these tools bring more context for code completion, etc. I had a private branch of CEDET that had better support for Maven, Leiningen, and other build tools: https://github.com/alexott/cedet/tree/devel - for example, I had working completion for Java when using 3rd party libraries: https://alexott.blogspot.com/2012/10/new-version-of-article-about-emacscedet.html P.S. Unfortunately, right now I don't have much free time, so I surrended & using Idea for Java/Scala code On Sun, Mar 28, 2021 at 8:00 PM Fermin <[email protected]> wrote: > You are right, keeping up with new languages is quite hard, I think this > is why CEDET need more people involve, we can never match > the level of adoption of LSP, but we can provide a decent programming > experience for a variety of languages. > > Focusing on a balance between popular (to attract users) and stable > (languages that don't require a lot of changes over time) can be > an interesting strategy, I'm not saying to focus all the energy into > writing a javascript production parser or a Ada parser, something in > between, that can be stable enough and popular enough. > > For now, I think improving the actual parsing infrastructure is more > critical that supporting new languages, giving the synchronous nature > of CEDET, right now is not well suited for large projects, Emacs now > support (partially, and in a hackish way) asynchronous processing > <https://elpa.gnu.org/packages/async.html>, > and I hope in the near future, with native compilation > <https://www.emacswiki.org/emacs/GccEmacs>, the elisp performance can > improve drastically ,which can really play really well if CEDET is prepared > to take advantage of this changes. > > > > On 28/03/2021 19:13, Alex Ott wrote: > > Imho, LSP is still required - it's quite hard to build grammars for > multiple languages, and maintain them as languages evolve... > > On Sun, Mar 28, 2021 at 6:15 PM Pankaj Jangid <[email protected]> > wrote: > >> Vladimir Nikishkin <[email protected]> writes: >> >> > Things are actually moving (albeit not super fast), just not inside the >> SF >> > repo. Since cedet was merged into the main emacs tree, you need to grep >> > emacs' git log, not sf repos. >> >> Yup. Just saw one more commit today. I build emacs-master daily for my >> personal use. >> >> By "not moving" I meant that the expectations are high. Things like LSP >> would not be required if CEDET is seriously taken care of. >> >> >> >> >> _______________________________________________ >> Cedet-devel mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/cedet-devel >> > > > -- > With best wishes, Alex Ott > http://alexott.net/ > Twitter: alexott_en (English), alexott (Russian) > > > _______________________________________________ > Cedet-devel mailing [email protected]://lists.sourceforge.net/lists/listinfo/cedet-devel > > _______________________________________________ > Cedet-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/cedet-devel > -- With best wishes, Alex Ott http://alexott.net/ Twitter: alexott_en (English), alexott (Russian) --000000000000667eff05be9ca74a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div>I think that you can also look into reusing LSP if it= 's available, but expand on the "traditional" IDE features - = refactoring (maybe starting with simple rename, method extract, etc.), more= templates for code, etc. - for these things we may not need to have full-b= lown parsers.</div><div><br></div><div>Another area is support for build to= ols, like, Maven for Java, etc. - these tools bring more context for code c= ompletion, etc.=C2=A0 I had a private branch of CEDET that had better suppo= rt for Maven, Leiningen, and other build tools: <a href=3D"https://github.c= om/alexott/cedet/tree/devel">https://github.com/alexott/cedet/tree/devel</a= > - for example, I had working completion for Java when using 3rd party lib= raries: <a href=3D"https://alexott.blogspot.com/2012/10/new-version-of-arti= cle-about-emacscedet.html">https://alexott.blogspot.com/2012/10/new-version= -of-article-about-emacscedet.html</a></div><div><br></div><div>P.S. Unfortu= nately, right now I don't have much free time, so I surrended & usi= ng Idea for Java/Scala code<br></div></div><br><div class=3D"gmail_quote"><= div dir=3D"ltr" class=3D"gmail_attr">On Sun, Mar 28, 2021 at 8:00 PM Fermin= <<a href=3D"mailto:[email protected]">[email protected]</a>> wrote:<br><= /div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bo= rder-left:1px solid rgb(204,204,204);padding-left:1ex"> =20 =20 =20 <div> <p>You are right, keeping up with new languages is quite hard, I think this is why CEDET need more people involve, we can never match<br> the level of adoption of LSP, but we can provide a decent programming experience for a variety of languages.</p> <p>Focusing on a balance between popular (to attract users) and stable (languages that don't require a lot of changes over time) can be<br> an interesting strategy, I'm not saying to focus all the energy into writing a javascript production parser or a Ada parser, something in<br> =C2=A0between, that can be stable enough and popular enough.</p> <p>For now, I think improving the actual parsing infrastructure is more critical that supporting new languages, giving the synchronous nature<br> of CEDET, right now is not well suited for large projects, Emacs now support (partially, and in a hackish way) <a href=3D"https://elpa= .gnu.org/packages/async.html" target=3D"_blank">asynchronous processing</a>, <br> and I hope in the near future, with <a href=3D"https://www.emacswiki.= org/emacs/GccEmacs" target=3D"_blank">native compilation</a>, the elisp performance can improve drastically ,which can really play really well if CEDET is prepared to take advantage of this changes.</p> <p><br> </p> <br> <div>On 28/03/2021 19:13, Alex Ott wrote:<br> </div> <blockquote type=3D"cite"> =20 <div dir=3D"ltr">Imho, LSP is still required - it's quite hard to build grammars for multiple languages, and maintain them as languages evolve...<br> </div> <br> <div class=3D"gmail_quote"> <div dir=3D"ltr" class=3D"gmail_attr">On Sun, Mar 28, 2021 at 6:15 PM Pankaj Jangid <<a href=3D"mailto:[email protected]" ta= rget=3D"_blank">[email protected]</a>> wrote:<br> </div> <blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex= ;border-left:1px solid rgb(204,204,204);padding-left:1ex">Vladimir Nikishkin <<a href=3D"mailto:[email protected]" target=3D"_b= lank">[email protected]</a>> writes:<br> <br> > Things are actually moving (albeit not super fast), just not inside the SF<br> > repo. Since cedet was merged into the main emacs tree, you need to grep<br> > emacs' git log, not sf repos.<br> <br> Yup. Just saw one more commit today. I build emacs-master daily for my<br> personal use.<br> <br> By "not moving" I meant that the expectations are high.= Things like LSP<br> would not be required if CEDET is seriously taken care of.<br> <br> <br> <br> <br> _______________________________________________<br> Cedet-devel mailing list<br> <a href=3D"mailto:[email protected]" target=3D"_b= lank">[email protected]</a><br> <a href=3D"https://lists.sourceforge.net/lists/listinfo/cedet-dev= el" rel=3D"noreferrer" target=3D"_blank">https://lists.sourceforge.net/list= s/listinfo/cedet-devel</a><br> </blockquote> </div> <br clear=3D"all"> <br> -- <br> <div dir=3D"ltr"> <div dir=3D"ltr"> <div>With best wishes, =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0Alex Ott<br> <a href=3D"http://alexott.net/" target=3D"_blank">http://alexot= t.net/</a><br> Twitter: alexott_en (English), alexott (Russian)<br> </div> </div> </div> <br> <fieldset></fieldset> <br> <fieldset></fieldset> <pre>_______________________________________________ Cedet-devel mailing list <a href=3D"mailto:[email protected]" target=3D"_blank">Cede= [email protected]</a> <a href=3D"https://lists.sourceforge.net/lists/listinfo/cedet-devel" target= =3D"_blank">https://lists.sourceforge.net/lists/listinfo/cedet-devel</a> </pre> </blockquote> </div> _______________________________________________<br> Cedet-devel mailing list<br> <a href=3D"mailto:[email protected]" target=3D"_blank">Cede= [email protected]</a><br> <a href=3D"https://lists.sourceforge.net/lists/listinfo/cedet-devel" rel=3D= "noreferrer" target=3D"_blank">https://lists.sourceforge.net/lists/listinfo= /cedet-devel</a><br> </blockquote></div><br clear=3D"all"><br>-- <br><div dir=3D"ltr" class=3D"g= mail_signature"><div dir=3D"ltr"><div>With best wishes, =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Alex Ott<br><a href=3D"= http://alexott.net/" target=3D"_blank">http://alexott.net/</a><br>Twitter: = alexott_en (English), alexott (Russian)<br></div></div></div> --000000000000667eff05be9ca74a-- --===============6417153658958879324== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline --===============6417153658958879324== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Cedet-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/cedet-devel --===============6417153658958879324==--