mirror of
https://github.com/ProvableHQ/leo.git
synced 2024-12-27 04:01:47 +03:00
48a1f0590b
* Add assert statements to AST * Add support in passes * Add parser support * Add tyc support * Add support for assert statements in the remaining passes * Fix examples, tests, and regen expectations * Fmt * Regen expectations |
||
---|---|---|
.. | ||
inputs | ||
src | ||
.gitignore | ||
program.json | ||
README.md | ||
run.sh |
A standard game of Tic-Tac-Toe in Leo.
⭕ ❕ ⭕ ❕ ❌
➖ ➕ ➖ ➕ ➖
⭕ ❕ ❌ ❕ ⭕
➖ ➕ ➖ ➕ ➖
❌ ❕ ❌ ❕ ⭕
Representing State
Leo allows users to define composite data types with the struct
keyword.
The game board is represented by a struct called Board
, which contains three Row
s.
An alternative representation would be to use an array, however, these are not yet supported in Leo.
Language Features
struct
declarations- conditional statements
- early termination. Leo allows users to return from a function early using the
return
keyword.
Running the Program
Leo provides users with a command line interface for compiling and running Leo programs.
Users may either specify input values via the command line or provide an input file in inputs/
.
Providing inputs via the command line.
- Run
leo run <function_name> <input_1> <input_2> ...
See ./run.sh
for an example.
Using an input file.
- Modify
inputs/tictactoe.in
with the desired inputs. - Run
leo run <function_name>