# Variables

Variables in Aurora are defined using no keywords, but just the variable's name and its value.

```
a = 1
```

Variables can be reassigned.

```
a = 1
a = 2
```

Variables can be reassigned to a different type.

```
a = 1
a = "Hello, world!"
```

You can add, subtract, multiply, and divide variables.

```
a = 1
a += 1 # 2
a -= 1 # 1
a *= 2 # 2
a /= 2 # 1
```

Variables are scoped to the block they are defined in, or globally if defined at the top level.

```
a = 1
if true
a = 2
end
print a # 2
do
b = 1
end
print b # Error: b is not defined
```

## Constants

Constants are denoted by an uppercase first letter.

```
A = 1
```

Constants cannot be reassigned.

```
A = 1
A = 2 # Error: A is a constant
```