# Introduction

![](https://2315696797-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MG5KYv9P-1vJ21xvhk_%2F-MVmFT9jtWEqC1uB7BAd%2F-MVmFWvazvAF9LCpmjWm%2FSpaceTode%400.5x.png?alt=media\&token=442bab2f-705d-461b-a947-daf6c5a0c2d8)

SpaceTode is a spatial programming language.\
I use it to make new elements in the [SandPond engine](https://github.com/l2wilson94/SandPond).\
It is heavily inspired by [SPLAT](https://github.com/DaveAckley/SPLAT/).

Its source code is here: [github.com/l2wilson94/SpaceTode](https://github.com/l2wilson94/SpaceTode/)

## What does it look like?

You draw spatial rules for atoms to follow, like this one:

```
element Sand {
    @ => _
    _    @
}
```

In this example...\
The `@` represents the sand atom.\
The `_` represents an empty space.\
So... the rule makes the sand atom fall down into any empty space.

## Try it out

The easiest way to try writing SpaceTode is by [downloading the SandPond engine](https://github.com/l2wilson94/SandPond/archive/main.zip), and then writing your code in the `CustomElements.js` file.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://todepond.gitbook.io/spacetode/master.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
