initial skeleton

This commit is contained in:
2017-04-27 19:29:42 +02:00
commit 639a513ad4
8 changed files with 82 additions and 0 deletions

5
src/BC/Config.hs Normal file
View File

@@ -0,0 +1,5 @@
module Bc.Prompt where
versionStr = "0.1.0.0"
prompt = "> "

24
src/BC/Prompt.hs Normal file
View File

@@ -0,0 +1,24 @@
module BC.Prompt (startPrompt) where
import BC.Config
printHeader :: IO ()
printHeader = do
putStrLn "bc (better calculator) version " ++ versionStr
putStrLn "Copyright 2017 Veit Heller"
putStrLn "This is free software with ABSOLUTELY NO WARRANTY.\n"
prompt :: IO ()
prompt = runInputT settings $ poll prompt
where poll p = do
input <- getInputLine p
case input of
Nothing -> return ""
Just str -> return str
startPrompt :: IO ()
startPrompt = do
printHeader
prompt

6
src/Main.hs Normal file
View File

@@ -0,0 +1,6 @@
module Main where
import BC.Prompt
main :: IO ()
main = startPrompt