From c2bd0afb7d257d7f0add0c42fef03dcf05ba06d5 Mon Sep 17 00:00:00 2001 From: Alexander Heldt Date: Sat, 8 Nov 2025 14:35:35 +0100 Subject: [PATCH] go v2 --- go/src/go.gleam | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/go/src/go.gleam b/go/src/go.gleam index 2f783d7..19678b1 100644 --- a/go/src/go.gleam +++ b/go/src/go.gleam @@ -21,12 +21,19 @@ pub fn apply_rules( rule3: fn(Game) -> Result(Game, String), rule4: fn(Game) -> Result(Game, String), ) -> Game { - case rule2(game) |> rule1 |> result.try(rule3) |> result.try(rule4) { - Error(err) -> Game(..game, error: err) - Ok(g) -> - case g.player { - Black -> Game(..g, player: White) - White -> Game(..g, player: Black) - } + game + |> rule1 + |> result.map(rule2) + |> result.try(rule3) + |> result.try(rule4) + |> fn(result) { + case result { + Error(err) -> Game(..game, error: err) + Ok(g) -> + case g.player { + Black -> Game(..g, player: White) + White -> Game(..g, player: Black) + } + } } }