5 ms·
Is there a language server for Swift that does not suck? I believe swift is a good language, however its ecosystem being steered by apple is a massive red flag
by eptcyka 3y ago
Is there a language server for Swift that does not suck?
I believe swift is a good language, however its ecosystem being steered by apple is a massive red flag. It also suffers a bit from being a commercially developed language in that its developers are clearly incentivized to add more features.
- georgelyon 3y agosourcekit-lsp works really well, VSCode integration is solid[1]. I've been using VSCode+dev-containers+sourcekit-lsp for a couple years now for Linux development on macOS and it has been really nice. I agree that this is a must-have for idiomatic Swift. It is really hard to write the long-named-functions and get all the variable names correct without reasonable autocomplete. [1]: https://www.swift.org/blog/vscode-extension/ https://www.swift.org/blog/vscode-extension/
- jwells89 3y agoVS Code isn’t too bad, it after ~20 years of Xcode/Project Builder, muscle memory for keybinds and UI in general is strong. Hoping that someone uses the LSP to write a cross platform “Xcode Lite” or something along those lines.
- georgelyon 3y agoIt wasn't too bad to switch for me, but the problem is going back and forth. I don't love over-customizing my IDE but I've created my own keybindings for the commands I mis-type most (Command-R to run being the main culprit). Both Xcode and VSCode support custom key bindings and this isn't something that the LSP is responsible. UI is a different matter. Xcode is still miles ahead in performance tooling.
- cmrdporcupine 3y agoI was curious and noticed that this looks reasonable: https://github.com/emacs-lsp/lsp-sourcekit https://github.com/emacs-lsp/lsp-sourcekit Emacs + lsp-mode + sourcekit + company-mode etc looks reasonably close to what I get with Rust in Emacs. If I were doing application development I'd maybe consider Swift.
- deleted 3y ago[deleted]
- dcgudeman 3y ago> a commercially developed language in that its developers are clearly incentivized to add more features. Do you have any evidence this is true? Most programming languages are developed either by a company (C#, Java, Swift, Go) or heavily influenced by many companies (Python, JavaScript, C++). Java had been criticized forever (until very recently) for it's slow pace of development and it was 100% controlled by either Sun or Oracle. Comments like these show just how little developers investigate the reasons why features they personally dislike were introduced to a language.
- MBCook 3y agoAs a professional Java developer its new feature pace is still slow. It’s a little better but it hasn’t been fast in a VERY long time. But that’s OK. They do an amazing job of maintaining backwards compatibility and making things fit in the language well as well as trying to get it right the first time. Some languages are more willing to remove things that don’t work. Others are willing to have multiple different attempts that all work completely differently every few years. In many ways that’s just not Java’s style. And that’s OK.
- tkubacki 3y agoIf you want to move faster in JVM world use Kotlin. There is no alternative in .NET world- that’s why JVM ecosystem is much better (and bigger)
- MBCook 3y agoI’m actually quite happy with how it’s done, but I know many others aren’t.
- pjmlp 3y agoF# would be the alternative.
- tkubacki 3y agoF# is not mainstream lang - it’s more like Clojure for .NET. My point was - you don’t have that variety in .NET as in JVM (Scala, Kotlin, Groovy are all relatively mainstream)
- zapzupnz 3y agoIt’s not a commercially developed language; it’s open source and many of its features have been developed outside of Apple.