mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-05-27 17:08:54 -06:00
1st infinitive long
This commit is contained in:
@@ -1,12 +1,24 @@
|
|||||||
abstract Infinitive =
|
abstract Infinitive =
|
||||||
|
|
||||||
Grammar - [VPSlashPrep], ---- to avoid certain spurious ambiguities, to be fixed
|
Grammar - [
|
||||||
|
VPSlashPrep, --- to avoid certain spurious ambiguities, to be fixed
|
||||||
|
PassV2 ---- temporarily disabled, to be fixed
|
||||||
|
],
|
||||||
Lexicon
|
Lexicon
|
||||||
** {
|
** {
|
||||||
|
|
||||||
flags startcat = Utt ;
|
flags startcat = Utt ;
|
||||||
|
|
||||||
data
|
cat
|
||||||
|
RAdv ; -- reflexive adverbs, e.g. mennäkse (ni/si/...)
|
||||||
|
|
||||||
|
fun
|
||||||
|
UseV2 : V2 -> VP ; -- to use V2 intransitively, suppressing object
|
||||||
|
RAdvVP : VP -> RAdv -> VP ; -- syödä elääkseni
|
||||||
|
|
||||||
|
X_NP, Y_NP, Z_NP : NP ; -- unknown subjects and objects
|
||||||
|
tulla_VV : VV ; -- tulla (tekemään), explicit future tense
|
||||||
|
|
||||||
PresPartPassSubjVP : VP -> VP ; -- (minun) on mentävä
|
PresPartPassSubjVP : VP -> VP ; -- (minun) on mentävä
|
||||||
PresPartPassObjVP : VPSlash -> VP ; -- (oluesta) on pidettävä
|
PresPartPassObjVP : VPSlash -> VP ; -- (oluesta) on pidettävä
|
||||||
|
|
||||||
@@ -19,13 +31,12 @@ data
|
|||||||
|
|
||||||
AgentPartAP : NP -> VPSlash -> AP ; -- koiran syömä
|
AgentPartAP : NP -> VPSlash -> AP ; -- koiran syömä
|
||||||
|
|
||||||
|
Inf1LongRAdv : VP -> RAdv ; -- mennäkse (ni/si/...)
|
||||||
|
|
||||||
Inf2InessAdv : NP -> VP -> Adv ; -- junan mennessä
|
Inf2InessAdv : NP -> VP -> Adv ; -- junan mennessä
|
||||||
|
|
||||||
Inf2InessPassAdv : VP -> Adv ; -- odotettaessa (junaa), touhuttaessa (junan kanssa)
|
Inf2InessPassAdv : VP -> Adv ; -- odotettaessa (junaa), touhuttaessa (junan kanssa)
|
||||||
Inf2InessPassInvAdv : NP -> VPSlash -> Adv ; -- junaa odotettaessa, junan kanssa touhutessa
|
Inf2InessPassInvAdv : NP -> VPSlash -> Adv ; -- junaa odotettaessa, junan kanssa touhutessa
|
||||||
Inf2InstrAdv : VP -> Adv ; -- odottaen (junaa)
|
|
||||||
Inf2InstrInvAdv : NP -> VPSlash -> Adv ; -- junaa odottaen
|
|
||||||
|
|
||||||
Inf2InstrAdv : VP -> Adv ; -- odottaen (junaa)
|
Inf2InstrAdv : VP -> Adv ; -- odottaen (junaa)
|
||||||
Inf2InstrInvAdv : NP -> VPSlash -> Adv ; -- junaa odottaen
|
Inf2InstrInvAdv : NP -> VPSlash -> Adv ; -- junaa odottaen
|
||||||
|
|||||||
@@ -1,15 +1,28 @@
|
|||||||
--# -path=..:alltenses
|
--# -path=..:alltenses
|
||||||
|
|
||||||
concrete InfinitiveFin of Infinitive =
|
concrete InfinitiveFin of Infinitive =
|
||||||
GrammarFin - [VPSlashPrep],
|
GrammarFin - [
|
||||||
|
VPSlashPrep,
|
||||||
|
PassV2],
|
||||||
LexiconFin
|
LexiconFin
|
||||||
** open
|
** open
|
||||||
ResFin,
|
ResFin,
|
||||||
StemFin,
|
StemFin,
|
||||||
Prelude
|
Prelude,
|
||||||
|
ParadigmsFin
|
||||||
in {
|
in {
|
||||||
|
|
||||||
|
lincat
|
||||||
|
RAdv = {s : Agr => Str} ;
|
||||||
|
|
||||||
lin
|
lin
|
||||||
|
UseV2 v2 = predSV v2 ;
|
||||||
|
RAdvVP vp radv = insertObj (\\_,_ => radv.s) vp ; ---- can be wrong word order
|
||||||
|
|
||||||
|
X_NP = MassNP (UseN (mkN "X" "X:n")) ;
|
||||||
|
Y_NP = MassNP (UseN (mkN "Y" "Z:n")) ;
|
||||||
|
Z_NP = MassNP (UseN (mkN "Z" "Z:n")) ;
|
||||||
|
|
||||||
PresPartPassSubjVP vp = vp ** {
|
PresPartPassSubjVP vp = vp ** {
|
||||||
s = vpVerbOlla ** {sc = SCGen} ;
|
s = vpVerbOlla ** {sc = SCGen} ;
|
||||||
s2 = \\b,p,a => vp.s.s ! PresPartPass (AN (NCase Sg Nom)) ++ vp.s2 ! b ! p ! a ;
|
s2 = \\b,p,a => vp.s.s ! PresPartPass (AN (NCase Sg Nom)) ++ vp.s2 ! b ! p ! a ;
|
||||||
@@ -64,6 +77,12 @@ lin
|
|||||||
p = []
|
p = []
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
Inf1LongRAdv vp = {
|
||||||
|
s = \\a =>
|
||||||
|
infVP SCNom Pos infAdvAgr vp Inf1Long ++ BIND ++
|
||||||
|
case vp.s.h of {Back => possSuffix a ; Front => possSuffixFront a}
|
||||||
|
} ;
|
||||||
|
|
||||||
Inf2InessAdv np vp = {
|
Inf2InessAdv np vp = {
|
||||||
s = np.s ! NPCase Gen ++
|
s = np.s ! NPCase Gen ++
|
||||||
infVP SCNom Pos np.a vp Inf2Iness
|
infVP SCNom Pos np.a vp Inf2Iness
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import PGF
|
|||||||
import Data.List
|
import Data.List
|
||||||
|
|
||||||
data Fact = Fact {
|
data Fact = Fact {
|
||||||
content :: Maybe Fact,
|
content :: [Fact],
|
||||||
tense :: Maybe GTemp,
|
tense :: Maybe GTemp,
|
||||||
polarity :: Maybe GPol,
|
polarity :: Maybe GPol,
|
||||||
source :: Maybe GNP,
|
source :: Maybe GNP,
|
||||||
@@ -16,7 +16,7 @@ data Fact = Fact {
|
|||||||
action :: Maybe GVP
|
action :: Maybe GVP
|
||||||
}
|
}
|
||||||
|
|
||||||
initFact = Fact Nothing Nothing Nothing Nothing Nothing Nothing Nothing
|
initFact = Fact [] Nothing Nothing Nothing Nothing Nothing Nothing
|
||||||
|
|
||||||
factTree fact = case action fact of
|
factTree fact = case action fact of
|
||||||
(Just vp) ->
|
(Just vp) ->
|
||||||
|
|||||||
Reference in New Issue
Block a user