# let: giving a value a name [Syntax and values](README.md) ```text let name = "Ada" let score = 0 let finished = false ``` `let` declares one new name in the current lexical scope. The initializer is evaluated before the name becomes visible, so a declaration cannot refer to itself: ```text let score = score + 1 # invalid unless an outer score is visible ``` There is no declaration without an initializer and no type-annotation syntax. ## Example ```pliro # language: en let score = 10 let bonus = score + 5 say score, bonus ``` ## Related entries [Syntax and values](README.md) · [Built-ins](../builtins/README.md) · [Programming guides](../guides/README.md)