Start with a tiny Kotlin program that stores a name and prints a greeting.

main function A runnable Kotlin program can start in a top-level `main` function.

Hello Kotlin

name
Hello.kt
Replay: real traced execution (multi-file project)
fun main() {
    val name = "Kotlin"
    val message = "Hello, $name!"

    println(message)
}
fun main() {
    val name = "Ada"
    val message = "Hello, $name!"

    println(message)
}
fun main() {
    val name = "Jet"
    val message = "Hello, $name!"

    println(message)
}
  1. name ← Kotlin, message ← Hello, Kotlin!

    1fun main() {2    val name→ Kotlin = "Kotlin" //@name="Ada", "Jet"3    val message→ Hello, Kotlin! = "Hello, $nameKotlin!"45    println(messageHello, Kotlin!)6}
    outputHello, Kotlin!
  1. name ← Ada, message ← Hello, Ada!

    1fun main() {2    val name→ Ada = "Ada"3    val message→ Hello, Ada! = "Hello, $nameAda!"45    println(messageHello, Ada!)6}
    outputHello, Ada!
  1. name ← Jet, message ← Hello, Jet!

    1fun main() {2    val name→ Jet = "Jet"3    val message→ Hello, Jet! = "Hello, $nameJet!"45    println(messageHello, Jet!)6}
    outputHello, Jet!

Follow the Greeting

  1. name starts as "Kotlin".
  2. The message text uses $name.
  3. message becomes Hello, Kotlin!.
  4. println(message) prints Hello, Kotlin!. | name | message | | --- | --- | | Kotlin | Hello, Kotlin! | | Ada | Hello, Ada! | | Jet | Hello, Jet! |

Exercise: Hello.kt

Reproduce Hello, Kotlin!, then try Ada and Jet and predict each greeting before running it.