Kotlin - набирающий популярность язык от компании JetBrains.

Я слышал много положительных отзывов об этом языке.

Пару дней для развлечения пишу маленькие задачки на try.kotlinlang.org.

Сначала было очень непривычно и казалось, что в Kotlin нет ничего такого, ради чего надо было бы учить этот язык. Нет мощной системы типов как в Haskell, нет макросов как в Lisp, нет полных по Тьюрингу шаблонов как в C++. К тому же язык выполняется на JVM и ему еще надо доказывать чем он лучше Java и других сильных конкурентов, Scala и Clojure.

Немного поизучав Kotlin я нашел следующие очень интересные моменты из-за которых складывается впечатления, что язык достоин внимания:

  • Data классы очень удобно использовать в ентерпрайзе и разного рода админках
  • Properties всевозможных видов, позволяющие легко задавать поведение полей и кастомизировать
  • Очень удобное переопределение операторов полезное для написания разного рода dsl,
  • Множестов способов задать функцию, приятные средства для задания анонимных и лямбда функций, а так же специальные кейсы для функций, которые имеют один аргумент или являются единственным выражением
  • Destructuring параметров
  • Возможно добавлять методы к уже существующим классам

Это то, что с чем я столкнулся за час изучения Kotlin и те вещи которые мне очень понравились, действительно складывается впечатления, что его писали люди, желающие значительно ускорить промышленную разработку. Кажется, что с его помощью можно делать жестко оптимизированные решения заточенные на скорость, благодаря системе типов и плотной интеграции с JVM. А тем кто хочет сделать гибкое решение для многих пользователей или написать прототип, должна быть полезна выразительность и динамичность языка, для этого есть поддержка.

Также надо смотреть на нативный и браузерный варианты, которые позволяют переиспользовать код вне JVM окружения.