-
-
Notifications
You must be signed in to change notification settings - Fork 186
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Performance of js2-parse #524
Comments
What about a newer version of Emacs? There might be some backwards compatibility code that isn't as fast as how it's implemented in newer versions of Emacs, as well as improvements to the byte code compiler. |
Have you tried it in Emacs 25? It will require a recompilation to see the speed-up. Or, in Emacs 24.4 or newer, you can Of the recent changes, the one that is likely to have caused such a slowdown is the transition to |
You are right, on emacs 26.2, the current js2-mode version is just slightly slower than the 2017 js2-mode version (something like a 0.4s vs. 0.45s difference). Thanks for that hint, and the reason why I use that old emacs version is simple: Debian Stable. |
🤷♂️ You can try the other solution I suggested, then. |
BTW, https://repology.org/project/emacs/versions says Debian Stable includes 25.1 already. |
Ah, thank you again, I didn't notice (or forgot) that the emacs versions are arranged in separate packages, i.e. I had to install the package emacs25 instead of just updating... |
My question is: What is your impression about the performance of (js2-parse)?
I implemented code analysis on top of js2-mode, in order to achieve better support for completion, navigation, and such in the context of our projects (quite a bit specialized, based on our way to use Dojo in our projects).
For some js file with about 2000 lines of code (I can't simply publish it as it's proprietary code), I experienced bad performance of js2-parse. I then compared:
(the js2-mode.el was byte-compiled in both cases, both with the emacs version (24.5.1) I currently use)
So, parsing time for that file increased significantly over the last two years.
As I haven't really time to dive into that parsing code myself, I have the following questions:
For me, this means that for now I will stay with the 2017 version, as already 0.4s is quite much in terms of user experience.
The text was updated successfully, but these errors were encountered: