7 ms·
Is it just me or it's strange that there are so many IDE related fixes in a programming language release?
by rooam-dev 8y ago
Is it just me or it's strange that there are so many IDE related fixes in a programming language release?
- floatboth 8y agoWell, it's a language created by an IDE company…
- rooam-dev 8y agoYeah. It used to be "choose IDE that supports your language", now it will be "choose a language that is supported by your IDE".
- giancarlostoro 8y agoI mean it's sorta in the name "Integrated"
- vorg 8y agoThe dividing line between what's a language and what's the IDE is fairly arbitrary. E.g. a language could conceivably come with a tool chain that includes CLI-driven refactoring, and an "IDE" would only need to be a graphical interface calling it.
- eloff 8y agoGo is a language like that, with e.g. the gorename tool for refactoring.
- opencl 8y agoThis is basically the idea behind the Language Server Protocol. The language toolchain provides a server and the IDE is a client. https://microsoft.github.io/language-server-protocol/ https://microsoft.github.io/language-server-protocol/
- pvg 8y agoThe dividing line between what's a language and what's the IDE is fairly arbitrary How do you figure? The language defines the runtime semantics in a way no IDE or refactoring tool does. It's a very bright line, unless you're conflating the distribution package of the language with the language itself.
- sigjuice 8y agoA language and an IDE are completely separate things.
- kevinherron 8y agoI believe those fixes are for the IDE plugin they release in parallel with every Kotlin release.
- rooam-dev 8y agoThanks!
- skocznymroczny 8y agoI think it's a symptom of times changing. People don't want to code in vi/nano anymore. A general purpose language launching today is expected to have a good support in an IDE. At least autocompletion, support for building and debugging, refactoring if possible. Also people prefer to have a one well working IDE plugin than several half-baked ones that don't offer much more than syntax highlighting. That's why IDE plugins are becoming important part of language development, either through IDE specific plugins like IntelliJ ones or more generic solutions such as language servers.
- meddlepal 8y agoThis. I really only bother touching languages with good to great IDE experiences which is why I basically concentrated on JVM tech for most of my career. The good news is that the tools story is improving across all languages these days.
- kleiba 8y agoIn other words, you're intenionally limiting your horizon because of convenience?
- meddlepal 8y agoNot really practically but yes in theory? The JVM is host to many languages with different paradigms and it is not like I don't futz around with other stuff. I refuse to write serious code in poorly tooled languages and at this point in my career there are also some areas of exploration I just don't care about (e.g. machine level programming with ASM or C/C++ and web dev with JavaScript).
- kleiba 8y agoAh, okay. What I didn't quite get from your original post was that you were talking about professional-level coding. That makes sense, I guess.
- geezerjay 8y ago
- skrebbel 8y agoIsn't that fantastic? The whole idea that developer productivity (and thus, tool support) shouldn't be a part of programming language design has been flawed from the beginning and I'm happy times are finally changing.
- seanmcdirmid 8y agoC# also has always been done like this, but 20 years ago only Microsoft could pull that off.
- pookeh 8y agoThe father of C# also created Typescript and we now see the same level of language tooling support OOTB with the Typescript compiler. It's a fantastic initiative -- in such a short time we see many IDEs support consistent auto-complete, refactoring and so much more.
- rpeden 8y agoHe also created Turbo Pascal and Delphi, which both had pretty great tooling support in their respective heydeys.
- jillesvangurp 8y agoC# emerged around the time that Java IDEs emerged. Basically, MS did a decent job with the C# language and tooling. However, it was very much inspired by Java, Java IDEs and Microsoft's own Java IDE (Visual J++). I think IBM was first with supporting refactorings for Java in Visual Age and Eclipse. Refactorings themselves emerged out of the Smalltalk community. MS was very motivated to support that for C# as they were getting worried about losing marketshare to Java at the time and because J++ got a lot of negative press (compatibiltiy issues, vendor lockin, the usual MS stuff). In the end C# was held back by the same factors that held back J++ and it took them until very recently to openly support it on platforms other than Windows.
- seanmcdirmid 8y ago
- kodablah 8y agoIt's not just you, and it becomes a huge pain for those that do lots of deep JVM development with Kotlin. I run into multiple language issues daily, and many of them are just undocumented facets of the language that you find YouTrack issues for. Many many corner cases are not accounted for, and the way Kotlin is under-spec'd and developed with so many of the IntelliJ libraries, you'll never see any independently developed implementation. This is not to say the language isn't great, it is. It's only heavy development while focused on lower level aspects that this becomes a constant theme.
- jillesvangurp 8y agoNot so strange if you realize that an IDE needs to do essentially the same type of things as a compiler in order to offer things like refactorings, autocompletion, etc. Idea developed Kotlin as a better Java. Most of their IDE is now written in it. Deep integration with the IDE was a design goal from day 1. They release the IDE plugin and compiler with the same version number. They are basically developed together. I usually find out about new Kotlin releases because my IDE prompts me to update the plugin. Happened to me this morning with 1.2.61.
- namedlambda 8y agoAn IDE is essentially an extended front-end for a compiler.