feat[app]: Parsing and printing the program

This commit is contained in:
vegowotenks 2025-06-29 11:00:39 +02:00
parent 63f3b31dbb
commit fc69c506ff

View file

@ -1,4 +1,19 @@
{-# LANGUAGE LambdaCase #-}
module Main (main) where
import Control.Monad ((<$!>))
import qualified System.Environment as Env
import qualified Language.Brainfuck as Brainfuck
import qualified Data.Text as Text
import qualified Data.Text.IO as TextIO
main :: IO ()
main = pure ()
main = do
programFile <- Env.getArgs >>= \case
[x] -> pure x
_ -> error "usage: [program] source.bf"
instructions <- Brainfuck.parse <$!> TextIO.readFile programFile
mapM_ (TextIO.putStrLn . Text.pack . show) instructions