@@ -4,7 +4,9 @@ import ProjectM36.Relation
44import ProjectM36.Tuple
55import ProjectM36.Relation.Show.CSV
66import ProjectM36.Relation.Show.HTML
7+import TutorialD.Interpreter.Base (displayOpResult)
78import TutorialD.Interpreter.DatabaseExpr (interpretDatabaseExpr)
9+import TutorialD.Interpreter.RODatabaseContextOperator (interpretRODatabaseContextOp)
810import ProjectM36.RelationalExpression
911import qualified Data.HashSet as HS
1012import qualified Data.ByteString.Lazy.Char8 as BS
@@ -42,14 +44,6 @@ main = do
4244 --vectorMatrixRun
4345 --intmapMatrixRun
4446
45−matrixRestrictRun :: IO ()
46−matrixRestrictRun = do
47− case matrixRelation 100 1000000 of
48− Left err -> putStrLn (show err)
49− Right rel -> case restrict (\tuple -> atomForAttributeName "0" tuple == Right (IntAtom 5)) rel of
50− Left err -> putStrLn (show err)
51− Right rel -> dumpcsv rel
52−
5347matrixRun :: BigrelArgs -> IO ()
5448matrixRun (BigrelArgs attributeCount tupleCount tutd) = do
5549 case matrixRelation attributeCount tupleCount of
@@ -60,6 +54,8 @@ matrixRun (BigrelArgs attributeCount tupleCount tutd) = do
6054 let setx = Assign "x" (ExistingRelation rel)
6155 context = execState (evalContextExpr setx) dateExamples
6256 interpreted = interpretDatabaseExpr context tutd
57+ plan = interpretRODatabaseContextOp context $ ":showplan " ++ tutd
58+ displayOpResult plan
6359 case interpreted of
6460 Right context' -> TIO.putStrLn $ relationAsHTML ((relationVariables context') M.! "x")
6561 Left err -> hPutStrLn stderr (show err)