Hello World

Today at the JVM Language Summit, JetBrains is unveiling the new project we’ve been working on for almost a year now. The project is Kotlin, a new statically typed programming language for the JVM.

With Kotlin, we’re building upon the many years of experience creating development tools for different languages, and hoping to provide a language which is productive enough for today’s environment and at the same time simple enough for the ordinary programmer to learn.

Right now Kotlin is under active development and nowhere near mature enough to be used by anyone outside of the development team. What you can do today is read the language documentation and leave feedback on the design of the language — what features you like, which ones are missing, what’s confusing and so on.

One thing to note: since we’re a development tools company, we’re building first-class IDE support for Kotlin in parallel with the language itself. And as soon as the language reaches its beta stage (currently planned for the end of 2011), we’ll release both the compiler and the development tools as open-source under the Apache 2 license.

There’s still a huge amount of work ahead of us, and we’re excited to hear what you guys think about our latest endeavor. So let the discussions begin!

This entry was posted in General. Bookmark the permalink.

10 Responses to Hello World

  1. Peanut P. Pencil says:

    The documentation mentions type loaders to be added as extensions. Can you give a few words about those and if type loaded that way will be usable from Java? Gosu, for example cannot make Java see its open types for obvious technical reasons. Do you have any solution?

    • Andrey Breslav says:

      This part is still very early stage, and we are not ready to make definite statements, but it seems that you wouldn’t be able to see anything from Java, unless it has .class files on disk. There is a possibility of generating some sort of stubs for Java to see loaded types, but it’s not yet very clear if it is a real solution or not.

      • Peanut P. Pencil says:

        Oh, you just gave me an idea. So far I have been considering ways to replace the system classloader and have every object implement an interface that both Java and next-lang can see and implement. However, maybe a sort of runtime server in next-lang (Kotlin, Gosu, etc) could generate/wrap and serve up regular class files on localhost over a protocol that URLClassLoader supports. Next-lang loads the type and starts serving it to the Java realm. I’m not sure if that URLClassLoader can get into the supply chain in a typical container or IDE runtime scenario, but if it is possible it could avoid using the filesystem for classes or even java files which is the biggest pain point for code generation.

        • Andrey Breslav says:

          We would really like not to depend on custom class loading, for it’s hard to integrate with existing systems.

  2. Stephen Colebourne says:

    How do you want to receive feedback? A mailing list? Group? Comments on a blog or the wiki aren’t a terribly good approach…

  3. Aivar Annamaa says:

    Wish you luck! :)

  4. I’m inclined to suggest a google group or the like.

  5. Pingback: Blogging at the speed of thought » Project Kotlin, a new JVM language to rescue Java developers?

  6. woods says:

    Heck yeah, this is looking good!
    Good luck guys! :-)

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>