Call the same helper with different values.

calls A function can be called more than once with different arguments.

Multiple Calls

first
MultipleCalls.kt
Replay: real traced execution (multi-file project)
fun addFee(amount: Int): Int {
    return amount + 2
}

fun main() {
    val first = 4
    val small = addFee(first)
    val large = addFee(10)
    val difference = large - small

    println("small=$small")
    println("difference=$difference")
}
fun addFee(amount: Int): Int {
    return amount + 2
}

fun main() {
    val first = 1
    val small = addFee(first)
    val large = addFee(10)
    val difference = large - small

    println("small=$small")
    println("difference=$difference")
}
fun addFee(amount: Int): Int {
    return amount + 2
}

fun main() {
    val first = 7
    val small = addFee(first)
    val large = addFee(10)
    val difference = large - small

    println("small=$small")
    println("difference=$difference")
}
  1. first ← 4

    5fun main() {6    val first→ 4 = 4 //@first=1, 77    val small = addFee(first4)8    val large = addFee(10)
  2. fun addFee(amount: Int): Int

    pass 1 of 2
    1fun addFee(amount4: Int): Int {2    return amount4 + 23}
  3. small ← 6

    6val first = 4 //@first=1, 77val small→ 6 = addFee(first4)8val large = addFee(10)9val difference = large - small
  4. fun addFee(amount: Int): Int

    pass 2 of 2
    1fun addFee(amount10: Int): Int {2    return amount10 + 23}
  5. large ← 12, difference ← 6

    7    val small = addFee(first)8    val large→ 12 = addFee(10)9    val difference→ 6 = large12 - small61011    println("small=$small6")12    println("difference=$difference6")13}
    outputsmall=6
    difference=6
  1. first ← 1

    5fun main() {6    val first→ 1 = 17    val small = addFee(first1)8    val large = addFee(10)
  2. fun addFee(amount: Int): Int

    pass 1 of 2
    1fun addFee(amount1: Int): Int {2    return amount1 + 23}
  3. small ← 3

    6val first = 17val small→ 3 = addFee(first1)8val large = addFee(10)9val difference = large - small
  4. fun addFee(amount: Int): Int

    pass 2 of 2
    1fun addFee(amount10: Int): Int {2    return amount10 + 23}
  5. large ← 12, difference ← 9

    7    val small = addFee(first)8    val large→ 12 = addFee(10)9    val difference→ 9 = large12 - small31011    println("small=$small3")12    println("difference=$difference9")13}
    outputsmall=3
    difference=9
  1. first ← 7

    5fun main() {6    val first→ 7 = 77    val small = addFee(first7)8    val large = addFee(10)
  2. fun addFee(amount: Int): Int

    pass 1 of 2
    1fun addFee(amount7: Int): Int {2    return amount7 + 23}
  3. small ← 9

    6val first = 77val small→ 9 = addFee(first7)8val large = addFee(10)9val difference = large - small
  4. fun addFee(amount: Int): Int

    pass 2 of 2
    1fun addFee(amount10: Int): Int {2    return amount10 + 23}
  5. large ← 12, difference ← 3

    7    val small = addFee(first)8    val large→ 12 = addFee(10)9    val difference→ 3 = large12 - small91011    println("small=$small9")12    println("difference=$difference3")13}
    outputsmall=9
    difference=3