forked from GitHub/gf-core
started updating English
This commit is contained in:
@@ -91,7 +91,6 @@ fun
|
|||||||
AdvPP : PP -> Adv ; -- "in London", "after the war"
|
AdvPP : PP -> Adv ; -- "in London", "after the war"
|
||||||
PrepNP : Prep -> NP -> PP ; -- "in London", "after the war"
|
PrepNP : Prep -> NP -> PP ; -- "in London", "after the war"
|
||||||
|
|
||||||
--- AdvVP : VP -> Adv -> VP ; -- "always walks", "walks in the park"
|
|
||||||
AdvVP : VP -> Adv -> VP ; -- "always walks", "walks in the park"
|
AdvVP : VP -> Adv -> VP ; -- "always walks", "walks in the park"
|
||||||
AdvCN : CN -> PP -> CN ; -- "house in London"
|
AdvCN : CN -> PP -> CN ; -- "house in London"
|
||||||
AdvAP : AdA -> AP -> AP ; -- "very good"
|
AdvAP : AdA -> AP -> AP ; -- "very good"
|
||||||
@@ -111,8 +110,7 @@ fun
|
|||||||
|
|
||||||
IdRP : RP ; -- "which"
|
IdRP : RP ; -- "which"
|
||||||
FunRP : N2 -> RP -> RP ; -- "the successor of which"
|
FunRP : N2 -> RP -> RP ; -- "the successor of which"
|
||||||
--- RelVP : RP -> VP -> RCl ; -- "who walks", "who doesn't walk"
|
RelVP : RP -> VP -> RCl ; -- "who walks", "who doesn't walk"
|
||||||
RelVP : RP -> VP -> RCl ; -- "who walks", "who doesn't walk"
|
|
||||||
RelSlash : RP -> Slash -> RCl ; -- "that I wait for"/"for which I wait"
|
RelSlash : RP -> Slash -> RCl ; -- "that I wait for"/"for which I wait"
|
||||||
--- ModRC : CN -> RS -> CN ; -- "man who walks"
|
--- ModRC : CN -> RS -> CN ; -- "man who walks"
|
||||||
ModRS : CN -> RS -> CN ; -- "man who walks"
|
ModRS : CN -> RS -> CN ; -- "man who walks"
|
||||||
|
|||||||
@@ -48,8 +48,8 @@ lincat
|
|||||||
|
|
||||||
V = Verb ;
|
V = Verb ;
|
||||||
-- = {s : VForm => Str ; s1 : Particle}
|
-- = {s : VForm => Str ; s1 : Particle}
|
||||||
VG = {s,s2 : Bool => VPForm => Str ; s3 : Number => Str ; isAux : Bool} ;
|
VP = {s,s2 : Bool => SForm => Str ; s3 : Number => Str ; isAux : Bool} ;
|
||||||
VP = {s,s2 : VPForm => Str ; s3 : Number => Str ; isAux : Bool} ;
|
VPI = {s,s2 : Str ; s3 : Number => Str ; isAux : Bool} ;
|
||||||
V2 = TransVerb ;
|
V2 = TransVerb ;
|
||||||
-- = Verb ** {s3 : Preposition} ;
|
-- = Verb ** {s3 : Preposition} ;
|
||||||
V3 = TransVerb ** {s4 : Preposition} ;
|
V3 = TransVerb ** {s4 : Preposition} ;
|
||||||
@@ -61,12 +61,14 @@ lincat
|
|||||||
S = {s : Str} ;
|
S = {s : Str} ;
|
||||||
Cl = Clause ;
|
Cl = Clause ;
|
||||||
-- = {s : Bool => SForm => Str} ;
|
-- = {s : Bool => SForm => Str} ;
|
||||||
Slash = {s : Order => Str ; s2 : Preposition} ;
|
Slash = Clause ** {s2 : Preposition} ;
|
||||||
RP = {s : Gender => Number => NPForm => Str} ;
|
RP = {s : Gender => Number => NPForm => Str} ;
|
||||||
RC = {s : Gender => Number => Str} ;
|
RCl = {s : Bool => SForm => Gender => Number => Str} ;
|
||||||
|
RS = {s : Gender => Number => Str} ;
|
||||||
|
|
||||||
IP = {s : NPForm => Str ; n : Number} ;
|
IP = {s : NPForm => Str ; n : Number} ;
|
||||||
Qu = {s : QuestForm => Str} ;
|
QCl = {s : Bool => SForm => QuestForm => Str} ;
|
||||||
|
QS = {s : QuestForm => Str} ;
|
||||||
Imp = {s : Number => Str} ;
|
Imp = {s : Number => Str} ;
|
||||||
Phr = {s : Str} ;
|
Phr = {s : Str} ;
|
||||||
Text = {s : Str} ;
|
Text = {s : Str} ;
|
||||||
|
|||||||
@@ -60,18 +60,14 @@ lin
|
|||||||
{s = \\n,c => cn.s ! n ! c ++ s.s ;
|
{s = \\n,c => cn.s ! n ! c ++ s.s ;
|
||||||
g = cn.g} ;
|
g = cn.g} ;
|
||||||
|
|
||||||
PredVP = predVerbPhrase ;
|
PredVP = predVerbGroupClause ;
|
||||||
PosVG = predVerbGroup True ;
|
|
||||||
NegVG = predVerbGroup False ;
|
|
||||||
|
|
||||||
PredVG = predVerbGroupClause ;
|
|
||||||
|
|
||||||
PredV = predVerb ;
|
PredV = predVerb ;
|
||||||
PredAP = predAdjective ;
|
PredAP = predAdjective ;
|
||||||
PredSuperl a = predAdjective (superlAdjPhrase a) ;
|
PredSuperl a = predAdjective (superlAdjPhrase a) ;
|
||||||
PredCN = predCommNoun ;
|
PredCN = predCommNoun ;
|
||||||
PredV2 = complTransVerb ;
|
PredV2 = complTransVerb ;
|
||||||
PredV3 = complDitransVerb ;
|
---- PredV3 = complDitransVerb ;
|
||||||
PredPassV = passVerb ;
|
PredPassV = passVerb ;
|
||||||
PredNP = predNounPhrase ;
|
PredNP = predNounPhrase ;
|
||||||
PredPP = predAdverb ;
|
PredPP = predAdverb ;
|
||||||
@@ -86,10 +82,9 @@ lin
|
|||||||
AdvCN = advCommNounPhrase ;
|
AdvCN = advCommNounPhrase ;
|
||||||
AdvAP = advAdjPhrase ;
|
AdvAP = advAdjPhrase ;
|
||||||
|
|
||||||
PosSlashV2 = slashTransVerb True ;
|
SlashV2 = slashTransVerb ;
|
||||||
NegSlashV2 = slashTransVerb False ;
|
---- OneVP = predVerbPhrase (nameNounPhrase (nameReg "one")) ;
|
||||||
OneVP = predVerbPhrase (nameNounPhrase (nameReg "one")) ;
|
---- ThereNP = thereIs ;
|
||||||
ThereNP = thereIs ;
|
|
||||||
|
|
||||||
IdRP = identRelPron ;
|
IdRP = identRelPron ;
|
||||||
FunRP = funRelPron ;
|
FunRP = funRelPron ;
|
||||||
|
|||||||
@@ -306,7 +306,7 @@ oper
|
|||||||
Tense = Present | Past ;
|
Tense = Present | Past ;
|
||||||
Anteriority = Simul | Anter ;
|
Anteriority = Simul | Anter ;
|
||||||
Order = Direct | Indirect ;
|
Order = Direct | Indirect ;
|
||||||
VPForm =
|
SForm =
|
||||||
VIndic Tense Anteriority Number Person
|
VIndic Tense Anteriority Number Person
|
||||||
| VFut Anteriority
|
| VFut Anteriority
|
||||||
| VCondit Anteriority
|
| VCondit Anteriority
|
||||||
@@ -320,7 +320,7 @@ oper
|
|||||||
|
|
||||||
oper
|
oper
|
||||||
|
|
||||||
verbVPForm : Verb -> VPForm -> {fin,inf : Str} = \goes,sf ->
|
verbSForm : Verb -> SForm -> {fin,inf : Str} = \goes,sf ->
|
||||||
let
|
let
|
||||||
tense : Tense -> Number -> Person -> VForm = \t,n,p -> case <t,n,p> of {
|
tense : Tense -> Number -> Person -> VForm = \t,n,p -> case <t,n,p> of {
|
||||||
<Present,Sg,_> => Indic p ;
|
<Present,Sg,_> => Indic p ;
|
||||||
@@ -363,10 +363,10 @@ oper
|
|||||||
|
|
||||||
useVerb : Verb -> (Number => Str) -> VerbGroup = \verb,arg ->
|
useVerb : Verb -> (Number => Str) -> VerbGroup = \verb,arg ->
|
||||||
let
|
let
|
||||||
go = verbVPForm verb ;
|
go = verbSForm verb ;
|
||||||
off = verb.s1 ;
|
off = verb.s1 ;
|
||||||
has : VPForm => Str = \\f => (go f).fin ;
|
has : SForm => Str = \\f => (go f).fin ;
|
||||||
gone : VPForm => Str = \\f => (go f).inf ++ off
|
gone : SForm => Str = \\f => (go f).inf ++ off
|
||||||
in {
|
in {
|
||||||
s = table {
|
s = table {
|
||||||
True => has ;
|
True => has ;
|
||||||
@@ -392,9 +392,9 @@ oper
|
|||||||
|
|
||||||
useVerbAux : Verb -> (Number => Str) -> VerbGroup = \verb,arg ->
|
useVerbAux : Verb -> (Number => Str) -> VerbGroup = \verb,arg ->
|
||||||
let
|
let
|
||||||
go = verbVPForm verb ;
|
go = verbSForm verb ;
|
||||||
has : VPForm => Str = \\f => (go f).fin ;
|
has : SForm => Str = \\f => (go f).fin ;
|
||||||
gone : VPForm => Str = \\f => (go f).inf
|
gone : SForm => Str = \\f => (go f).inf
|
||||||
in {
|
in {
|
||||||
s = \\b =>
|
s = \\b =>
|
||||||
table {
|
table {
|
||||||
@@ -428,15 +428,15 @@ oper
|
|||||||
-- this is needed in question.
|
-- this is needed in question.
|
||||||
|
|
||||||
VerbGroup = {
|
VerbGroup = {
|
||||||
s : Bool => VPForm => Str ;
|
s : Bool => SForm => Str ;
|
||||||
s2 : Bool => VPForm => Str ;
|
s2 : Bool => SForm => Str ;
|
||||||
s3 : Number => Str ;
|
s3 : Number => Str ;
|
||||||
isAux : Bool
|
isAux : Bool
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
VerbPhrase = {
|
VerbPhrase = {
|
||||||
s : VPForm => Str ;
|
s : Str ;
|
||||||
s2 : VPForm => Str ;
|
s2 : Str ;
|
||||||
s3 : Number => Str ;
|
s3 : Number => Str ;
|
||||||
isAux : Bool ;
|
isAux : Bool ;
|
||||||
} ;
|
} ;
|
||||||
@@ -630,7 +630,7 @@ oper
|
|||||||
;
|
;
|
||||||
|
|
||||||
oper
|
oper
|
||||||
cl2s : ClForm -> Number -> Person -> {form : VPForm ; order : Order} = \c,n,p -> case c of {
|
cl2s : ClForm -> Number -> Person -> {form : SForm ; order : Order} = \c,n,p -> case c of {
|
||||||
ClIndic Indirect t Simul => {form = VQuest t n p ; order = Indirect} ;
|
ClIndic Indirect t Simul => {form = VQuest t n p ; order = Indirect} ;
|
||||||
ClIndic o t a => {form = VIndic t a n p ; order = o} ;
|
ClIndic o t a => {form = VIndic t a n p ; order = o} ;
|
||||||
ClFut o a => {form = VFut a ; order = o} ;
|
ClFut o a => {form = VFut a ; order = o} ;
|
||||||
@@ -785,7 +785,8 @@ oper
|
|||||||
-- Relative clauses can be formed from both verb phrases ("who walks") and
|
-- Relative clauses can be formed from both verb phrases ("who walks") and
|
||||||
-- slash expressions ("whom you see", "on which you sit" / "that you sit on").
|
-- slash expressions ("whom you see", "on which you sit" / "that you sit on").
|
||||||
|
|
||||||
RelClause : Type = {s : Gender => Number => Str} ;
|
RelClause : Type = {s : Bool => SForm => Gender => Number => Str} ;
|
||||||
|
RelSentence : Type = {s : Gender => Number => Str} ;
|
||||||
|
|
||||||
relVerbPhrase : RelPron -> VerbPhrase -> RelClause = \who,walks ->
|
relVerbPhrase : RelPron -> VerbPhrase -> RelClause = \who,walks ->
|
||||||
{s = \\g,n => (predVerbPhrase (relNounPhrase who g n) walks).s} ;
|
{s = \\g,n => (predVerbPhrase (relNounPhrase who g n) walks).s} ;
|
||||||
@@ -885,7 +886,8 @@ param
|
|||||||
QuestForm = DirQ | IndirQ ;
|
QuestForm = DirQ | IndirQ ;
|
||||||
|
|
||||||
oper
|
oper
|
||||||
Question = SS1 QuestForm ;
|
Question = {s : Bool => SForm => QuestForm => Str} ;
|
||||||
|
QuestionSent = {s : QuestForm => Str} ;
|
||||||
|
|
||||||
--- TODO: questions in all tenses.
|
--- TODO: questions in all tenses.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user