---
title: 'Variables and scope: the no-surprises chapter'
part: 'Part III — The Language'
partNumber: 3
order: 2
subtitle: 'let, assignment, one scope per procedure, and contextual names'
---

_Content coming soon._ This chapter will distinguish Core names from shadowable Library
names, explain that `step` is contextual only inside a `for` header, and use `pos` and
`heading` as ordinary variable names where no command call is intended.

<Run>{`// Variables and a simple spiral
let r = 5
repeat 20 [
  fd r  rt 20
  r += 1
]`}</Run>

<Checkpoint chapterId="ch-14">Chapter content coming soon.</Checkpoint>
