1. 6

Kotlin is a statically-typed programming language with modern features (coroutines, string interpolation, closures, …) that runs on the JVM and is developed by jetbrains. It can call Java code and therefore easily integrates with existing codebases. The article shows some best practices which proved to be beneficial after (re-)writing a number of web services in this language.

  1.  

  2. 3

    This reminds me again of Why Kotlin Sucks and how I felt that its author didn’t actually understand the language well. Note that this article explicitly covers things like .let, mapOf, destructuring binds for iteration, as?, and more, in ways that would’ve addressed that author’s concerns quite easily.

    1. 1

      I know you mean your best but I can’t help but laugh at your list of features that are “modern”. Coroutines…closures…really?? What does “modern” even mean at this point?

      1. 3

        I think the industry definition of “modern” in programming language design is currently averaging around 30 years behind academic research.

        1. 3

          Possibly more. ML was invented in the ‘70s and Lisp in the '50s. Go is somewhere around the Cuban Missile Crisis in modernity.

        2. 1

          I should have written modern in quotes and yes I know that those things were already available in functional languages from the 70s and possibly even before that but every new language on the block is advertising those features as modern.

          Everyone who develops software outside of an ivory tower^W academia or without free choice of the language will see those features as modern.

          1. 1

            How about we just stop using the word “modern” because it doesn’t really mean anything for software?

            And c'mon, Python has had closures and something like coroutines for decades. Same for lua.

        3. 1

          Anyone here use Kotlin in production? How has been your experience?