aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Reducer/RKNL.hs
diff options
context:
space:
mode:
authorMarvin Borner2024-02-29 11:35:25 +0100
committerMarvin Borner2024-02-29 11:35:25 +0100
commit4c6386fd250e8447e76ec9dfb6e8f5a266a050e2 (patch)
tree885850a60fa523c553f95411d0a826a0866a4020 /src/Reducer/RKNL.hs
parentd28604e2ebe4c58a9eb0ac2d7763b55f6c0beaea (diff)
Added higher order reducer
Diffstat (limited to 'src/Reducer/RKNL.hs')
-rw-r--r--src/Reducer/RKNL.hs8
1 files changed, 0 insertions, 8 deletions
diff --git a/src/Reducer/RKNL.hs b/src/Reducer/RKNL.hs
index 9513e38..5aa6ca1 100644
--- a/src/Reducer/RKNL.hs
+++ b/src/Reducer/RKNL.hs
@@ -2,7 +2,6 @@
-- based on the RKNL abstract machine
module Reducer.RKNL
( reduce
- , unsafeReduce
) where
import Control.Concurrent.MVar
@@ -11,7 +10,6 @@ import Data.Map.Strict ( Map )
import qualified Data.Map.Strict as Map
import Data.Maybe ( fromMaybe )
import Helper
-import System.IO.Unsafe ( unsafePerformIO ) -- TODO: AAH
type Store = Map Int Box
type Stack = [Redex]
@@ -109,9 +107,3 @@ reduce e = do
forEachState (loadTerm redex) transition >>= \case
Cconf _ [] v -> pure $ fromRedex v
_ -> invalidProgramState
-
--- TODO: AAAAAAAAAAAAAAAAH remove this
--- (probably not thaaat bad)
-{-# NOINLINE unsafeReduce #-}
-unsafeReduce :: Expression -> Expression
-unsafeReduce = unsafePerformIO . reduce