Kotlin is #23 in this irrelevant index.
I first learned Java in 1997 and have been using it professionally since 2005. If your Kotlin code is pretty indistinguishable from your Java code, you aren't using Kotlin properly. Here is what I wrote on this topic in…
Many of Kotlin's profound improvements will never find their way into Java because it's 25 years too late to do so. Java improves where it still can, which is the right thing to do. Sometimes Java even manages to…
If you think Kotlin is marginally better than Java, you probably have a superficial understanding of Kotlin. Kotlin is vastly better than Java, which isn't surprising because Kotlin was designed 15 years later with the…
Thanks for the offer! I’ll give Mill another shot the next time Gradle drives me crazy. :-)
They transitioned to a product company 5+ years ago. https://gradle.com Gradle's complexity comes from at least two places: 1. The original vision of solving complex multi-technology/language Enterprise builds. 2. Poor…
I'm afraid that no current config language is an obvious fit for Mill. That's because Mill is fully reactive and doesn't distinguish between build configuration and execution by design.
Modern config languages offer strong validation and advanced IDE support, which is essential for a great user experience. https://pkl-lang.org/intellij/current/highlights.html
I gave Mill a try earlier this year. My hope was to escape the nightmare that is Gradle, which I've been using for many years. Mill sounds great in theory (except for the Scala DSL). Unfortunately, I couldn't get a…
Just wanted to mention that there are much better config languages than Starlark by now: CUE, Pkl, etc.
Java 21+ (virtual threads).
In theory, yes. But I doubt that we’ll see a TS IDE plugin that underlines violated constraints with red squiggles anytime soon. :-)
TS tooling won’t tell you when your config value violates the constraint “isBetween(0, 100)” or “matches(Regex(…))”. Among other things.
> I do wish they just contributed to nickel or something else though rather than doing their NIH as usual. Did Nickel exist in 2018? (Someone here said that Pkl did.)
Refactorings are one example where LSP can’t match IntelliJ. A language server also takes far more skill and effort to implement than the equivalent IntelliJ plugin, where much of the heavy lifting is done by the…
Java modules are fine but don’t offer a solution for version conflicts.
Java doesn’t have a universal practical solution for this. Principled solutions based on custom class loaders (such as OSGi) added tremendous complexity and created more problems than they solved. Other solutions such…
Katlin isn’t developed by Google but by JetBrains. It is a multi-platform language and isn’t tied to the JVM.
The headline is misleading. Whereas current vaccines don’t protect from infection with Delta and later variants, they still protect from serious illness and death. From the article: > Experts and regulators broadly…
Kotlin is #23 in this irrelevant index.
I first learned Java in 1997 and have been using it professionally since 2005. If your Kotlin code is pretty indistinguishable from your Java code, you aren't using Kotlin properly. Here is what I wrote on this topic in…
Many of Kotlin's profound improvements will never find their way into Java because it's 25 years too late to do so. Java improves where it still can, which is the right thing to do. Sometimes Java even manages to…
If you think Kotlin is marginally better than Java, you probably have a superficial understanding of Kotlin. Kotlin is vastly better than Java, which isn't surprising because Kotlin was designed 15 years later with the…
Thanks for the offer! I’ll give Mill another shot the next time Gradle drives me crazy. :-)
They transitioned to a product company 5+ years ago. https://gradle.com Gradle's complexity comes from at least two places: 1. The original vision of solving complex multi-technology/language Enterprise builds. 2. Poor…
I'm afraid that no current config language is an obvious fit for Mill. That's because Mill is fully reactive and doesn't distinguish between build configuration and execution by design.
Modern config languages offer strong validation and advanced IDE support, which is essential for a great user experience. https://pkl-lang.org/intellij/current/highlights.html
I gave Mill a try earlier this year. My hope was to escape the nightmare that is Gradle, which I've been using for many years. Mill sounds great in theory (except for the Scala DSL). Unfortunately, I couldn't get a…
Just wanted to mention that there are much better config languages than Starlark by now: CUE, Pkl, etc.
Java 21+ (virtual threads).
In theory, yes. But I doubt that we’ll see a TS IDE plugin that underlines violated constraints with red squiggles anytime soon. :-)
TS tooling won’t tell you when your config value violates the constraint “isBetween(0, 100)” or “matches(Regex(…))”. Among other things.
> I do wish they just contributed to nickel or something else though rather than doing their NIH as usual. Did Nickel exist in 2018? (Someone here said that Pkl did.)
Refactorings are one example where LSP can’t match IntelliJ. A language server also takes far more skill and effort to implement than the equivalent IntelliJ plugin, where much of the heavy lifting is done by the…
Java modules are fine but don’t offer a solution for version conflicts.
Java doesn’t have a universal practical solution for this. Principled solutions based on custom class loaders (such as OSGi) added tremendous complexity and created more problems than they solved. Other solutions such…
Katlin isn’t developed by Google but by JetBrains. It is a multi-platform language and isn’t tied to the JVM.
The headline is misleading. Whereas current vaccines don’t protect from infection with Delta and later variants, they still protect from serious illness and death. From the article: > Experts and regulators broadly…