mirror of
https://github.com/anoma/juvix.git
synced 2024-12-15 01:52:11 +03:00
60a191b786
* Adapts to https://github.com/anoma/juvix-stdlib/pull/86 * Adds a pass in `toEvalTransformations` to automatically inline all record projection functions, regardless of the optimization level. This is necessary to ensure that arithmetic operations and comparisons on `Nat` or `Int` are always represented directly with the corresponding built-in Core functions. This is generally highly desirable and required for the Geb target. * Adds the `inline: always` pragma which indicates that a function should always be inlined during the mandatory inlining phase, regardless of optimization level. |
||
---|---|---|
.. | ||
CLI | ||
Logic | ||
juvix.yaml | ||
README.org | ||
TicTacToe.juvix |
TicTacToe
TicTacToe
This directory contains Juvix code for a Tic-Tac-Toe game that can be run as a terminal application.
The common logic code is in Logic/
, the code specific to the terminal
application is in CLI/
.
Terminal application
To compile and run the terminal application use the following steps:
cd CLI
juvix compile TicTacToe.juvix
./TicTacToe
You will see the following output:
MiniTicTacToe
-------------
Type a number then ENTER to make a move
+---+---+---+
| 1 | 2 | 3 |
+---+---+---+
| 4 | 5 | 6 |
+---+---+---+
| 7 | 8 | 9 |
+---+---+---+
Player X: