forked from GitHub/gf-rgl
toki transitives
This commit is contained in:
@@ -42,18 +42,18 @@ lin bird_N = mkN "waso" ;
|
|||||||
-- lin bone_N = mkN "" ;
|
-- lin bone_N = mkN "" ;
|
||||||
-- lin boot_N = mkN "" ;
|
-- lin boot_N = mkN "" ;
|
||||||
-- lin boss_N = mkN "" ;
|
-- lin boss_N = mkN "" ;
|
||||||
-- lin book_N = mkN "" ;
|
lin book_N = mkN "lipu" ;
|
||||||
lin boy_N = mkN "mije" ;
|
lin boy_N = mkN "mije" ;
|
||||||
-- lin bread_N = mkN "" ;
|
-- lin bread_N = mkN "" ;
|
||||||
-- lin break_V2 = mkV2 "" ;
|
lin break_V2 = mkV2 "pakala" ;
|
||||||
-- lin breast_N = mkN "" ;
|
-- lin breast_N = mkN "" ;
|
||||||
-- lin breathe_V = mkV "" ;
|
-- lin breathe_V = mkV "" ;
|
||||||
-- lin broad_A = mkA "" ;
|
-- lin broad_A = mkA "" ;
|
||||||
-- lin brother_N2 = mkN "" ;
|
-- lin brother_N2 = mkN "" ;
|
||||||
-- lin brown_A = mkA "" ;
|
-- lin brown_A = mkA "" ;
|
||||||
-- lin burn_V = mkV "" ;
|
lin burn_V = mkV "seli" ;
|
||||||
-- lin butter_N = mkN "" ;
|
-- lin butter_N = mkN "" ;
|
||||||
-- lin buy_V2 = mkV2 "" ;
|
lin buy_V2 = mkV2 "esun" ;
|
||||||
|
|
||||||
----
|
----
|
||||||
-- C
|
-- C
|
||||||
@@ -75,7 +75,7 @@ lin boy_N = mkN "mije" ;
|
|||||||
-- lin cloud_N = mkN "" ;
|
-- lin cloud_N = mkN "" ;
|
||||||
-- lin coat_N = mkN "" ;
|
-- lin coat_N = mkN "" ;
|
||||||
-- lin cold_A = mkA "" ;
|
-- lin cold_A = mkA "" ;
|
||||||
-- lin come_V = mkV "" ;
|
lin come_V = mkV "kama" ;
|
||||||
-- lin computer_N = mkN "" ;
|
-- lin computer_N = mkN "" ;
|
||||||
-- lin correct_A = mkA "" ;
|
-- lin correct_A = mkA "" ;
|
||||||
-- lin count_V2 = mkV2 "" ;
|
-- lin count_V2 = mkV2 "" ;
|
||||||
@@ -104,13 +104,13 @@ lin dog_N = mkN "soweli" ;
|
|||||||
----
|
----
|
||||||
-- E
|
-- E
|
||||||
|
|
||||||
-- lin ear_N = mkN "" ;
|
lin ear_N = mkN "kute" ;
|
||||||
-- lin earth_N = mkN "" ;
|
lin earth_N = mkN "ma" ;
|
||||||
-- lin eat_V2 = mkV "" ;
|
lin eat_V2 = mkV "eat" ;
|
||||||
-- lin egg_N = mkN "" ;
|
-- lin egg_N = mkN "" ;
|
||||||
-- lin empty_A = mkA "" ;
|
-- lin empty_A = mkA "" ;
|
||||||
-- lin enemy_N = mkN "" ;
|
-- lin enemy_N = mkN "" ;
|
||||||
-- lin eye_N = mkN "" ;
|
lin eye_N = mkN "lukin" ;
|
||||||
|
|
||||||
----
|
----
|
||||||
-- F
|
-- F
|
||||||
@@ -127,7 +127,7 @@ lin dog_N = mkN "soweli" ;
|
|||||||
-- lin find_V2 = mkV2 "" ;
|
-- lin find_V2 = mkV2 "" ;
|
||||||
-- lin fingernail_N = mkN "" ;
|
-- lin fingernail_N = mkN "" ;
|
||||||
-- lin fire_N = mkN "" ;
|
-- lin fire_N = mkN "" ;
|
||||||
-- lin fish_N = mkN "" ;
|
lin fish_N = mkN "kala" ;
|
||||||
-- lin float_V = mkV "" ;
|
-- lin float_V = mkV "" ;
|
||||||
-- lin floor_N = mkN "" ;
|
-- lin floor_N = mkN "" ;
|
||||||
-- lin flow_V = mkV "" ;
|
-- lin flow_V = mkV "" ;
|
||||||
@@ -140,7 +140,7 @@ lin dog_N = mkN "soweli" ;
|
|||||||
-- lin freeze_V = mkV "" ;
|
-- lin freeze_V = mkV "" ;
|
||||||
-- lin fridge_N = mkN "" ;
|
-- lin fridge_N = mkN "" ;
|
||||||
-- lin friend_N = mkN "" ;
|
-- lin friend_N = mkN "" ;
|
||||||
-- lin fruit_N = mkN "" ;
|
lin fruit_N = mkN "kili" ;
|
||||||
-- lin full_A = mkA "" ;
|
-- lin full_A = mkA "" ;
|
||||||
-- --lin fun_AV
|
-- --lin fun_AV
|
||||||
|
|
||||||
@@ -192,7 +192,7 @@ lin john_PN = mkPN "jan" "Jon" ;
|
|||||||
-- lin kill_V2 = mkV2 "" ;
|
-- lin kill_V2 = mkV2 "" ;
|
||||||
-- lin king_N = mkN "" ;
|
-- lin king_N = mkN "" ;
|
||||||
-- lin knee_N = mkN "" ;
|
-- lin knee_N = mkN "" ;
|
||||||
-- lin know_V2 = mkV2 "" ;
|
lin know_V2 = mkV2 "sona" ;
|
||||||
-- lin know_VQ = mkVQ (mkV "") ;
|
-- lin know_VQ = mkVQ (mkV "") ;
|
||||||
-- lin know_VS = mkV "" ;
|
-- lin know_VS = mkV "" ;
|
||||||
|
|
||||||
@@ -218,7 +218,7 @@ lin language_N = mkN "toki" ;
|
|||||||
-- lin lose_V2 = mkV2 "" ;
|
-- lin lose_V2 = mkV2 "" ;
|
||||||
-- lin louse_N = mkN "" ;
|
-- lin louse_N = mkN "" ;
|
||||||
lin love_N = mkN "olin" ;
|
lin love_N = mkN "olin" ;
|
||||||
-- lin love_V2 = mkV2 "olin" ;
|
lin love_V2 = mkV2 "olin" ;
|
||||||
|
|
||||||
----
|
----
|
||||||
-- M
|
-- M
|
||||||
@@ -227,7 +227,7 @@ lin love_N = mkN "olin" ;
|
|||||||
-- lin married_A2 = mkA2 (mkA "") ;
|
-- lin married_A2 = mkA2 (mkA "") ;
|
||||||
-- lin meat_N = mkN "" ;
|
-- lin meat_N = mkN "" ;
|
||||||
-- lin milk_N = mkN "" ;
|
-- lin milk_N = mkN "" ;
|
||||||
-- lin moon_N = mkN "" ;
|
lin moon_N = mkN "mun" ;
|
||||||
-- lin mother_N2 = mkN2 (mkN "") ;
|
-- lin mother_N2 = mkN2 (mkN "") ;
|
||||||
-- lin mountain_N = mkN "" ;
|
-- lin mountain_N = mkN "" ;
|
||||||
-- lin mouth_N = mkN "" ;
|
-- lin mouth_N = mkN "" ;
|
||||||
@@ -236,7 +236,7 @@ lin love_N = mkN "olin" ;
|
|||||||
----
|
----
|
||||||
-- N
|
-- N
|
||||||
|
|
||||||
-- lin name_N = mkN "" ;
|
lin name_N = mkN "nimi" ;
|
||||||
-- lin narrow_A = mkA "" ;
|
-- lin narrow_A = mkA "" ;
|
||||||
-- lin near_A = mkA "" ;
|
-- lin near_A = mkA "" ;
|
||||||
-- lin neck_N = mkN "" ;
|
-- lin neck_N = mkN "" ;
|
||||||
|
|||||||
@@ -51,11 +51,11 @@ concrete NounTok of Noun = CatTok ** open ResTok, Prelude in {
|
|||||||
|
|
||||||
-- Determiners can form noun phrases directly.
|
-- Determiners can form noun phrases directly.
|
||||||
|
|
||||||
|
-}
|
||||||
-- : Det -> NP ;
|
-- : Det -> NP ;
|
||||||
DetNP det = emptyNP ** {
|
DetNP det = emptyNP ** {
|
||||||
s = \\_ => linDet det ;
|
s = det.s
|
||||||
} ;
|
} ;
|
||||||
-}
|
|
||||||
-- MassNP : CN -> NP ;
|
-- MassNP : CN -> NP ;
|
||||||
MassNP cn = emptyNP ** {
|
MassNP cn = emptyNP ** {
|
||||||
s = linCN cn
|
s = linCN cn
|
||||||
|
|||||||
@@ -146,13 +146,13 @@ oper
|
|||||||
mkV : Str -> V = \s -> lin V (mkVerb s) ;
|
mkV : Str -> V = \s -> lin V (mkVerb s) ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
{-
|
|
||||||
|
|
||||||
mkV2 = overload {
|
mkV2 = overload {
|
||||||
mkV2 : Str -> V2 = \s -> …
|
mkV2 : Str -> V2 = \s -> ss s
|
||||||
mkV2 : V -> Prep -> V2 = \s -> …
|
-- mkV2 : V -> Prep -> V2 = \s -> …
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
{-
|
||||||
|
|
||||||
mkV3 = overload {
|
mkV3 = overload {
|
||||||
mkV3 : V -> V3 = \s -> …
|
mkV3 : V -> V3 = \s -> …
|
||||||
mkV3 : V -> Prep -> Prep -> V3 = \s -> …
|
mkV3 : V -> Prep -> Prep -> V3 = \s -> …
|
||||||
|
|||||||
@@ -17,35 +17,34 @@ lin
|
|||||||
} ;
|
} ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
{-
|
|
||||||
-- : SC -> VP -> Cl ; -- that she goes is good
|
-- : SC -> VP -> Cl ; -- that she goes is good
|
||||||
PredSCVP sc vp = ;
|
-- PredSCVP sc vp = ;
|
||||||
|
|
||||||
--2 Clauses missing object noun phrases
|
--2 Clauses missing object noun phrases
|
||||||
-- : NP -> VPSlash -> ClSlash ;
|
-- : NP -> VPSlash -> ClSlash ;
|
||||||
SlashVP =
|
-- SlashVP = \np,vps -> ss ()
|
||||||
|
|
||||||
-- : ClSlash -> Adv -> ClSlash ; -- (whom) he sees today
|
-- : ClSlash -> Adv -> ClSlash ; -- (whom) he sees today
|
||||||
AdvSlash cls adv =
|
-- AdvSlash cls adv =
|
||||||
|
|
||||||
-- : Cl -> Prep -> ClSlash ; -- (with whom) he walks
|
-- : Cl -> Prep -> ClSlash ; -- (with whom) he walks
|
||||||
SlashPrep cl prep = cl ** {c2 = prep} ;
|
-- SlashPrep cl prep = cl ** {c2 = prep} ;
|
||||||
|
|
||||||
-- Imperatives
|
-- Imperatives
|
||||||
-- : VP -> Imp ;
|
-- : VP -> Imp ;
|
||||||
ImpVP vp =
|
-- ImpVP vp =
|
||||||
|
|
||||||
--2 Embedded sentences
|
--2 Embedded sentences
|
||||||
|
|
||||||
-- : S -> SC ;
|
-- : S -> SC ;
|
||||||
EmbedS s =
|
-- EmbedS s =
|
||||||
|
|
||||||
-- : QS -> SC ;
|
-- : QS -> SC ;
|
||||||
EmbedQS qs =
|
-- EmbedQS qs =
|
||||||
|
|
||||||
-- : VP -> SC ;
|
-- : VP -> SC ;
|
||||||
EmbedVP vp =
|
-- EmbedVP vp =
|
||||||
-}
|
|
||||||
--2 Sentences
|
--2 Sentences
|
||||||
|
|
||||||
-- : Temp -> Pol -> Cl -> S ;
|
-- : Temp -> Pol -> Cl -> S ;
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ concrete StructuralTok of Structural = CatTok **
|
|||||||
|
|
||||||
-- lin no_Quant =
|
-- lin no_Quant =
|
||||||
-- lin that_Quant = mkQuant "" ;
|
-- lin that_Quant = mkQuant "" ;
|
||||||
-- lin this_Quant = mkQuant "" ;
|
lin this_Quant = mkQuant "ni" ;
|
||||||
-- lin which_IQuant = mkQuant "" ;
|
-- lin which_IQuant = mkQuant "" ;
|
||||||
|
|
||||||
-----
|
-----
|
||||||
@@ -155,7 +155,7 @@ lin language_title_Utt = ss "toki pona" ;
|
|||||||
-------
|
-------
|
||||||
-- Verb
|
-- Verb
|
||||||
|
|
||||||
-- lin have_V2 =
|
lin have_V2 = mkV "jo" ;
|
||||||
|
|
||||||
lin can8know_VV = ss "ken" ;
|
lin can8know_VV = ss "ken" ;
|
||||||
lin can_VV = ss "ken" ;
|
lin can_VV = ss "ken" ;
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ lin
|
|||||||
-- PassV2 v2 =
|
-- PassV2 v2 =
|
||||||
|
|
||||||
-- : VPSlash -> VP ;
|
-- : VPSlash -> VP ;
|
||||||
-- ReflVP vps =
|
ReflVP vps = vps ;
|
||||||
|
|
||||||
-- : VV -> VP -> VP ;
|
-- : VV -> VP -> VP ;
|
||||||
ComplVV vv vp = { s = vv.s ++ vp.s ;} ;
|
ComplVV vv vp = { s = vv.s ++ vp.s ;} ;
|
||||||
@@ -34,61 +34,58 @@ lin
|
|||||||
-}
|
-}
|
||||||
--------
|
--------
|
||||||
-- Slash
|
-- Slash
|
||||||
{-
|
|
||||||
-- : V2 -> VPSlash
|
-- : V2 -> VPSlash
|
||||||
SlashV2a v2 =
|
SlashV2a v2 = v2 ;
|
||||||
|
|
||||||
-- : V3 -> NP -> VPSlash ; -- give it (to her)
|
-- : V3 -> NP -> VPSlash ; -- give it (to her)
|
||||||
Slash2V3 v3 dobj =
|
-- Slash2V3 v3 dobj =
|
||||||
|
|
||||||
-- : V3 -> NP -> VPSlash ; -- give (it) to her
|
-- : V3 -> NP -> VPSlash ; -- give (it) to her
|
||||||
Slash3V3 v3 iobj =
|
-- Slash3V3 v3 iobj =
|
||||||
|
|
||||||
SlashV2A v2 adj =
|
-- SlashV2A v2 adj =
|
||||||
|
|
||||||
-- : V2S -> S -> VPSlash ; -- answer (to him) that it is good
|
-- : V2S -> S -> VPSlash ; -- answer (to him) that it is good
|
||||||
SlashV2S v2s s =
|
-- SlashV2S v2s s =
|
||||||
|
|
||||||
-- : V2V -> VP -> VPSlash ; -- beg (her) to go
|
-- : V2V -> VP -> VPSlash ; -- beg (her) to go
|
||||||
SlashV2V v2v vp = ;
|
-- SlashV2V v2v vp = ;
|
||||||
|
|
||||||
-- : V2Q -> QS -> VPSlash ; -- ask (him) who came
|
-- : V2Q -> QS -> VPSlash ; -- ask (him) who came
|
||||||
SlashV2Q v2q qs = ;
|
-- SlashV2Q v2q qs = ;
|
||||||
|
|
||||||
-- : V2A -> AP -> VPSlash ; -- paint (it) red
|
-- : V2A -> AP -> VPSlash ; -- paint (it) red
|
||||||
SlashV2A v2a ap = ;
|
-- SlashV2A v2a ap = ;
|
||||||
|
|
||||||
|
|
||||||
-- : VPSlash -> NP -> VP
|
-- : VPSlash -> NP -> VP
|
||||||
-- Often VPSlash has a field called c2, which is used to pick right form of np complement
|
-- Often VPSlash has a field called c2, which is used to pick right form of np complement
|
||||||
ComplSlash vps np = vps ** {
|
ComplSlash vps np = ss (vps.s ++ "e" ++ np.s) ;
|
||||||
compl = np.s ! vps.c2
|
|
||||||
} ;
|
|
||||||
|
|
||||||
-- : VV -> VPSlash -> VPSlash ;
|
-- : VV -> VPSlash -> VPSlash ;
|
||||||
SlashVV vv vps = ComplVV vv vps ** {
|
-- SlashVV vv vps = ComplVV vv vps ** {
|
||||||
} ;
|
-- } ;
|
||||||
|
|
||||||
-- : V2V -> NP -> VPSlash -> VPSlash ; -- beg me to buy
|
-- : V2V -> NP -> VPSlash -> VPSlash ; -- beg me to buy
|
||||||
SlashV2VNP v2v np vps =
|
-- SlashV2VNP v2v np vps =
|
||||||
|
|
||||||
-- : VP -> Adv -> VP ; -- sleep here
|
-- : VP -> Adv -> VP ; -- sleep here
|
||||||
AdvVP vp adv =
|
-- AdvVP vp adv =
|
||||||
|
|
||||||
-- : AdV -> VP -> VP ; -- always sleep
|
-- : AdV -> VP -> VP ; -- always sleep
|
||||||
AdVVP adv vp =
|
-- AdVVP adv vp =
|
||||||
|
|
||||||
-- : VPSlash -> Adv -> VPSlash ; -- use (it) here
|
-- : VPSlash -> Adv -> VPSlash ; -- use (it) here
|
||||||
AdvVPSlash = insertAdv ;
|
-- AdvVPSlash = insertAdv ;
|
||||||
|
|
||||||
-- : VP -> Adv -> VP ; -- sleep , even though ...
|
-- : VP -> Adv -> VP ; -- sleep , even though ...
|
||||||
ExtAdvVP vp adv = ;
|
-- ExtAdvVP vp adv = ;
|
||||||
|
|
||||||
-- : AdV -> VPSlash -> VPSlash ; -- always use (it)
|
-- : AdV -> VPSlash -> VPSlash ; -- always use (it)
|
||||||
AdVVPSlash adv vps = vps ** { adv = adv.s ++ vps.adv } ;
|
-- AdVVPSlash adv vps = vps ** { adv = adv.s ++ vps.adv } ;
|
||||||
|
|
||||||
-- : VP -> Prep -> VPSlash ; -- live in (it)
|
-- : VP -> Prep -> VPSlash ; -- live in (it)
|
||||||
VPSlashPrep vp prep = vp ** {c2 = prep} ;
|
-- VPSlashPrep vp prep = vp ** {c2 = prep} ;
|
||||||
|
|
||||||
|
|
||||||
--2 Complements to copula
|
--2 Complements to copula
|
||||||
@@ -96,19 +93,18 @@ lin
|
|||||||
-- Adjectival phrases, noun phrases, and adverbs can be used.
|
-- Adjectival phrases, noun phrases, and adverbs can be used.
|
||||||
|
|
||||||
-- : AP -> Comp ;
|
-- : AP -> Comp ;
|
||||||
CompAP ap =
|
-- CompAP ap =
|
||||||
|
|
||||||
-- : CN -> Comp ;
|
-- : CN -> Comp ;
|
||||||
CompCN cn =
|
-- CompCN cn =
|
||||||
|
|
||||||
-- NP -> Comp ;
|
-- NP -> Comp ;
|
||||||
CompNP np =
|
-- CompNP np =
|
||||||
|
|
||||||
-- : Adv -> Comp ;
|
-- : Adv -> Comp ;
|
||||||
CompAdv adv =
|
-- CompAdv adv =
|
||||||
|
|
||||||
-- : VP -- Copula alone;
|
-- : VP -- Copula alone;
|
||||||
UseCopula =
|
-- UseCopula =
|
||||||
-}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user