mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-23 19:42:50 -06:00
remove move dead code in the C shell
This commit is contained in:
@@ -307,34 +307,7 @@ pgfCommands = Map.fromList [
|
|||||||
],
|
],
|
||||||
exec = needPGF $ \ opts ts env -> return . cParse env opts $ toStrings ts
|
exec = needPGF $ \ opts ts env -> return . cParse env opts $ toStrings ts
|
||||||
}),
|
}),
|
||||||
{-
|
("pg", emptyCommandInfo {
|
||||||
("p", emptyCommandInfo {
|
|
||||||
longname = "parse",
|
|
||||||
synopsis = "parse a string to abstract syntax expression",
|
|
||||||
explanation = unlines [
|
|
||||||
"Shows all trees returned by parsing a string in the grammars in scope.",
|
|
||||||
"The -lang flag can be used to restrict this to fewer languages.",
|
|
||||||
"The default start category can be overridden by the -cat flag.",
|
|
||||||
"See also the ps command for lexing and character encoding.",
|
|
||||||
"",
|
|
||||||
"The -openclass flag is experimental and allows some robustness in ",
|
|
||||||
"the parser. For example if -openclass=\"A,N,V\" is given, the parser",
|
|
||||||
"will accept unknown adjectives, nouns and verbs with the resource grammar."
|
|
||||||
],
|
|
||||||
exec = \env@(pgf, mos) opts ts ->
|
|
||||||
return . Piped $ fromParse opts (concat [map ((,) s) (par pgf opts s) | s <- toStrings ts]),
|
|
||||||
flags = [
|
|
||||||
("cat","target category of parsing"),
|
|
||||||
("lang","the languages of parsing (comma-separated, no spaces)"),
|
|
||||||
("openclass","list of open-class categories for robust parsing"),
|
|
||||||
("depth","maximal depth for proof search if the abstract syntax tree has meta variables")
|
|
||||||
],
|
|
||||||
options = [
|
|
||||||
("bracket","prints the bracketed string from the parser")
|
|
||||||
]
|
|
||||||
}),
|
|
||||||
-}
|
|
||||||
("pg", emptyCommandInfo { -----
|
|
||||||
longname = "print_grammar",
|
longname = "print_grammar",
|
||||||
synopsis = "prints different information about the grammar",
|
synopsis = "prints different information about the grammar",
|
||||||
exec = needPGF $ \opts _ env -> prGrammar env opts,
|
exec = needPGF $ \opts _ env -> prGrammar env opts,
|
||||||
@@ -678,13 +651,6 @@ pgfCommands = Map.fromList [
|
|||||||
})
|
})
|
||||||
]
|
]
|
||||||
where
|
where
|
||||||
{-
|
|
||||||
par pgf opts s = case optOpenTypes opts of
|
|
||||||
[] -> [H.parse_ pgf lang (optType pgf opts) (Just dp) s | lang <- optLangs pgf opts]
|
|
||||||
open_typs -> [H.parseWithRecovery pgf lang (optType pgf opts) open_typs (Just dp) s | lang <- optLangs pgf opts]
|
|
||||||
where
|
|
||||||
dp = valIntOpts "depth" 4 opts
|
|
||||||
-}
|
|
||||||
cParse env@(pgf,_) opts ss =
|
cParse env@(pgf,_) opts ss =
|
||||||
parsed [ parse cnc cat s | s<-ss,(lang,cnc)<-cncs]
|
parsed [ parse cnc cat s | s<-ss,(lang,cnc)<-cncs]
|
||||||
where
|
where
|
||||||
@@ -756,47 +722,6 @@ pgfCommands = Map.fromList [
|
|||||||
commaList [] = []
|
commaList [] = []
|
||||||
commaList ws = concat $ head ws : map (", " ++) (tail ws)
|
commaList ws = concat $ head ws : map (", " ++) (tail ws)
|
||||||
|
|
||||||
-- Proposed logic of coding in unlexing:
|
|
||||||
-- - If lang has no coding flag, or -to_utf8 is not in opts, just opts are used.
|
|
||||||
-- - If lang has flag coding=utf8, -to_utf8 is ignored.
|
|
||||||
-- - If lang has coding=other, and -to_utf8 is in opts, from_other is applied first.
|
|
||||||
-- THIS DOES NOT WORK UNFORTUNATELY - can't use the grammar flag properly
|
|
||||||
{-
|
|
||||||
unlexx pgf opts lang = {- trace (unwords optsC) $ -} stringOps Nothing optsC where ----
|
|
||||||
optsC = case lookConcrFlag pgf (H.mkCId lang) (H.mkCId "coding") of
|
|
||||||
Just (LStr "utf8") -> filter (/="to_utf8") $ map prOpt opts
|
|
||||||
Just (LStr other) | isOpt "to_utf8" opts ->
|
|
||||||
let cod = ("from_" ++ other)
|
|
||||||
in cod : filter (/=cod) (map prOpt opts)
|
|
||||||
_ -> map prOpt opts
|
|
||||||
|
|
||||||
optRestricted opts pgf =
|
|
||||||
H.restrictPGF (\f -> and [H.hasLin pgf la f | la <- optLangs pgf opts]) pgf
|
|
||||||
|
|
||||||
completeLang pgf la = let cla = (H.mkCId la) in
|
|
||||||
if elem cla (H.languages pgf)
|
|
||||||
then cla
|
|
||||||
else (H.mkCId (H.showCId (H.abstractName pgf) ++ la))
|
|
||||||
|
|
||||||
optOpenTypes opts = case valStrOpts "openclass" "" opts of
|
|
||||||
"" -> []
|
|
||||||
cats -> mapMaybe H.readType (chunks ',' cats)
|
|
||||||
|
|
||||||
optProbs opts pgf = case valStrOpts "probs" "" opts of
|
|
||||||
"" -> return pgf
|
|
||||||
file -> do
|
|
||||||
probs <- restricted $ H.readProbabilitiesFromFile file pgf
|
|
||||||
return (H.setProbabilities probs pgf)
|
|
||||||
|
|
||||||
optTranslit opts = case (valStrOpts "to" "" opts, valStrOpts "from" "" opts) of
|
|
||||||
("","") -> return id
|
|
||||||
(file,"") -> do
|
|
||||||
src <- restricted $ readFile file
|
|
||||||
return $ transliterateWithFile file src False
|
|
||||||
(_,file) -> do
|
|
||||||
src <- restricted $ readFile file
|
|
||||||
return $ transliterateWithFile file src True
|
|
||||||
-}
|
|
||||||
optFile opts = valStrOpts "file" "_gftmp" opts
|
optFile opts = valStrOpts "file" "_gftmp" opts
|
||||||
|
|
||||||
optType pgf opts =
|
optType pgf opts =
|
||||||
@@ -816,23 +741,7 @@ pgfCommands = Map.fromList [
|
|||||||
-}
|
-}
|
||||||
optNumInf opts = valIntOpts "number" 1000000000 opts ---- 10^9
|
optNumInf opts = valIntOpts "number" 1000000000 opts ---- 10^9
|
||||||
takeOptNum opts = take (optNumInf opts)
|
takeOptNum opts = take (optNumInf opts)
|
||||||
{-
|
|
||||||
fromParse opts [] = ([],[])
|
|
||||||
fromParse opts ((s,(po,bs)):ps)
|
|
||||||
| isOpt "bracket" opts = (es, H.showBracketedString bs
|
|
||||||
++ "\n" ++ msg)
|
|
||||||
| otherwise = case po of
|
|
||||||
H.ParseOk ts -> let Piped (es',msg') = fromExprs ts
|
|
||||||
in (es'++es,msg'++msg)
|
|
||||||
H.TypeError errs -> ([], render ("The parsing is successful but the type checking failed with error(s):" $$
|
|
||||||
nest 2 (vcat (map (H.ppTcError . snd) errs)))
|
|
||||||
++ "\n" ++ msg)
|
|
||||||
H.ParseFailed i -> ([], "The parser failed at token " ++ show (words s !! max 0 (i-1))
|
|
||||||
++ "\n" ++ msg)
|
|
||||||
H.ParseIncomplete-> ([], "The sentence is not complete")
|
|
||||||
where
|
|
||||||
(es,msg) = fromParse opts ps
|
|
||||||
-}
|
|
||||||
returnFromCExprs = returnFromExprs . map hsExpr
|
returnFromCExprs = returnFromExprs . map hsExpr
|
||||||
returnFromExprs es =
|
returnFromExprs es =
|
||||||
return $ case es of
|
return $ case es of
|
||||||
|
|||||||
Reference in New Issue
Block a user