From 61a467c1be9895cc8c22b73ac0ff4350047d43e6 Mon Sep 17 00:00:00 2001 From: Kleidi Bujari Date: Tue, 13 Oct 2026 23:44:16 -0700 Subject: baseline parsing/eval --- src/Hint/Data.hs | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 src/Hint/Data.hs (limited to 'src/Hint/Data.hs') diff --git a/src/Hint/Data.hs b/src/Hint/Data.hs new file mode 100644 index 0000000..a5faa44 --- /dev/null +++ b/src/Hint/Data.hs @@ -0,0 +1,25 @@ +module Hint.Data where + +import Data.Text (Text) +import Data.String +import qualified Data.Text as T + +newtype Identifier = Identifier Text + deriving (Show, Ord, Eq) + +instance IsString Identifier where + fromString = Identifier . T.pack + +data Literal + = Int Int + | Float Double + | Boolean Bool + | String Text + deriving (Show, Eq) + +data Expr + = Literal Literal + | If Expr Expr Expr + | Bind Identifier Expr Expr + | Ident Identifier + deriving (Show, Eq) -- cgit v1.3.1