mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-23 11:42:49 -06:00
Temp = Tense + Ant in next-resource
This commit is contained in:
@@ -46,11 +46,14 @@ abstract Common = {
|
|||||||
|
|
||||||
--2 Tense, polarity, and anteriority
|
--2 Tense, polarity, and anteriority
|
||||||
|
|
||||||
|
Temp ; -- temporal and aspectual features e.g. past anterior
|
||||||
Tense ; -- tense e.g. present, past, future
|
Tense ; -- tense e.g. present, past, future
|
||||||
Pol ; -- polarity e.g. positive, negative
|
Pol ; -- polarity e.g. positive, negative
|
||||||
Ant ; -- anteriority e.g. simultaneous, anterior
|
Ant ; -- anteriority e.g. simultaneous, anterior
|
||||||
|
|
||||||
fun
|
fun
|
||||||
|
TTAnt : Tense -> Ant -> Temp ;
|
||||||
|
|
||||||
PPos, PNeg : Pol ; -- I sleep/don't sleep
|
PPos, PNeg : Pol ; -- I sleep/don't sleep
|
||||||
|
|
||||||
TPres : Tense ;
|
TPres : Tense ;
|
||||||
|
|||||||
@@ -57,18 +57,18 @@ abstract Sentence = Cat ** {
|
|||||||
-- anteriority, which are defined in [``Common`` Common.html].
|
-- anteriority, which are defined in [``Common`` Common.html].
|
||||||
|
|
||||||
fun
|
fun
|
||||||
UseCl : Tense -> Ant -> Pol -> Cl -> S ;
|
UseCl : Temp -> Pol -> Cl -> S ;
|
||||||
UseQCl : Tense -> Ant -> Pol -> QCl -> QS ;
|
UseQCl : Temp -> Pol -> QCl -> QS ;
|
||||||
UseRCl : Tense -> Ant -> Pol -> RCl -> RS ;
|
UseRCl : Temp -> Pol -> RCl -> RS ;
|
||||||
UseSlash : Tense -> Ant -> Pol -> ClSlash -> SSlash ;
|
UseSlash : Temp -> Pol -> ClSlash -> SSlash ;
|
||||||
|
|
||||||
-- An adverb can be added to the beginning of a sentence.
|
-- An adverb can be added to the beginning of a sentence.
|
||||||
|
|
||||||
AdvS : Adv -> S -> S ; -- today, I will go home
|
AdvS : Adv -> S -> S ; -- today, I will go home
|
||||||
|
|
||||||
-- A sentence can be modified by a relative clause referring to its contents.
|
-- A sentence can be modified by a relative clause referring to its contents.
|
||||||
|
|
||||||
RelS : S -> RS -> S ; -- she sleeps, which is good
|
RelS : S -> RS -> S ; -- she sleeps, which is good
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -14,11 +14,14 @@ concrete CommonX of Common = open (R = ParamX) in {
|
|||||||
CAdv = {s : Str} ; --lock_CAdv : {}} ;
|
CAdv = {s : Str} ; --lock_CAdv : {}} ;
|
||||||
PConj = {s : Str} ; --lock_PConj : {}} ;
|
PConj = {s : Str} ; --lock_PConj : {}} ;
|
||||||
|
|
||||||
|
Temp = {s : Str ; t : R.Tense ; a : R.Anteriority} ;
|
||||||
Tense = {s : Str ; t : R.Tense} ;
|
Tense = {s : Str ; t : R.Tense} ;
|
||||||
Ant = {s : Str ; a : R.Anteriority} ;
|
Ant = {s : Str ; a : R.Anteriority} ;
|
||||||
Pol = {s : Str ; p : R.Polarity} ;
|
Pol = {s : Str ; p : R.Polarity} ;
|
||||||
|
|
||||||
lin
|
lin
|
||||||
|
TTAnt t a = {s = t.s ++ a.s ; t = t.t ; a = a.a} ;
|
||||||
|
|
||||||
PPos = {s = []} ** {p = R.Pos} ;
|
PPos = {s = []} ** {p = R.Pos} ;
|
||||||
PNeg = {s = []} ** {p = R.Neg} ;
|
PNeg = {s = []} ** {p = R.Neg} ;
|
||||||
TPres = {s = []} ** {t = R.Pres} ;
|
TPres = {s = []} ** {t = R.Pres} ;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ concrete ExtraEng of ExtraEngAbs = CatEng **
|
|||||||
open ResEng, Coordination, Prelude in {
|
open ResEng, Coordination, Prelude in {
|
||||||
|
|
||||||
lin
|
lin
|
||||||
GenNP np = {s = \\_ => np.s ! Gen} ;
|
GenNP np = {s,sp = \\_,_ => np.s ! Gen} ;
|
||||||
ComplBareVS v s = insertObj (\\_ => s.s) (predV v) ;
|
ComplBareVS v s = insertObj (\\_ => s.s) (predV v) ;
|
||||||
|
|
||||||
StrandRelSlash rp slash = {
|
StrandRelSlash rp slash = {
|
||||||
|
|||||||
@@ -41,18 +41,18 @@ concrete SentenceEng of Sentence = CatEng ** open Prelude, ResEng in {
|
|||||||
EmbedQS qs = {s = qs.s ! QIndir} ;
|
EmbedQS qs = {s = qs.s ! QIndir} ;
|
||||||
EmbedVP vp = {s = infVP False vp (agrP3 Sg)} ; --- agr
|
EmbedVP vp = {s = infVP False vp (agrP3 Sg)} ; --- agr
|
||||||
|
|
||||||
UseCl t a p cl = {
|
UseCl t p cl = {
|
||||||
s = t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! ctr p.p ! ODir
|
s = t.s ++ p.s ++ cl.s ! t.t ! t.a ! ctr p.p ! ODir
|
||||||
} ;
|
} ;
|
||||||
UseQCl t a p cl = {
|
UseQCl t p cl = {
|
||||||
s = \\q => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! ctr p.p ! q
|
s = \\q => t.s ++ p.s ++ cl.s ! t.t ! t.a ! ctr p.p ! q
|
||||||
} ;
|
} ;
|
||||||
UseRCl t a p cl = {
|
UseRCl t p cl = {
|
||||||
s = \\r => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! ctr p.p ! r ;
|
s = \\r => t.s ++ p.s ++ cl.s ! t.t ! t.a ! ctr p.p ! r ;
|
||||||
c = cl.c
|
c = cl.c
|
||||||
} ;
|
} ;
|
||||||
UseSlash t a p cl = {
|
UseSlash t p cl = {
|
||||||
s = t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! ctr p.p ! ODir ;
|
s = t.s ++ p.s ++ cl.s ! t.t ! t.a ! ctr p.p ! ODir ;
|
||||||
c2 = cl.c2
|
c2 = cl.c2
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|||||||
@@ -41,18 +41,18 @@ incomplete concrete SentenceScand of Sentence =
|
|||||||
EmbedQS qs = {s = qs.s ! QIndir} ;
|
EmbedQS qs = {s = qs.s ! QIndir} ;
|
||||||
EmbedVP vp = {s = infMark ++ infVP vp (agrP3 utrum Sg)} ; --- agr
|
EmbedVP vp = {s = infMark ++ infVP vp (agrP3 utrum Sg)} ; --- agr
|
||||||
|
|
||||||
UseCl t a p cl = {
|
UseCl t p cl = {
|
||||||
s = \\o => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! o
|
s = \\o => t.s ++ p.s ++ cl.s ! t.t ! t.a ! p.p ! o
|
||||||
} ;
|
} ;
|
||||||
UseQCl t a p cl = {
|
UseQCl t p cl = {
|
||||||
s = \\q => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! q
|
s = \\q => t.s ++ p.s ++ cl.s ! t.t ! t.a ! p.p ! q
|
||||||
} ;
|
} ;
|
||||||
UseRCl t a p cl = {
|
UseRCl t p cl = {
|
||||||
s = \\r => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! r ;
|
s = \\r => t.s ++ p.s ++ cl.s ! t.t ! t.a ! p.p ! r ;
|
||||||
c = cl.c
|
c = cl.c
|
||||||
} ;
|
} ;
|
||||||
UseSlash t a p cl = {
|
UseSlash t p cl = {
|
||||||
s = \\o => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! o ;
|
s = \\o => t.s ++ p.s ++ cl.s ! t.t ! t.a ! p.p ! o ;
|
||||||
n3 = cl.n3 ;
|
n3 = cl.n3 ;
|
||||||
c2 = cl.c2
|
c2 = cl.c2
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
Reference in New Issue
Block a user