Kotlin: Incompetence * Motivation = Innovation?

Post on 15-Jan-2015

594 views 2 download

Tags:

description

 

Transcript of Kotlin: Incompetence * Motivation = Innovation?

Wednesday, October 3, 12

About Me

• Project lead of Kotlin ➡ at JetBrains since 2010

• EG member of JSR-335➡ Project Lambda

2

Andrey Breslav

Wednesday, October 3, 12

Outline

• Where Kotlin comes from

• Where features come from

3

Wednesday, October 3, 12

Motivation

4

1995 2012

Wednesday, October 3, 12

5

Modern languagefor Industry

Right Abstractions Safety Tool Support

Interoperability

Wednesday, October 3, 12

6Users

Expert

Wednesday, October 3, 12

6

Change theworld!

UsersExpert

Wednesday, October 3, 12

6

Change theworld!

UsersExpert

Wednesday, October 3, 12

6

Change theworld!

UsersExpert

It's impossible!

Wednesday, October 3, 12

Incompetence

• Thinking out of the box

• Without knowing it

7

LampsGreat for requirements!

Wednesday, October 3, 12

Competence

8

Great for implementations

(if you have enough courage)

Wednesday, October 3, 12

9

– We hate writing stupid constructors!..

– And getters/setters!..

– We want to use fields!..

Wednesday, October 3, 12

10

– Can't I just say 3.toString()?

Wednesday, October 3, 12

11

– String doesn't have enough methods!..

Wednesday, October 3, 12

12

– One return value is too restricting!..

Wednesday, October 3, 12

13

– List<String> contains objects, doesn't it?!.

Wednesday, October 3, 12

Kotlin's Collections

14

Wednesday, October 3, 12

15

– Can you figure out those nulls?!.

Wednesday, October 3, 12

16

– Doesn't it know that <TD> must be inside a <TR>?!.

Wednesday, October 3, 12

17

– I could use it for the browser, types and all...

Wednesday, October 3, 12

Kotlin Resources

• Docs: http://kotlin.jetbrains.org

• Demo: http://kotlin-demo.jetbrains.com

• Code: http://github.com/jetbrains/kotlin

• Twitter:➡ @project_kotlin

➡ @abreslav

18

Wednesday, October 3, 12