Live data from Hacker News

Escape IntelliJ: Scala and Kotlin LSPs on Emacs Eglot

jointhefreeworld.org

81–90 of 127 posts

Re: Escape IntelliJ: Scala and Kotlin LSPs on Emacs Eglot

#81
post #74
post #67

I wrote an LSP for kotlin and java recently and it's so annoying how tightly coupled all the LSP stuff is in IntelliJ to the IDE itself they have a outside LSP project which seems to be going very slow or nowhere is very sad. Note I tried to use IntelliJ to build it the performance was not nearly as nice as I would have liked still better than a lot of LSPs but still. I know a bunch of folks have tried it but I think…

I will quote the blog post announcing Kotlin as project, so naturally it is tied to InteliJ. "The next thing is also fairly straightforward: we expect Kotlin to drive the sales of IntelliJ IDEA. We’re working on a new language, but we do not plan to replace the entire ecosystem of libraries that have been built for the JVM. So you’re likely to keep using Spring and Hibernate, or other similar frameworks, in your proj…

Given how much outside support they have received they could also make a paid lsp available like they had Resharper, I would be willing to pay for a paid lsp if I use the language enough.

10$ a month for an LSP with all the bells and whistles, should be easier to maintain than an entire IDE tbh. And they can sell me on advanced features in their IDEs through it.

I just don't want to have to open a bulky IDE anymore, IDEs just suck for me as a development tool.

Re: Escape IntelliJ: Scala and Kotlin LSPs on Emacs Eglot

#82
post #72

I agree that IntelliJ is a monster of a resource hog, but I have yet to find an editor where code navigation is as good. That's basically all I use it for these days, in the days of LLMs, and I still think it's worth it. VSCode, especially for golang, is terrible. I might be holding it wrong, but I've really tried, and it's just not good enough. Before LLMs, when I still refactored by hand, coworkers who were using v…

Saying that VS Code is terrible for Go is simply false. The Go extension is regularly updated and works extremely well. Sure, it lacks some advanced refactoring features available in IntelliJ, like function parameters reordering, but gopls supports most refactoring you'd need to do day to day..

I think OP talks about code navigation, which is objectively terrible on vscode in general

Re: Escape IntelliJ: Scala and Kotlin LSPs on Emacs Eglot

#83
It's great that Emacs gets more support of course, but personally I've never really got the hang of it. I actually like IntelliJ. To the point that I can't even bear VS Code. And for simple editing, vi is still my thing. I don't think that will ever change. I assume Emacs sits somewhere between the two.

Re: Escape IntelliJ: Scala and Kotlin LSPs on Emacs Eglot

#85
I've been using Goland/IntelliJ since I graduated. Been paying for it for years. But the resource hog and I guess focus on writing a mediocre AI side panel really killed it for me.

The main improvements lately were:

- line/function prediction

- Claude Code plugin

And I can use Claude Code in any terminal. So I've switched to zed.dev and use Claude there. Wish it had the line prediction though.

Re: Escape IntelliJ: Scala and Kotlin LSPs on Emacs Eglot

#86

> But what do you actually get with IntelliJ? A massive, monolithic Java application that frequently hogs 8GB+ of RAM, locks up your system while “indexing pre-built binaries,” and forces you into a closed proprietary ecosystem. This is just exaggeration. I use IntelliJIDEA everyday (on mac) with multiple projects open and tbh they have optimized the IDE a lot to make it faster. I'm not saying it's perfect, but it's…

IntelliJ (actually Android Studio based on IntelliJ) was my first real IDE and real programming experience. I was so blown away ! Almost 15 years later, nothing else matches the out of the box experience of IntelliJ, atleast for JVM based languages.

> IntelliJ (actually Android Studio based on IntelliJ) was my first real IDE and real programming experience. I was so blown away !

I switched to IntelliJ back when people where still arguing which of the two between Eclipse or NetBeans was better (fools!): that is, before some of the commenters here were born.

Heck, I bought IntelliJ when the world was ending in the Mayan calendar, it was something like 75% off because the world was going to end in a few weeks anyway.

But since 10+ years I'm using only... Emacs.

Emacs now with tree-sitter, LSPs, native-compilation, magit and the LLMs at ease with Un*x CLI tools make it so that IntelliJ looks like a behemoth. From a glorious past but still a behemoth.

Re: Escape IntelliJ: Scala and Kotlin LSPs on Emacs Eglot

#87
post #23

Earlier quoted context omitted.

Also, like where else would the indices live? They are in memory to make going to definition, source, analysis etc fast. It's not even using java objects for these, so a feature-equivalent solution would be similarly "fat".

I don’t know, using Vim and Exuberant Ctags can give you a significant part of these features for a very lower footprint. But to be clear, it’s not a ready-to-go path on parity with DX that IntelliJ provides. Hackers are often exceptionally good at optimizing the hidden parts no one give a shit until everything crumble under systemic slowness, but they often also are very bad at designing even a decent UX for everyth…

When I worked as a Scala developer years ago, I still used JetBrains IDEs for some things but I did most of my work in Emacs using ENSIME and ggtags/xref as a fallback. I ended up using ggtags elsewhere as well, and was pretty impressed with both how far it got me and how fast it was.

Re: Escape IntelliJ: Scala and Kotlin LSPs on Emacs Eglot

#88

I agree that IntelliJ is a monster of a resource hog, but I have yet to find an editor where code navigation is as good. That's basically all I use it for these days, in the days of LLMs, and I still think it's worth it. VSCode, especially for golang, is terrible. I might be holding it wrong, but I've really tried, and it's just not good enough. Before LLMs, when I still refactored by hand, coworkers who were using v…

This is my experience and it really sucks that Jetbrains has devolved into such a poorly run company. It's clear a lot of their real talent who cared about the programming side and refactoring left years ago. Now it seems like all their product decisions are from bog standard non-technical business people who chase buzzwords. This is a major problem for them because they fragmented their IDE codebase so much properly…

I've used IntelliJ since 2004 and it's always been a resource hog and always perpetually just beyond the faculties of the typical developer workstation. They've struggled with it since forever.

I don't think they've devolved at all. They've always been a mix of brilliance (far ahead of everyone else on refactoring and semantic analysis, etc) and challenges. And it has a lot to do I think with just being a relatively small team.

And the wave of LLM/agentic stuff has been a serious threat to them. Their efforts with Junie and the things before that have been faltering steps.

I do think it's beyond the point where they probably should just rewrite the core things they do in Rust. Their issue since day one has been it seems they're in a perpetual fight with the JVM garbage collector.

Re: Escape IntelliJ: Scala and Kotlin LSPs on Emacs Eglot

#89

The fact we still don't have a decent Java language server is one of my canaries for the fact that LLMs still, generally speaking, can't ship. There is undeniably demand for this sort of thing, but nobody is coming to meet it. (jdtls, bless it for trying, is just not good)

My understanding was the biggest issue has always been that javac is a poor foundation for any kind of live tooling like LSPs?

It’s less “make me a Java LSP” than “rewrite javac around incremental compilation and exposing a semantic DB”. Which sounds like a much harder problem.

Re: Escape IntelliJ: Scala and Kotlin LSPs on Emacs Eglot

#90
post #48
post #41

Earlier quoted context omitted.

Yup. It's been particularly bad since around 2023/2024 and only got worse with all the AI crap, though I think that's been almost a useful scapegoat for them recently

I've tried (all?) the AI stuff they published, it was awful; but I was able to easily uninstall/deactivate those features once I realized it was not helpful. On my MBP M4 or my Linux laptop, I never get the impression that it's bloat. Prior to using IntelliJ I had been a Eclipse user and I've never experienced even 5% of the pain I had with Eclipse since moving to IntelliJ. When everything is going to shite, I welcom…

Emacs is great for LISP-like langs.

IJ is great for JVM langs.

Sure one can cross-use the above, but that's harder.

Still great to have an IDE agnostic Kotlin LSP!

Post reply on HN