mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-17 00:39:32 -06:00
63 lines
1.9 KiB
Plaintext
63 lines
1.9 KiB
Plaintext
--# -path=.:../abstract:../../prelude
|
|
|
|
incomplete concrete DemonstrativeI of Demonstrative =
|
|
open Prelude, Resource, Basic, DemRes in {
|
|
|
|
lincat
|
|
MS = MultiSentence ;
|
|
MQS = MultiQuestion ;
|
|
MImp = MultiImperative ;
|
|
DNP = Demonstrative ;
|
|
DAdv = DemAdverb ;
|
|
[DAdv] = DemAdverb ;
|
|
Point = Pointing ;
|
|
|
|
lin
|
|
MkPoint s = {s5 = s.s} ;
|
|
|
|
DemV verb dem adv =
|
|
mkDemS (SPredV dem verb) adv dem ;
|
|
DemV2 verb su ob adv =
|
|
mkDemS (SPredV2 su verb ob) adv (concatDem su ob) ;
|
|
ModDemV vv verb dem adv =
|
|
mkDemS (SPredVV dem vv (UseVCl PPos ASimul (IPredV verb))) adv dem ;
|
|
ModDemV2 vv verb su ob adv =
|
|
mkDemS (SPredVV su vv (UseVCl PPos ASimul (IPredV2 verb ob))) adv (concatDem su ob) ;
|
|
|
|
ImpDemV verb adv =
|
|
mkDemImp (IPredV verb) adv noPointing ;
|
|
ImpDemV2 verb ob adv =
|
|
mkDemImp (IPredV2 verb ob) adv ob ;
|
|
|
|
QDemV verb ip adv =
|
|
mkDemQ (QPredV ip verb) adv noPointing ;
|
|
QDemV2 verb ip ob adv =
|
|
mkDemQ (QPredV2 ip verb ob) adv ob ;
|
|
QDemSlashV2 verb su ip adv =
|
|
mkDemQ (IntSlash ip (SlashV2 su verb)) adv su ;
|
|
QModDemV vv verb ip adv =
|
|
mkDemQ (QPredVV ip vv (UseVCl PPos ASimul (IPredV verb))) adv noPointing ;
|
|
QModDemV2 vv verb ip ob adv =
|
|
mkDemQ (QPredVV ip vv (UseVCl PPos ASimul (IPredV2 verb ob))) adv ob ;
|
|
QModDemSlashV2 vv verb su ip adv =
|
|
mkDemQ (IntSlash ip (SlashVV2 su vv verb)) adv su ;
|
|
|
|
this_DNP p = this_NP ** p ;
|
|
that_DNP p = that_NP ** p ;
|
|
thisDet_DNP p cn = DetNP this_Det cn ** p ;
|
|
thatDet_DNP p cn = DetNP that_Det cn ** p ;
|
|
|
|
here_DAdv p = mkDAdv here_Adv p ;
|
|
here7from_DAdv p = mkDAdv here7from_Adv p ;
|
|
here7to_DAdv p = mkDAdv here7to_Adv p ;
|
|
|
|
BaseDAdv = {s,s5 = [] ; lock_Adv = <>} ;
|
|
ConsDAdv a as = {s = a.s ++ as.s ; s5 = a.s5 ++ as.s5 ; lock_Adv = <>} ;
|
|
|
|
PrepDNP p np = mkDAdv (AdvPP (PrepNP p np)) np ;
|
|
|
|
point1 = {s5 = "p1"} ;
|
|
point2 = {s5 = "p2"} ;
|
|
|
|
}
|