packages feed

cakyrespa 0.0.10 → 0.0.11

raw patch · 3 files changed

+13/−3 lines, 3 files

Files

cakyrespa.cabal view
@@ -2,7 +2,7 @@ cabal-version:	>= 1.6  name:		cakyrespa-version:	0.0.10+version:	0.0.11 stability:	Alpha license:	BSD3 license-file:	LICENSE
src/Language/Lojban/Read.hs view
@@ -10,7 +10,7 @@  import Language.Lojban.Parser hiding ( 	Tag, Sumti, Selbri, KOhA, FA, Brivla, BAI, Number, LI, RelativeClause,-	Time, KU, Linkargs, FIhO, NU, NA, LA, ZOI, ME)+	Time, KU, Linkargs, FIhO, NU, NA, LA, ZOI, ME, JOhI) import qualified Language.Lojban.Parser as P import Data.Maybe import Data.Char@@ -54,6 +54,7 @@  data Mex 	= Number Double+	| JOhI [Mex] 	| NotImplementedMex String 	deriving (Show, Eq) @@ -158,6 +159,7 @@  readMex :: Operand -> Mex readMex (P.Number n _ _) = readNumber n+readMex (P.JOhI (_, "jo'i", _) _ ns _ _) = JOhI $ map readMex ns readMex o = NotImplementedMex $ "readMex: " ++ show o  readNumber :: [Clause] -> Mex
src/cakyrespa.hs view
@@ -30,6 +30,7 @@ pcmd p = case p of 	(Vocative "co'o") -> COhO 	(TenseGI "ba" b c) -> Commands (pcmd b) (pcmd c)+	b@(Bridi (Brivla "klama") s) -> fromMaybe (Unknown b) $ readKlama s 	b@(Bridi (Brivla "galfi") s) -> fromMaybe (Unknown b) $ readGalfi s 	b@(Bridi (Brivla "tcidu") s) -> fromMaybe (Unknown b) $ readTcidu s 	b@(Bridi (Brivla "rejgau") s) -> fromMaybe (Unknown b) $ readRejgau s@@ -47,6 +48,11 @@ 	b@(Bridi (Brivla "clugau") s) -> fromMaybe (Unknown b) $ readClugau s 	r -> Unknown r +readKlama s = do+	KOhA "ko" <- lookup (FA 1) s+	LI (JOhI [Number x, Number y]) <- lookup (FA 2 ) s+	return $ KLAMA x y+ readGalfi s = do 	TUhA (KOhA "ko") <- lookup (FA 1) s 	LO (Brivla "foldi") Nothing <- lookup (FA 2) s@@ -196,7 +202,8 @@ 		_ -> fail "bad"  data Command-	= CRAKLA Double | RIXYKLA Double+	= KLAMA Double Double+	| CRAKLA Double | RIXYKLA Double 	| ZUNLE Double | PRITU Double 	| PEBYCISNI Double 	| PEBYSKA Int Int Int@@ -222,6 +229,7 @@ data LR = L | R | BadLR deriving Show  processInput :: Field -> Turtle -> Command -> IO Bool+processInput _ t (KLAMA x y) = goto t x y >> return True processInput _ t (CRAKLA d) = forward t d >> return True processInput _ t (RIXYKLA d) = backward t d >> return True processInput _ t (ZUNLE d) = left t d >> return True