forked from GitHub/gf-core
completed OverGrammar with missing params
This commit is contained in:
@@ -5,6 +5,18 @@ main = do
|
|||||||
writeFile abstr "abstract OverGrammar = Structural,Numeral,Conjunction[ListS,ListNP,ListAP,ListAdv] ** {\n"
|
writeFile abstr "abstract OverGrammar = Structural,Numeral,Conjunction[ListS,ListNP,ListAP,ListAdv] ** {\n"
|
||||||
appendFile abstr "cat ImpForm ; Punct ;\n"
|
appendFile abstr "cat ImpForm ; Punct ;\n"
|
||||||
writeFile concr "concrete OverGrammarEng of OverGrammar = StructuralEng,NumeralEng,ConjunctionEng[ListS,ListNP,ListAP,ListAdv] ** open GrammarEng in {\n"
|
writeFile concr "concrete OverGrammarEng of OverGrammar = StructuralEng,NumeralEng,ConjunctionEng[ListS,ListNP,ListAP,ListAdv] ** open GrammarEng in {\n"
|
||||||
|
mapM_ (appendFile concr) [
|
||||||
|
"lincat ImpForm = {p : PImpForm ; s : Str} ;\n",
|
||||||
|
"lincat Punct = {p : PPunct ; s : Str} ;\n",
|
||||||
|
"param PImpForm = IFSg | IFPl | IFPol ;\n",
|
||||||
|
"param PPunct = PFullStop | PExclMark | PQuestMark ;\n",
|
||||||
|
"oper mkUttImp : PImpForm -> Str -> Pol -> Imp -> Utt = \\f,s,p,i -> {s = s ++ (case f of {\n",
|
||||||
|
" IFSg => UttImpSg p i ; IFPl => UttImpPl p i ; IFPol => UttImpPol p i}).s ; lock_Utt = <>} ;\n",
|
||||||
|
"oper mkPhrPunct : Phr -> PPunct -> Str -> Text -> Text = \\p,f,s,t -> {s = s ++ (case f of {\n",
|
||||||
|
" PFullStop => TFullStop p t ; PExclMark => TExclMark p t ; PQuestMark => TQuestMark p t}).s ;\n",
|
||||||
|
" lock_Text = <>} ;\n"
|
||||||
|
]
|
||||||
|
|
||||||
foldM process ("",0) ss
|
foldM process ("",0) ss
|
||||||
appendFile abstr "}\n"
|
appendFile abstr "}\n"
|
||||||
appendFile concr "}\n"
|
appendFile concr "}\n"
|
||||||
|
|||||||
@@ -154,111 +154,121 @@ fun ovrld150_presentTense : Tense ;
|
|||||||
fun ovrld151_pastTense : Tense ;
|
fun ovrld151_pastTense : Tense ;
|
||||||
fun ovrld152_futureTense : Tense ;
|
fun ovrld152_futureTense : Tense ;
|
||||||
fun ovrld153_conditionalTense : Tense ;
|
fun ovrld153_conditionalTense : Tense ;
|
||||||
fun ovrld154_mkUtt : S -> Utt ;
|
fun ovrld154_singularImpForm : ImpForm ;
|
||||||
fun ovrld155_mkUtt : Cl -> Utt ;
|
fun ovrld155_pluralImpForm : ImpForm ;
|
||||||
fun ovrld156_mkUtt : QS -> Utt ;
|
fun ovrld156_politeImpForm : ImpForm ;
|
||||||
fun ovrld157_mkUtt : Pol -> Imp -> Utt ;
|
fun ovrld157_mkUtt : S -> Utt ;
|
||||||
fun ovrld158_mkUtt : Imp -> Utt ;
|
fun ovrld158_mkUtt : Cl -> Utt ;
|
||||||
fun ovrld159_mkUtt : IP -> Utt ;
|
fun ovrld159_mkUtt : QS -> Utt ;
|
||||||
fun ovrld160_mkUtt : IAdv -> Utt ;
|
fun ovrld160_mkUtt : ImpForm -> Pol -> Imp -> Utt ;
|
||||||
fun ovrld161_mkUtt : NP -> Utt ;
|
fun ovrld161_mkUtt : ImpForm -> Imp -> Utt ;
|
||||||
fun ovrld162_mkUtt : Adv -> Utt ;
|
fun ovrld162_mkUtt : Pol -> Imp -> Utt ;
|
||||||
fun ovrld163_mkUtt : VP -> Utt ;
|
fun ovrld163_mkUtt : Imp -> Utt ;
|
||||||
fun ovrld164_lets_Utt : VP -> Utt ;
|
fun ovrld164_mkUtt : IP -> Utt ;
|
||||||
fun ovrld165_mkQCl : Cl -> QCl ;
|
fun ovrld165_mkUtt : IAdv -> Utt ;
|
||||||
fun ovrld166_mkQCl : IP -> VP -> QCl ;
|
fun ovrld166_mkUtt : NP -> Utt ;
|
||||||
fun ovrld167_mkQCl : IP -> Slash -> QCl ;
|
fun ovrld167_mkUtt : Adv -> Utt ;
|
||||||
fun ovrld168_mkQCl : IP -> NP -> V2 -> QCl ;
|
fun ovrld168_mkUtt : VP -> Utt ;
|
||||||
fun ovrld169_mkQCl : IAdv -> Cl -> QCl ;
|
fun ovrld169_lets_Utt : VP -> Utt ;
|
||||||
fun ovrld170_mkQCl : Prep -> IP -> Cl -> QCl ;
|
fun ovrld170_mkQCl : Cl -> QCl ;
|
||||||
fun ovrld171_mkQCl : IAdv -> NP -> QCl ;
|
fun ovrld171_mkQCl : IP -> VP -> QCl ;
|
||||||
fun ovrld172_mkQCl : IP -> QCl ;
|
fun ovrld172_mkQCl : IP -> Slash -> QCl ;
|
||||||
fun ovrld173_mkIP : IDet -> Num -> Ord -> CN -> IP ;
|
fun ovrld173_mkQCl : IP -> NP -> V2 -> QCl ;
|
||||||
fun ovrld174_mkIP : IDet -> Ord -> CN -> IP ;
|
fun ovrld174_mkQCl : IAdv -> Cl -> QCl ;
|
||||||
fun ovrld175_mkIP : IDet -> Num -> CN -> IP ;
|
fun ovrld175_mkQCl : Prep -> IP -> Cl -> QCl ;
|
||||||
fun ovrld176_mkIP : IDet -> N -> IP ;
|
fun ovrld176_mkQCl : IAdv -> NP -> QCl ;
|
||||||
fun ovrld177_mkIP : IP -> Adv -> IP ;
|
fun ovrld177_mkQCl : IP -> QCl ;
|
||||||
fun ovrld178_mkIAdv : Prep -> IP -> IAdv ;
|
fun ovrld178_mkIP : IDet -> Num -> Ord -> CN -> IP ;
|
||||||
fun ovrld179_mkRCl : Cl -> RCl ;
|
fun ovrld179_mkIP : IDet -> Ord -> CN -> IP ;
|
||||||
fun ovrld180_mkRCl : RP -> VP -> RCl ;
|
fun ovrld180_mkIP : IDet -> Num -> CN -> IP ;
|
||||||
fun ovrld181_mkRCl : RP -> Slash -> RCl ;
|
fun ovrld181_mkIP : IDet -> N -> IP ;
|
||||||
fun ovrld182_mkRCl : RP -> NP -> V2 -> RCl ;
|
fun ovrld182_mkIP : IP -> Adv -> IP ;
|
||||||
fun ovrld183_which_RP : RP ;
|
fun ovrld183_mkIAdv : Prep -> IP -> IAdv ;
|
||||||
fun ovrld184_mkRP : Prep -> NP -> RP -> RP ;
|
fun ovrld184_mkRCl : Cl -> RCl ;
|
||||||
fun ovrld185_mkSlash : NP -> V2 -> Slash ;
|
fun ovrld185_mkRCl : RP -> VP -> RCl ;
|
||||||
fun ovrld186_mkSlash : NP -> VV -> V2 -> Slash ;
|
fun ovrld186_mkRCl : RP -> Slash -> RCl ;
|
||||||
fun ovrld187_mkSlash : Slash -> Adv -> Slash ;
|
fun ovrld187_mkRCl : RP -> NP -> V2 -> RCl ;
|
||||||
fun ovrld188_mkSlash : Cl -> Prep -> Slash ;
|
fun ovrld188_which_RP : RP ;
|
||||||
fun ovrld189_mkImp : VP -> Imp ;
|
fun ovrld189_mkRP : Prep -> NP -> RP -> RP ;
|
||||||
fun ovrld190_mkImp : V -> Imp ;
|
fun ovrld190_mkSlash : NP -> V2 -> Slash ;
|
||||||
fun ovrld191_mkImp : V2 -> NP -> Imp ;
|
fun ovrld191_mkSlash : NP -> VV -> V2 -> Slash ;
|
||||||
fun ovrld192_mkS : Cl -> S ;
|
fun ovrld192_mkSlash : Slash -> Adv -> Slash ;
|
||||||
fun ovrld193_mkS : Tense -> Cl -> S ;
|
fun ovrld193_mkSlash : Cl -> Prep -> Slash ;
|
||||||
fun ovrld194_mkS : Ant -> Cl -> S ;
|
fun ovrld194_mkImp : VP -> Imp ;
|
||||||
fun ovrld195_mkS : Pol -> Cl -> S ;
|
fun ovrld195_mkImp : V -> Imp ;
|
||||||
fun ovrld196_mkS : Tense -> Ant -> Cl -> S ;
|
fun ovrld196_mkImp : V2 -> NP -> Imp ;
|
||||||
fun ovrld197_mkS : Tense -> Pol -> Cl -> S ;
|
fun ovrld197_mkS : Cl -> S ;
|
||||||
fun ovrld198_mkS : Ant -> Pol -> Cl -> S ;
|
fun ovrld198_mkS : Tense -> Cl -> S ;
|
||||||
fun ovrld199_mkS : Tense -> Ant -> Pol -> Cl -> S ;
|
fun ovrld199_mkS : Ant -> Cl -> S ;
|
||||||
fun ovrld200_mkS : Conj -> S -> S -> S ;
|
fun ovrld200_mkS : Pol -> Cl -> S ;
|
||||||
fun ovrld201_mkS : DConj -> S -> S -> S ;
|
fun ovrld201_mkS : Tense -> Ant -> Cl -> S ;
|
||||||
fun ovrld202_mkS : Conj -> ListS -> S ;
|
fun ovrld202_mkS : Tense -> Pol -> Cl -> S ;
|
||||||
fun ovrld203_mkS : DConj -> ListS -> S ;
|
fun ovrld203_mkS : Ant -> Pol -> Cl -> S ;
|
||||||
fun ovrld204_mkS : Adv -> S -> S ;
|
fun ovrld204_mkS : Tense -> Ant -> Pol -> Cl -> S ;
|
||||||
fun ovrld205_mkQS : QCl -> QS ;
|
fun ovrld205_mkS : Conj -> S -> S -> S ;
|
||||||
fun ovrld206_mkQS : Tense -> QCl -> QS ;
|
fun ovrld206_mkS : DConj -> S -> S -> S ;
|
||||||
fun ovrld207_mkQS : Ant -> QCl -> QS ;
|
fun ovrld207_mkS : Conj -> ListS -> S ;
|
||||||
fun ovrld208_mkQS : Pol -> QCl -> QS ;
|
fun ovrld208_mkS : DConj -> ListS -> S ;
|
||||||
fun ovrld209_mkQS : Tense -> Ant -> QCl -> QS ;
|
fun ovrld209_mkS : Adv -> S -> S ;
|
||||||
fun ovrld210_mkQS : Tense -> Pol -> QCl -> QS ;
|
fun ovrld210_mkQS : QCl -> QS ;
|
||||||
fun ovrld211_mkQS : Ant -> Pol -> QCl -> QS ;
|
fun ovrld211_mkQS : Tense -> QCl -> QS ;
|
||||||
fun ovrld212_mkQS : Tense -> Ant -> Pol -> QCl -> QS ;
|
fun ovrld212_mkQS : Ant -> QCl -> QS ;
|
||||||
fun ovrld213_mkQS : Cl -> QS ;
|
fun ovrld213_mkQS : Pol -> QCl -> QS ;
|
||||||
fun ovrld214_mkRS : RCl -> RS ;
|
fun ovrld214_mkQS : Tense -> Ant -> QCl -> QS ;
|
||||||
fun ovrld215_mkRS : Tense -> RCl -> RS ;
|
fun ovrld215_mkQS : Tense -> Pol -> QCl -> QS ;
|
||||||
fun ovrld216_mkRS : Ant -> RCl -> RS ;
|
fun ovrld216_mkQS : Ant -> Pol -> QCl -> QS ;
|
||||||
fun ovrld217_mkRS : Pol -> RCl -> RS ;
|
fun ovrld217_mkQS : Tense -> Ant -> Pol -> QCl -> QS ;
|
||||||
fun ovrld218_mkRS : Tense -> Ant -> RCl -> RS ;
|
fun ovrld218_mkQS : Cl -> QS ;
|
||||||
fun ovrld219_mkRS : Tense -> Pol -> RCl -> RS ;
|
fun ovrld219_mkRS : RCl -> RS ;
|
||||||
fun ovrld220_mkRS : Ant -> Pol -> RCl -> RS ;
|
fun ovrld220_mkRS : Tense -> RCl -> RS ;
|
||||||
fun ovrld221_mkRS : Tense -> Ant -> Pol -> RCl -> RS ;
|
fun ovrld221_mkRS : Ant -> RCl -> RS ;
|
||||||
fun ovrld222_emptyText : Text ;
|
fun ovrld222_mkRS : Pol -> RCl -> RS ;
|
||||||
fun ovrld223_mkText : Phr -> Text ;
|
fun ovrld223_mkRS : Tense -> Ant -> RCl -> RS ;
|
||||||
fun ovrld224_mkText : Utt -> Text ;
|
fun ovrld224_mkRS : Tense -> Pol -> RCl -> RS ;
|
||||||
fun ovrld225_mkText : S -> Text ;
|
fun ovrld225_mkRS : Ant -> Pol -> RCl -> RS ;
|
||||||
fun ovrld226_mkText : Cl -> Text ;
|
fun ovrld226_mkRS : Tense -> Ant -> Pol -> RCl -> RS ;
|
||||||
fun ovrld227_mkText : QS -> Text ;
|
fun ovrld227_emptyText : Text ;
|
||||||
fun ovrld228_mkText : Imp -> Text ;
|
fun ovrld228_fullStopPunct : Punct ;
|
||||||
fun ovrld229_mkText : Pol -> Imp -> Text ;
|
fun ovrld229_questMarkPunct : Punct ;
|
||||||
fun ovrld230_mkText : Phr -> Text -> Text ;
|
fun ovrld230_exclMarkPunct : Punct ;
|
||||||
fun ovrld231_mkVP : V -> VP ;
|
fun ovrld231_mkText : Phr -> Punct -> Text -> Text ;
|
||||||
fun ovrld232_mkVP : V2 -> NP -> VP ;
|
fun ovrld232_mkText : Phr -> Punct -> Text ;
|
||||||
fun ovrld233_mkVP : V3 -> NP -> NP -> VP ;
|
fun ovrld233_mkText : Phr -> Text ;
|
||||||
fun ovrld234_mkVP : VV -> VP -> VP ;
|
fun ovrld234_mkText : Utt -> Text ;
|
||||||
fun ovrld235_mkVP : VS -> S -> VP ;
|
fun ovrld235_mkText : S -> Text ;
|
||||||
fun ovrld236_mkVP : VQ -> QS -> VP ;
|
fun ovrld236_mkText : Cl -> Text ;
|
||||||
fun ovrld237_mkVP : VA -> AP -> VP ;
|
fun ovrld237_mkText : QS -> Text ;
|
||||||
fun ovrld238_mkVP : V2A -> NP -> AP -> VP ;
|
fun ovrld238_mkText : Imp -> Text ;
|
||||||
fun ovrld239_mkVP : A -> VP ;
|
fun ovrld239_mkText : Pol -> Imp -> Text ;
|
||||||
fun ovrld240_mkVP : A -> NP -> VP ;
|
fun ovrld240_mkText : Phr -> Text -> Text ;
|
||||||
fun ovrld241_mkVP : A2 -> NP -> VP ;
|
fun ovrld241_mkVP : V -> VP ;
|
||||||
fun ovrld242_mkVP : AP -> VP ;
|
fun ovrld242_mkVP : V2 -> NP -> VP ;
|
||||||
fun ovrld243_mkVP : NP -> VP ;
|
fun ovrld243_mkVP : V3 -> NP -> NP -> VP ;
|
||||||
fun ovrld244_mkVP : CN -> VP ;
|
fun ovrld244_mkVP : VV -> VP -> VP ;
|
||||||
fun ovrld245_mkVP : N -> VP ;
|
fun ovrld245_mkVP : VS -> S -> VP ;
|
||||||
fun ovrld246_mkVP : Adv -> VP ;
|
fun ovrld246_mkVP : VQ -> QS -> VP ;
|
||||||
fun ovrld247_mkVP : VP -> Adv -> VP ;
|
fun ovrld247_mkVP : VA -> AP -> VP ;
|
||||||
fun ovrld248_mkVP : AdV -> VP -> VP ;
|
fun ovrld248_mkVP : V2A -> NP -> AP -> VP ;
|
||||||
fun ovrld249_reflexiveVP : V2 -> VP ;
|
fun ovrld249_mkVP : A -> VP ;
|
||||||
fun ovrld250_passiveVP : V2 -> VP ;
|
fun ovrld250_mkVP : A -> NP -> VP ;
|
||||||
fun ovrld251_passiveVP : V2 -> NP -> VP ;
|
fun ovrld251_mkVP : A2 -> NP -> VP ;
|
||||||
fun ovrld252_progressiveVP : VP -> VP ;
|
fun ovrld252_mkVP : AP -> VP ;
|
||||||
fun ovrld253_mkListS : S -> S -> ListS ;
|
fun ovrld253_mkVP : NP -> VP ;
|
||||||
fun ovrld254_mkListS : S -> ListS -> ListS ;
|
fun ovrld254_mkVP : CN -> VP ;
|
||||||
fun ovrld255_mkListAP : AP -> AP -> ListAP ;
|
fun ovrld255_mkVP : N -> VP ;
|
||||||
fun ovrld256_mkListAP : AP -> ListAP -> ListAP ;
|
fun ovrld256_mkVP : Adv -> VP ;
|
||||||
fun ovrld257_mkListAdv : Adv -> Adv -> ListAdv ;
|
fun ovrld257_mkVP : VP -> Adv -> VP ;
|
||||||
fun ovrld258_mkListAdv : Adv -> ListAdv -> ListAdv ;
|
fun ovrld258_mkVP : AdV -> VP -> VP ;
|
||||||
fun ovrld259_mkListNP : NP -> NP -> ListNP ;
|
fun ovrld259_reflexiveVP : V2 -> VP ;
|
||||||
fun ovrld260_mkListNP : NP -> ListNP -> ListNP ;
|
fun ovrld260_passiveVP : V2 -> VP ;
|
||||||
|
fun ovrld261_passiveVP : V2 -> NP -> VP ;
|
||||||
|
fun ovrld262_progressiveVP : VP -> VP ;
|
||||||
|
fun ovrld263_mkListS : S -> S -> ListS ;
|
||||||
|
fun ovrld264_mkListS : S -> ListS -> ListS ;
|
||||||
|
fun ovrld265_mkListAP : AP -> AP -> ListAP ;
|
||||||
|
fun ovrld266_mkListAP : AP -> ListAP -> ListAP ;
|
||||||
|
fun ovrld267_mkListAdv : Adv -> Adv -> ListAdv ;
|
||||||
|
fun ovrld268_mkListAdv : Adv -> ListAdv -> ListAdv ;
|
||||||
|
fun ovrld269_mkListNP : NP -> NP -> ListNP ;
|
||||||
|
fun ovrld270_mkListNP : NP -> ListNP -> ListNP ;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,13 @@
|
|||||||
concrete OverGrammarEng of OverGrammar = StructuralEng,NumeralEng,ConjunctionEng[ListS,ListNP,ListAP,ListAdv] ** open GrammarEng in {
|
concrete OverGrammarEng of OverGrammar = StructuralEng,NumeralEng,ConjunctionEng[ListS,ListNP,ListAP,ListAdv] ** open GrammarEng in {
|
||||||
|
lincat ImpForm = {p : PImpForm ; s : Str} ;
|
||||||
|
lincat Punct = {p : PPunct ; s : Str} ;
|
||||||
|
param PImpForm = IFSg | IFPl | IFPol ;
|
||||||
|
param PPunct = PFullStop | PExclMark | PQuestMark ;
|
||||||
|
oper mkUttImp : PImpForm -> Str -> Pol -> Imp -> Utt = \f,s,p,i -> {s = s ++ (case f of {
|
||||||
|
IFSg => UttImpSg p i ; IFPl => UttImpPl p i ; IFPol => UttImpPol p i}).s ; lock_Utt = <>} ;
|
||||||
|
oper mkPhrPunct : Phr -> PPunct -> Str -> Text -> Text = \p,f,s,t -> {s = s ++ (case f of {
|
||||||
|
PFullStop => TFullStop p t ; PExclMark => TExclMark p t ; PQuestMark => TQuestMark p t}).s ;
|
||||||
|
lock_Text = <>} ;
|
||||||
lin ovrld0_mkAP = PositA ;
|
lin ovrld0_mkAP = PositA ;
|
||||||
lin ovrld1_mkAP = ComparA ;
|
lin ovrld1_mkAP = ComparA ;
|
||||||
lin ovrld2_mkAP = ComplA2 ;
|
lin ovrld2_mkAP = ComplA2 ;
|
||||||
@@ -153,111 +162,121 @@ lin ovrld150_presentTense = TPres ;
|
|||||||
lin ovrld151_pastTense = TPast ;
|
lin ovrld151_pastTense = TPast ;
|
||||||
lin ovrld152_futureTense = TFut ;
|
lin ovrld152_futureTense = TFut ;
|
||||||
lin ovrld153_conditionalTense = TCond ;
|
lin ovrld153_conditionalTense = TCond ;
|
||||||
lin ovrld154_mkUtt = UttS ;
|
lin ovrld154_singularImpForm = {p= IFSg; s= []} ;
|
||||||
lin ovrld155_mkUtt = \c -> UttS (UseCl TPres ASimul PPos c) ;
|
lin ovrld155_pluralImpForm = {p= IFPl; s= []} ;
|
||||||
lin ovrld156_mkUtt = UttQS ;
|
lin ovrld156_politeImpForm = {p= IFPol; s= []} ;
|
||||||
lin ovrld157_mkUtt = UttImpSg ;
|
lin ovrld157_mkUtt = UttS ;
|
||||||
lin ovrld158_mkUtt = UttImpSg PPos ;
|
lin ovrld158_mkUtt = \c -> UttS (UseCl TPres ASimul PPos c) ;
|
||||||
lin ovrld159_mkUtt = UttIP ;
|
lin ovrld159_mkUtt = UttQS ;
|
||||||
lin ovrld160_mkUtt = UttIAdv ;
|
lin ovrld160_mkUtt = \f -> mkUttImp f.p f.s ;
|
||||||
lin ovrld161_mkUtt = UttNP ;
|
lin ovrld161_mkUtt = \f -> mkUttImp f.p f.s PPos ;
|
||||||
lin ovrld162_mkUtt = UttAdv ;
|
lin ovrld162_mkUtt = UttImpSg ;
|
||||||
lin ovrld163_mkUtt = UttVP ;
|
lin ovrld163_mkUtt = UttImpSg PPos ;
|
||||||
lin ovrld164_lets_Utt = ImpPl1 ;
|
lin ovrld164_mkUtt = UttIP ;
|
||||||
lin ovrld165_mkQCl = QuestCl ;
|
lin ovrld165_mkUtt = UttIAdv ;
|
||||||
lin ovrld166_mkQCl = QuestVP ;
|
lin ovrld166_mkUtt = UttNP ;
|
||||||
lin ovrld167_mkQCl = QuestSlash ;
|
lin ovrld167_mkUtt = UttAdv ;
|
||||||
lin ovrld168_mkQCl = \ip,np,v -> QuestSlash ip (SlashV2 np v) ;
|
lin ovrld168_mkUtt = UttVP ;
|
||||||
lin ovrld169_mkQCl = QuestIAdv ;
|
lin ovrld169_lets_Utt = ImpPl1 ;
|
||||||
lin ovrld170_mkQCl = \p,ip -> QuestIAdv (PrepIP p ip) ;
|
lin ovrld170_mkQCl = QuestCl ;
|
||||||
lin ovrld171_mkQCl = \a -> QuestIComp (CompIAdv a) ;
|
lin ovrld171_mkQCl = QuestVP ;
|
||||||
lin ovrld172_mkQCl = ExistIP ;
|
lin ovrld172_mkQCl = QuestSlash ;
|
||||||
lin ovrld173_mkIP = IDetCN ;
|
lin ovrld173_mkQCl = \ip,np,v -> QuestSlash ip (SlashV2 np v) ;
|
||||||
lin ovrld174_mkIP = \i -> IDetCN i NoNum ;
|
lin ovrld174_mkQCl = QuestIAdv ;
|
||||||
lin ovrld175_mkIP = \i,n -> IDetCN i n NoOrd ;
|
lin ovrld175_mkQCl = \p,ip -> QuestIAdv (PrepIP p ip) ;
|
||||||
lin ovrld176_mkIP = \i,n -> IDetCN i NoNum NoOrd (UseN n) ;
|
lin ovrld176_mkQCl = \a -> QuestIComp (CompIAdv a) ;
|
||||||
lin ovrld177_mkIP = AdvIP ;
|
lin ovrld177_mkQCl = ExistIP ;
|
||||||
lin ovrld178_mkIAdv = PrepIP ;
|
lin ovrld178_mkIP = IDetCN ;
|
||||||
lin ovrld179_mkRCl = RelCl ;
|
lin ovrld179_mkIP = \i -> IDetCN i NoNum ;
|
||||||
lin ovrld180_mkRCl = RelVP ;
|
lin ovrld180_mkIP = \i,n -> IDetCN i n NoOrd ;
|
||||||
lin ovrld181_mkRCl = RelSlash ;
|
lin ovrld181_mkIP = \i,n -> IDetCN i NoNum NoOrd (UseN n) ;
|
||||||
lin ovrld182_mkRCl = \rp,np,v2 -> RelSlash rp (SlashV2 np v2) ;
|
lin ovrld182_mkIP = AdvIP ;
|
||||||
lin ovrld183_which_RP = IdRP ;
|
lin ovrld183_mkIAdv = PrepIP ;
|
||||||
lin ovrld184_mkRP = FunRP ;
|
lin ovrld184_mkRCl = RelCl ;
|
||||||
lin ovrld185_mkSlash = SlashV2 ;
|
lin ovrld185_mkRCl = RelVP ;
|
||||||
lin ovrld186_mkSlash = SlashVVV2 ;
|
lin ovrld186_mkRCl = RelSlash ;
|
||||||
lin ovrld187_mkSlash = AdvSlash ;
|
lin ovrld187_mkRCl = \rp,np,v2 -> RelSlash rp (SlashV2 np v2) ;
|
||||||
lin ovrld188_mkSlash = SlashPrep ;
|
lin ovrld188_which_RP = IdRP ;
|
||||||
lin ovrld189_mkImp = ImpVP ;
|
lin ovrld189_mkRP = FunRP ;
|
||||||
lin ovrld190_mkImp = \v -> ImpVP (UseV v) ;
|
lin ovrld190_mkSlash = SlashV2 ;
|
||||||
lin ovrld191_mkImp = \v,np -> ImpVP (ComplV2 v np) ;
|
lin ovrld191_mkSlash = SlashVVV2 ;
|
||||||
lin ovrld192_mkS = UseCl TPres ASimul PPos ;
|
lin ovrld192_mkSlash = AdvSlash ;
|
||||||
lin ovrld193_mkS = \t -> UseCl t ASimul PPos ;
|
lin ovrld193_mkSlash = SlashPrep ;
|
||||||
lin ovrld194_mkS = \a -> UseCl TPres a PPos ;
|
lin ovrld194_mkImp = ImpVP ;
|
||||||
lin ovrld195_mkS = \p -> UseCl TPres ASimul p ;
|
lin ovrld195_mkImp = \v -> ImpVP (UseV v) ;
|
||||||
lin ovrld196_mkS = \t,a -> UseCl t a PPos ;
|
lin ovrld196_mkImp = \v,np -> ImpVP (ComplV2 v np) ;
|
||||||
lin ovrld197_mkS = \t,p -> UseCl t ASimul p ;
|
lin ovrld197_mkS = UseCl TPres ASimul PPos ;
|
||||||
lin ovrld198_mkS = \a,p -> UseCl TPres a p ;
|
lin ovrld198_mkS = \t -> UseCl t ASimul PPos ;
|
||||||
lin ovrld199_mkS = UseCl ;
|
lin ovrld199_mkS = \a -> UseCl TPres a PPos ;
|
||||||
lin ovrld200_mkS = \c,x,y -> ConjS c (BaseS x y) ;
|
lin ovrld200_mkS = \p -> UseCl TPres ASimul p ;
|
||||||
lin ovrld201_mkS = \c,x,y -> DConjS c (BaseS x y) ;
|
lin ovrld201_mkS = \t,a -> UseCl t a PPos ;
|
||||||
lin ovrld202_mkS = \c,xy -> ConjS c xy ;
|
lin ovrld202_mkS = \t,p -> UseCl t ASimul p ;
|
||||||
lin ovrld203_mkS = \c,xy -> DConjS c xy ;
|
lin ovrld203_mkS = \a,p -> UseCl TPres a p ;
|
||||||
lin ovrld204_mkS = AdvS ;
|
lin ovrld204_mkS = UseCl ;
|
||||||
lin ovrld205_mkQS = UseQCl TPres ASimul PPos ;
|
lin ovrld205_mkS = \c,x,y -> ConjS c (BaseS x y) ;
|
||||||
lin ovrld206_mkQS = \t -> UseQCl t ASimul PPos ;
|
lin ovrld206_mkS = \c,x,y -> DConjS c (BaseS x y) ;
|
||||||
lin ovrld207_mkQS = \a -> UseQCl TPres a PPos ;
|
lin ovrld207_mkS = \c,xy -> ConjS c xy ;
|
||||||
lin ovrld208_mkQS = \p -> UseQCl TPres ASimul p ;
|
lin ovrld208_mkS = \c,xy -> DConjS c xy ;
|
||||||
lin ovrld209_mkQS = \t,a -> UseQCl t a PPos ;
|
lin ovrld209_mkS = AdvS ;
|
||||||
lin ovrld210_mkQS = \t,p -> UseQCl t ASimul p ;
|
lin ovrld210_mkQS = UseQCl TPres ASimul PPos ;
|
||||||
lin ovrld211_mkQS = \a,p -> UseQCl TPres a p ;
|
lin ovrld211_mkQS = \t -> UseQCl t ASimul PPos ;
|
||||||
lin ovrld212_mkQS = UseQCl ;
|
lin ovrld212_mkQS = \a -> UseQCl TPres a PPos ;
|
||||||
lin ovrld213_mkQS = \x -> UseQCl TPres ASimul PPos (QuestCl x) ;
|
lin ovrld213_mkQS = \p -> UseQCl TPres ASimul p ;
|
||||||
lin ovrld214_mkRS = UseRCl TPres ASimul PPos ;
|
lin ovrld214_mkQS = \t,a -> UseQCl t a PPos ;
|
||||||
lin ovrld215_mkRS = \t,c -> UseRCl t ASimul PPos c ;
|
lin ovrld215_mkQS = \t,p -> UseQCl t ASimul p ;
|
||||||
lin ovrld216_mkRS = \a,c -> UseRCl TPres a PPos c ;
|
lin ovrld216_mkQS = \a,p -> UseQCl TPres a p ;
|
||||||
lin ovrld217_mkRS = \p,c -> UseRCl TPres ASimul p c ;
|
lin ovrld217_mkQS = UseQCl ;
|
||||||
lin ovrld218_mkRS = \t,a,c -> UseRCl t a PPos c ;
|
lin ovrld218_mkQS = \x -> UseQCl TPres ASimul PPos (QuestCl x) ;
|
||||||
lin ovrld219_mkRS = \t,p,c -> UseRCl t ASimul p c ;
|
lin ovrld219_mkRS = UseRCl TPres ASimul PPos ;
|
||||||
lin ovrld220_mkRS = \a,p,c -> UseRCl TPres a p c ;
|
lin ovrld220_mkRS = \t,c -> UseRCl t ASimul PPos c ;
|
||||||
lin ovrld221_mkRS = UseRCl ;
|
lin ovrld221_mkRS = \a,c -> UseRCl TPres a PPos c ;
|
||||||
lin ovrld222_emptyText = TEmpty ;
|
lin ovrld222_mkRS = \p,c -> UseRCl TPres ASimul p c ;
|
||||||
lin ovrld223_mkText = \x -> TFullStop x TEmpty ;
|
lin ovrld223_mkRS = \t,a,c -> UseRCl t a PPos c ;
|
||||||
lin ovrld224_mkText = \u -> TFullStop (PhrUtt NoPConj u NoVoc) TEmpty ;
|
lin ovrld224_mkRS = \t,p,c -> UseRCl t ASimul p c ;
|
||||||
lin ovrld225_mkText = \s -> TFullStop (PhrUtt NoPConj (UttS s) NoVoc) TEmpty ;
|
lin ovrld225_mkRS = \a,p,c -> UseRCl TPres a p c ;
|
||||||
lin ovrld226_mkText = \c -> TFullStop (PhrUtt NoPConj (UttS (UseCl TPres ASimul PPos c)) NoVoc) TEmpty ;
|
lin ovrld226_mkRS = UseRCl ;
|
||||||
lin ovrld227_mkText = \q -> TQuestMark (PhrUtt NoPConj (UttQS q) NoVoc) TEmpty ;
|
lin ovrld227_emptyText = TEmpty ;
|
||||||
lin ovrld228_mkText = \i -> TExclMark (PhrUtt NoPConj (UttImpSg PPos i) NoVoc) TEmpty ;
|
lin ovrld228_fullStopPunct = {p= PFullStop; s= []} ;
|
||||||
lin ovrld229_mkText = \p,i -> TExclMark (PhrUtt NoPConj (UttImpSg p i) NoVoc) TEmpty ;
|
lin ovrld229_questMarkPunct = {p= PQuestMark; s= []} ;
|
||||||
lin ovrld230_mkText = TFullStop ;
|
lin ovrld230_exclMarkPunct = {p= PExclMark; s= []} ;
|
||||||
lin ovrld231_mkVP = UseV ;
|
lin ovrld231_mkText = \p,f -> mkPhrPunct p f.p f.s ;
|
||||||
lin ovrld232_mkVP = ComplV2 ;
|
lin ovrld232_mkText = \p,f -> mkPhrPunct p f.p f.s TEmpty ;
|
||||||
lin ovrld233_mkVP = ComplV3 ;
|
lin ovrld233_mkText = \x -> TFullStop x TEmpty ;
|
||||||
lin ovrld234_mkVP = ComplVV ;
|
lin ovrld234_mkText = \u -> TFullStop (PhrUtt NoPConj u NoVoc) TEmpty ;
|
||||||
lin ovrld235_mkVP = ComplVS ;
|
lin ovrld235_mkText = \s -> TFullStop (PhrUtt NoPConj (UttS s) NoVoc) TEmpty ;
|
||||||
lin ovrld236_mkVP = ComplVQ ;
|
lin ovrld236_mkText = \c -> TFullStop (PhrUtt NoPConj (UttS (UseCl TPres ASimul PPos c)) NoVoc) TEmpty ;
|
||||||
lin ovrld237_mkVP = ComplVA ;
|
lin ovrld237_mkText = \q -> TQuestMark (PhrUtt NoPConj (UttQS q) NoVoc) TEmpty ;
|
||||||
lin ovrld238_mkVP = ComplV2A ;
|
lin ovrld238_mkText = \i -> TExclMark (PhrUtt NoPConj (UttImpSg PPos i) NoVoc) TEmpty ;
|
||||||
lin ovrld239_mkVP = \a -> UseComp (CompAP (PositA a)) ;
|
lin ovrld239_mkText = \p,i -> TExclMark (PhrUtt NoPConj (UttImpSg p i) NoVoc) TEmpty ;
|
||||||
lin ovrld240_mkVP = \y,z -> (UseComp (CompAP (ComparA y z))) ;
|
lin ovrld240_mkText = TFullStop ;
|
||||||
lin ovrld241_mkVP = \y,z -> (UseComp (CompAP (ComplA2 y z))) ;
|
lin ovrld241_mkVP = UseV ;
|
||||||
lin ovrld242_mkVP = \a -> UseComp (CompAP a) ;
|
lin ovrld242_mkVP = ComplV2 ;
|
||||||
lin ovrld243_mkVP = \a -> UseComp (CompNP a) ;
|
lin ovrld243_mkVP = ComplV3 ;
|
||||||
lin ovrld244_mkVP = \y -> (UseComp (CompNP (DetCN (DetSg (SgQuant IndefArt) NoOrd) y))) ;
|
lin ovrld244_mkVP = ComplVV ;
|
||||||
lin ovrld245_mkVP = \y -> (UseComp (CompNP (DetCN (DetSg (SgQuant IndefArt) NoOrd) (UseN y)))) ;
|
lin ovrld245_mkVP = ComplVS ;
|
||||||
lin ovrld246_mkVP = \a -> UseComp (CompAdv a) ;
|
lin ovrld246_mkVP = ComplVQ ;
|
||||||
lin ovrld247_mkVP = AdvVP ;
|
lin ovrld247_mkVP = ComplVA ;
|
||||||
lin ovrld248_mkVP = AdVVP ;
|
lin ovrld248_mkVP = ComplV2A ;
|
||||||
lin ovrld249_reflexiveVP = ReflV2 ;
|
lin ovrld249_mkVP = \a -> UseComp (CompAP (PositA a)) ;
|
||||||
lin ovrld250_passiveVP = PassV2 ;
|
lin ovrld250_mkVP = \y,z -> (UseComp (CompAP (ComparA y z))) ;
|
||||||
lin ovrld251_passiveVP = \v,np -> (AdvVP (PassV2 v) (PrepNP by8agent_Prep np)) ;
|
lin ovrld251_mkVP = \y,z -> (UseComp (CompAP (ComplA2 y z))) ;
|
||||||
lin ovrld252_progressiveVP = ProgrVP ;
|
lin ovrld252_mkVP = \a -> UseComp (CompAP a) ;
|
||||||
lin ovrld253_mkListS = BaseS ;
|
lin ovrld253_mkVP = \a -> UseComp (CompNP a) ;
|
||||||
lin ovrld254_mkListS = ConsS ;
|
lin ovrld254_mkVP = \y -> (UseComp (CompNP (DetCN (DetSg (SgQuant IndefArt) NoOrd) y))) ;
|
||||||
lin ovrld255_mkListAP = BaseAP ;
|
lin ovrld255_mkVP = \y -> (UseComp (CompNP (DetCN (DetSg (SgQuant IndefArt) NoOrd) (UseN y)))) ;
|
||||||
lin ovrld256_mkListAP = ConsAP ;
|
lin ovrld256_mkVP = \a -> UseComp (CompAdv a) ;
|
||||||
lin ovrld257_mkListAdv = BaseAdv ;
|
lin ovrld257_mkVP = AdvVP ;
|
||||||
lin ovrld258_mkListAdv = ConsAdv ;
|
lin ovrld258_mkVP = AdVVP ;
|
||||||
lin ovrld259_mkListNP = BaseNP ;
|
lin ovrld259_reflexiveVP = ReflV2 ;
|
||||||
lin ovrld260_mkListNP = ConsNP ;
|
lin ovrld260_passiveVP = PassV2 ;
|
||||||
|
lin ovrld261_passiveVP = \v,np -> (AdvVP (PassV2 v) (PrepNP by8agent_Prep np)) ;
|
||||||
|
lin ovrld262_progressiveVP = ProgrVP ;
|
||||||
|
lin ovrld263_mkListS = BaseS ;
|
||||||
|
lin ovrld264_mkListS = ConsS ;
|
||||||
|
lin ovrld265_mkListAP = BaseAP ;
|
||||||
|
lin ovrld266_mkListAP = ConsAP ;
|
||||||
|
lin ovrld267_mkListAdv = BaseAdv ;
|
||||||
|
lin ovrld268_mkListAdv = ConsAdv ;
|
||||||
|
lin ovrld269_mkListNP = BaseNP ;
|
||||||
|
lin ovrld270_mkListNP = ConsNP ;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -319,9 +319,12 @@
|
|||||||
futureTense : Tense = TFut ; --# notpresent
|
futureTense : Tense = TFut ; --# notpresent
|
||||||
conditionalTense : Tense = TCond ; --# notpresent
|
conditionalTense : Tense = TCond ; --# notpresent
|
||||||
|
|
||||||
-- singularImpForm : ImpForm = ss [] ;
|
singularImpForm : ImpForm
|
||||||
-- pluralImpForm : ImpForm = ss [] ;
|
= {p= IFSg; s= []} ;
|
||||||
-- politeImpForm : ImpForm = ss [] ;
|
pluralImpForm : ImpForm
|
||||||
|
= {p= IFPl; s= []} ;
|
||||||
|
politeImpForm : ImpForm
|
||||||
|
= {p= IFPol; s= []} ;
|
||||||
|
|
||||||
-- mkUttImp : ImpForm -> Pol -> Imp -> Utt = \f,p,i -> case f of {
|
-- mkUttImp : ImpForm -> Pol -> Imp -> Utt = \f,p,i -> case f of {
|
||||||
IFSg => UttImpSg p i ;
|
IFSg => UttImpSg p i ;
|
||||||
@@ -335,11 +338,11 @@
|
|||||||
mkUtt : Cl -> Utt -- John walks
|
mkUtt : Cl -> Utt -- John walks
|
||||||
= \c -> UttS (UseCl TPres ASimul PPos c) ;
|
= \c -> UttS (UseCl TPres ASimul PPos c) ;
|
||||||
mkUtt : QS -> Utt -- is it good
|
mkUtt : QS -> Utt -- is it good
|
||||||
= UttQS ;
|
= UttQS
|
||||||
-- mkUtt : ImpForm -> Pol -> Imp -> Utt -- don't help yourselves
|
mkUtt : ImpForm -> Pol -> Imp -> Utt -- don't help yourselves
|
||||||
-- = mkUttImp ;
|
= \f -> mkUttImp f.p f.s ;
|
||||||
-- mkUtt : ImpForm -> Imp -> Utt -- help yourselves
|
mkUtt : ImpForm -> Imp -> Utt -- help yourselves
|
||||||
-- = \f -> mkUttImp f PPos ;
|
= \f -> mkUttImp f.p f.s PPos ;
|
||||||
mkUtt : Pol -> Imp -> Utt -- (don't) help yourself
|
mkUtt : Pol -> Imp -> Utt -- (don't) help yourself
|
||||||
= UttImpSg ;
|
= UttImpSg ;
|
||||||
mkUtt : Imp -> Utt -- help yourself
|
mkUtt : Imp -> Utt -- help yourself
|
||||||
@@ -509,9 +512,12 @@
|
|||||||
oper
|
oper
|
||||||
emptyText : Text = TEmpty ; -- [empty text]
|
emptyText : Text = TEmpty ; -- [empty text]
|
||||||
|
|
||||||
-- fullStopPunct : Punct = {p = PFullStop ; s = []} ; -- .
|
fullStopPunct : Punct
|
||||||
-- questMarkPunct : Punct = {p = PQuestMark ; s = []} ; -- .
|
= {p= PFullStop; s= []} ; -- .
|
||||||
-- exclMarkPunct : Punct = {p = PExclMark ; s = []} ; -- .
|
questMarkPunct : Punct
|
||||||
|
= {p= PQuestMark; s= []} ; -- .
|
||||||
|
exclMarkPunct : Punct
|
||||||
|
= {p= PExclMark; s= []} ; -- .
|
||||||
|
|
||||||
-- lincat Impform = {p : PImpForm ; s : Str} ;
|
-- lincat Impform = {p : PImpForm ; s : Str} ;
|
||||||
-- lincat Punct = {p : PPunct ; s : Str} ;
|
-- lincat Punct = {p : PPunct ; s : Str} ;
|
||||||
@@ -519,18 +525,10 @@
|
|||||||
-- param PPunct = PFullStop | PExclMark | PQuestMark ;
|
-- param PPunct = PFullStop | PExclMark | PQuestMark ;
|
||||||
|
|
||||||
mkText = overload {
|
mkText = overload {
|
||||||
-- mkText : Phr -> Punct -> Text -> Text =
|
mkText : Phr -> Punct -> Text -> Text
|
||||||
-- \phr,punct,text -> case punct of {
|
= \p,f -> mkPhrPunct p f.p f.s ;
|
||||||
-- PFullStop => TFullStop phr text ;
|
mkText : Phr -> Punct -> Text
|
||||||
-- PExclMark => TExclMark phr text ;
|
= \p,f -> mkPhrPunct p f.p f.s TEmpty ;
|
||||||
-- PQuestMark => TQuestMark phr text
|
|
||||||
-- } ;
|
|
||||||
-- mkText : Phr -> Punct -> Text =
|
|
||||||
-- \phr,punct -> case punct of {
|
|
||||||
-- PFullStop => TFullStop phr TEmpty ;
|
|
||||||
-- PExclMark => TExclMark phr TEmpty ;
|
|
||||||
-- PQuestMark => TQuestMark phr TEmpty
|
|
||||||
-- } ;
|
|
||||||
mkText : Phr -> Text -- John walks.
|
mkText : Phr -> Text -- John walks.
|
||||||
= \x -> TFullStop x TEmpty ;
|
= \x -> TFullStop x TEmpty ;
|
||||||
mkText : Utt -> Text
|
mkText : Utt -> Text
|
||||||
|
|||||||
Reference in New Issue
Block a user