Kotlin Eclipse Plugin 0.5.0

New in this release

  • Kotlin Beta 2 support
  • Semantic highlighting
  • Rename refactoring
  • Mark Occurrences
  • Extract Variable refactoring
  • Navigation to Kotlin standard library sources

Drag to your running Eclipse workspace to install Kotlin Plugin for Eclipse

Continue reading

Posted in Tools | 2 Comments

Contest: Go Cross-Platform with Kotlin!

Hi All,

Have you ever heard about RoboVM? It lets you create beautiful native apps for iOS & Android, allowing you to share code between platforms. RoboVM translates Java bytecode into native ARM or x86 code.
The latest RoboVM release makes it super easy to get up and running with Kotlin! And today you have a good incentive to play with it, by taking part in the first ever Kotlin Mobile contest! Simply install the RoboVM plugin for IntelliJ IDEA or download RoboVM Studio, and create a cross-platform Kotlin app. Continue reading

Posted in Android, Events | Tagged , , | 7 Comments

Kotlin 1.0 Beta 2 is Out!

The first update to our Beta is here! We are stabilizing, so it’s mostly bug-fixing and changes to the standard library.

Language changes

We are now enforcing single-instantiation inheritance constraint on type parameters: the same T can not have both List<Int> and List<String> as its upper bounds. This has been always forbidden for classes, now the same check applies for type parameters. Continue reading

Posted in Releases | 36 Comments

Webinar Recording: Functional Programming with Kotlin

The recording of our October 22nd webinar, Functional Programming with Kotlin, is now available on JetBrainsTV YouTube channel.

In this talk, Mike Hearn provides a brief introduction to programming in Kotlin via practical example: creating a textfield with the autocomplete suggestions while typing. Demo project is available on GitHub.

Topics covered include:

  • Use of functional transforms
  • Immutability
  • Lazyness and working with lazy infinite sequences
  • The use of funKTionale, a library that extends Kotlin with a few features known from Haskell
  • Pattern matching
  • Reactive user interfaces

Continue reading

Posted in Events | 1 Comment

The Kotlin Language: 1.0 Beta is Here!

We are extremely pleased to present Kotlin 1.0 Beta for JVM and Android!

To recap: Kotlin is a modern programming language that JetBrains has been working on for quite some time now.

This post gives an overview of where we are and what’s coming next. Changes in this version are listed here.

The story behind Kotlin

Kotlin was conceived in 2010. Ten years of Java development led us to feeling that our productivity at JetBrains could be improved significantly by using a modern JVM language alongside Java. Having evaluated other available options, we decided that a new language was needed there, and we had the expertise and resources to create such a language. Our primary line of business is making tools for developers, and the guiding principle is that the best way to make an awesome product for the users is to make an awesome tool we need ourselves. This worked with IntelliJ IDEA, ReSharper, and many other IDEs, as well as TeamCity and other server products, so we set off to apply the same principle for another developer tool — a programming language. Continue reading

Posted in Releases | 35 Comments

Kotlin 1.0 Beta Candidate is Out!

We are happy to present Kotlin Beta Candidate. An official 1.0 Beta will be out soon. By now, the binary format is finalized, no major language changes are planned, and only a few changes in the standard library are coming.

In this post we describe the changes since M14, including

  • imports from objects,
  • new safer collection interfaces,
  • inlining for Java constants,
  • better support for Java statics,
  • and more. Continue reading
Posted in Releases | 71 Comments

Join Live Webinar — Functional Programming with Kotlin

Join us this Thursday, October 22nd, 14:00 – 15:00 GMT (10:00 – 11:00 AM EDT) for our free webinar, Functional Programming with Kotlin with Mike Hearn

In this talk, Mike Hearn will provide a brief introduction to programming in Kotlin via worked, practical examples, with a focus on functional programming.

Topics covered will include:

  • Use of functional transforms
  • Immutability
  • Lazyness and working with lazy infinite sequences
  • The use of funKtionale, a library that extends Kotlin with a few features known from Haskell
  • Pattern matching
  • Reactive user interfaces

Everyone is welcome!

You can ask questions to Mike and suggest themes for future webinars in comments.

Mike Hearn Mike Hearn is a Java, Kotlin and C++ developer who works on digital currency related software. Prior to that he was a senior software engineer at Google, where he spent over seven years working on a range of products including Earth, Maps, Gmail and the accounts system.

Posted in Events | Tagged , , , , , | 5 Comments

Kotlin M14 is out!

With the release approaching, we switch to shorter milestones. Meet M14 that brings the following changes:

  • Support for annotations on file classes
  • New Java API for the Standard Library
  • operator modifier for operators
  • Backing fields are now accessed through a synthetic field variable Continue reading
Posted in Releases | 31 Comments

What’s new in Standard Library M13 and M14

Standard Library continues its evolution:

  • Lazy<T> type has been introduced
  • More concise syntax for storing properties in a Map
  • Final changes in the Char arithmetics
  • Plus and minus operations on a collection now depend on its type
  • New scope functions: apply and run
  • Right-open ranges
  • Trimming indents in multiline strings literals
  • and more

Read details

Posted in Libraries | 18 Comments

Call for Feedback: Java Statics, Result Expressions and More

Thank you all for the feedback we got on the previous call! Here comes another round of changes and adjustments. Your opinions and use cases are welcome. Continue reading

Posted in Language design | 58 Comments