-module(gchess). -compile([no_auto_import, nowarn_unused_vars]). -export([main/0]). -spec main() -> nil. main() -> Game_actor = game:new_game_from_fen( <<"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQK2R w KQkq - 0 1"/utf8>> ), game:print_board(Game_actor), _assert_subject = game:all_legal_moves(Game_actor), List_of_moves = case _assert_subject of _ -> _assert_subject; _assert_fail -> erlang:error(#{gleam_error => let_assert, message => <<"Assertion pattern match failed"/utf8>>, value => _assert_fail, module => <<"gchess"/utf8>>, function => <<"main"/utf8>>, line => 15}) end, gleam@list:each( List_of_moves, fun(Move) -> gleam@io:println(move:to_string(Move)) end ), game:apply_move( Game_actor, {castle, {position, e, one}, {position, g, one}} ), game:print_board(Game_actor).