From 1f9c9ee4864d90ddf6d726f99b5ea179f225d612 Mon Sep 17 00:00:00 2001 From: Jed Barber Date: Wed, 7 May 2014 02:06:41 +1000 Subject: Exposed rule application order and version 2a parsing at command line --- src/Thue/Interpreter.hs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/Thue') diff --git a/src/Thue/Interpreter.hs b/src/Thue/Interpreter.hs index c3bdde2..2b0461d 100644 --- a/src/Thue/Interpreter.hs +++ b/src/Thue/Interpreter.hs @@ -1,4 +1,6 @@ module Thue.Interpreter ( + Choice(..), + thue, extractInfix, nextInRange @@ -18,14 +20,15 @@ data Choice = Random StdGen -thue :: ThueProgram -> IO ThueState -thue program = +thue :: ThueProgram -> Maybe Choice -> IO ThueState +thue program order = let rules = thueRules program state = thueInitialState program version = thueVersion program gen = mkStdGen 4 --chosen by fair dice roll, guaranteed to be random + choice = if (isJust order) then fromJust order else Random gen - in interpret version rules (Random gen) state + in interpret version rules choice state -- cgit