IPPrint 0.3 now provides pshow master
authormail <mail@joachim-breitner.de>
Mon, 1 Oct 2007 14:17:04 +0000 (14:17 +0000)
committermail <mail@joachim-breitner.de>
Mon, 1 Oct 2007 14:17:04 +0000 (14:17 +0000)
haskell/MyHAppS.hs

index 5cbd240..590283c 100644 (file)
@@ -9,17 +9,13 @@ import HAppS.State
 import HAppS.State.Transaction
 import HAppS.Server.SimpleHTTP
 
 import HAppS.State.Transaction
 import HAppS.Server.SimpleHTTP
 
-
-import Language.Haskell.Parser
-import Language.Haskell.Pretty
-import Text.Read
+import IPPrint
 
 $( deriveAll [''Ord,''Eq,''Read,''Show,''Default] 
    [d|
      newtype FormData = FormData String 
  |] )
 
 
 $( deriveAll [''Ord,''Eq,''Read,''Show,''Default] 
    [d|
      newtype FormData = FormData String 
  |] )
 
--- plainEdit :: (Read a, Show a) => IO a -> (a -> IO ()) -> [ServerPart]
 plainEdit :: ( UpdateEvent ue (),
                Read a, Show a,
                QueryEvent qe a) => qe -> (a -> ue) -> [ServerPart]
 plainEdit :: ( UpdateEvent ue (),
                Read a, Show a,
                QueryEvent qe a) => qe -> (a -> ue) -> [ServerPart]
@@ -48,19 +44,3 @@ toDataForm action method fdat
                 [])]
 
 
                 [])]
 
 
--- From ipprint
-
-pshow :: Show a => a -> String
-pshow v =  case parseModule ("value = "++s) of
-              ParseOk         m -> tidy $ prettyPrint m
-              ParseFailed _ _   -> s
-    where s = show v
-          tidy x = case readPrec_to_S skipBoring 0 x of
-                     [((), tail)] -> "   " ++ tail
-                     _            -> s
-
-skipBoring :: ReadPrec ()
-skipBoring = 
-    do { Ident "value" <- lexP; Punc  "=" <- lexP; return () } <++ 
-    do { lexP; skipBoring }
-