?. / ?[]

A null receiver skips access; an existing receiver still follows normal bounds rules.

Example.kalm kalm
pub fun first(names: List<Text>?) -> Text?:
    return names?[0]?.upper()

Learn more.