Files
gf-core/examples/translator/SmallNDPredFunctor.gf

230 lines
5.0 KiB
Plaintext

incomplete concrete NDPredFunctor of NDPred =
Cat [Ant,NP,Utt,IP,IAdv,Conj,RS,RP,Subj] **
open
PredInterface,
Pred,
ParamX,
Prelude
in {
------------------------------------
-- lincats
-------------------------------------
lincat
Tense = Pred.Tense ;
Pol = Pred.Pol ;
PrV_none, PrV_np, PrV_v, PrV_s, PrV_q, PrV_a, PrV_n,
PrV_np_np, PrV_np_v, PrV_np_s, PrV_np_q, PrV_np_a, PrV_np_n = Pred.PrV ;
PrVP_none, PrVP_np, PrVP_v, PrVP_s, PrVP_q, PrVP_a, PrVP_n,
PrVP_np_np, PrVP_np_v, PrVP_np_s, PrVP_np_q, PrVP_np_a, PrVP_np_n = Pred.PrVP ;
PrVPI_none, PrVPI_np = Pred.PrVPI ;
PrCl_none, PrCl_np = Pred.PrCl ;
PrQCl_none, PrQCl_np = Pred.PrQCl ;
VPC_none, VPC_np = Pred.VPC ;
ClC_none, ClC_np = Pred.ClC ;
PrAdv_none, PrAdv_np = Pred.PrAdv ;
PrS = Pred.PrS ;
PrAP_none, PrAP_np = Pred.PrAP ;
PrCN_none, PrCN_np = Pred.PrCN ;
-- reference linearizations for chunking
---- should be by functor as well
linref
PrVP_none, PrVP_np, PrVP_v, PrVP_s, PrVP_q, PrVP_a, PrVP_n,
PrVP_np_np, PrVP_np_v, PrVP_np_s, PrVP_np_q, PrVP_np_a, PrVP_np_n
= linrefPrVP ;
PrCl_none, PrCl_np = linrefPrCl ;
PrQCl_none, PrQCl_np = linrefPrQCl ;
PrAdv_none, PrAdv_np = linrefPrAdv ;
---- PrAP_none, PrAP_np = \ap -> ap.s ! defaultAgr ++ ap.obj1 ! defaultAgr ;
---- PrCN_none, PrCN_np = \cn -> cn.s ! Sg ++ cn.obj1 ! defaultAgr ;
----------------------------
--- linearization rules ----
----------------------------
lin
-- standard general
TPres = Pred.TPres ;
TPast = Pred.TPast ;
TFut = Pred.TFut ;
TCond = Pred.TCond ;
ASimul = Pred.ASimul ;
AAnter = Pred.AAnter ;
PPos = Pred.PPos ;
PNeg = Pred.PNeg ;
UseV_none, UseV_np, UseV_v, UseV_s, UseV_q, UseV_a, UseV_n, UseV_np_np, UseV_np_v, UseV_np_s, UseV_np_q, UseV_np_a, UseV_np_n
= Pred.UseV Pred.aNone ;
{-
PassUseV_none, PassUseV_np, PassUseV_v, PassUseV_s, PassUseV_q, PassUseV_a, PassUseV_n
= Pred.PassUseV Pred.aNone ;
AgentPassUseV_none, AgentPassUseV_np, AgentPassUseV_v, AgentPassUseV_s, AgentPassUseV_q, AgentPassUseV_a, AgentPassUseV_n
= Pred.AgentPassUseV Pred.aNone ;
-}
UseAP_none, UseAP_np
= Pred.UseAP Pred.aNone ;
UseCN_none, UseCN_np
= Pred.UseCN Pred.aNone ;
UseAdv_none, UseAdv_np
= Pred.UseAdv Pred.aNone ;
UseNP_none
= Pred.UseNP ;
{-
UseS_none
= Pred.UseS ;
UseQ_none
= Pred.UseQ ;
UseVP_none
= Pred.UseVP ;
-}
ComplV2_none
= Pred.ComplV2 Pred.aNone ;
{-
ComplVV_none, ComplVV_np
= Pred.ComplVV Pred.aNone ;
ComplVS_none, ComplVS_np
= Pred.ComplVS Pred.aNone ;
ComplVA_none
= Pred.ComplVA Pred.aNone ;
ComplVQ_none
= Pred.ComplVQ Pred.aNone ;
ComplVN_none
= Pred.ComplVN Pred.aNone ;
SlashV3_none
= Pred.SlashV3 Pred.aNone ;
SlashV2V_none, SlashV2V_np
= Pred.SlashV2V Pred.aNone ;
SlashV2S_none
= Pred.SlashV2S Pred.aNone ;
SlashV2Q_none
= Pred.SlashV2Q Pred.aNone ;
SlashV2A_none
= Pred.SlashV2A Pred.aNone ;
SlashV2N_none
= Pred.SlashV2N Pred.aNone ;
ReflVP_none, ReflVP_np, ReflVP_v, ReflVP_s, ReflVP_q, ReflVP_a, ReflVP_n
= Pred.ReflVP Pred.aNone ;
ReflVP2_np
= Pred.ReflVP2 Pred.aNone ;
InfVP_none, InfVP_np
= Pred.InfVP Pred.aNone ;
-}
PredVP_none, PredVP_np
= Pred.PredVP Pred.aNone ;
{-
SlashClNP_none
= Pred.SlashClNP Pred.aNone ;
-}
QuestCl_none, QuestCl_np
= Pred.QuestCl Pred.aNone ;
QuestIAdv_none
= Pred.QuestIAdv Pred.aNone ;
QuestIComp_none
= Pred.QuestIComp ;
QuestVP_none
= Pred.QuestVP Pred.aNone ;
{-
QuestSlash_none
= Pred.QuestSlash Pred.aNone ;
UseCl_none
= Pred.UseCl ;
UseQCl_none
= Pred.UseQCl ;
UseAdvCl_none
= Pred.UseAdvCl ;
-}
UttPrS
= Pred.UttPrS ;
AdvCl_none, AdvCl_np
= Pred.AdvCl Pred.aNone ;
{-
AdvQCl_none, AdvQCl_np
= Pred.AdvQCl Pred.aNone ;
---- RelCl_none
---- = Pred.RelCl Pred.aNone ;
RelVP_none
= Pred.RelVP ;
RelSlash_none
= Pred.RelSlash ;
PrImpSg
= Pred.PrImpSg ;
PrImpPl
= Pred.PrImpPl ;
PresPartAP_none, PresPartAP_np
= Pred.PresPartAP Pred.aNone ;
PastPartAP_none
= Pred.PastPartAP Pred.aNone ;
AgentPastPartAP_none
= Pred.AgentPastPartAP Pred.aNone ;
NomVPNP_none
= Pred.NomVPNP ;
ByVP_none
= Pred.ByVP Pred.aNone ;
WhenVP_none
= Pred.WhenVP Pred.aNone ;
BeforeVP_none
= Pred.BeforeVP Pred.aNone ;
AfterVP_none
= Pred.AfterVP Pred.aNone ;
InOrderVP_none
= Pred.InOrderVP Pred.aNone ;
WithoutVP_none
= Pred.WithoutVP Pred.aNone ;
StartVPC_none, StartVPC_np
= Pred.StartVPC Pred.aNone ;
ContVPC_none, ContVPC_np
= Pred.ContVPC Pred.aNone ;
UseVPC_none, UseVPC_np
= Pred.UseVPC Pred.aNone ;
StartClC_none, StartClC_np
= Pred.StartClC Pred.aNone ;
ContClC_none, ContClC_np
= Pred.ContClC Pred.aNone ;
UseClC_none, UseClC_np
= Pred.UseClC Pred.aNone ;
ComplAdv_none
= Pred.ComplAdv Pred.aNone ;
SubjUttPreS
= Pred.SubjUttPreS ;
SubjUttPreQ
= Pred.SubjUttPreQ ;
SubjUttPost
= Pred.SubjUttPost ;
-}
}