mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-14 07:19:31 -06:00
added VP exx
This commit is contained in:
@@ -233,10 +233,10 @@ incomplete resource Constructors = open Grammar in {
|
||||
mkCl : NP -> VQ -> QS -> Cl ; -- 6. John wonders if it is good
|
||||
mkCl : NP -> VA -> AP -> Cl ; -- 7. John becomes old
|
||||
mkCl : NP -> V2A ->NP -> AP -> Cl ; -- 8. John paints it red
|
||||
mkCl : NP -> AP -> Cl ; -- 9. John is very old
|
||||
mkCl : NP -> A -> Cl ; -- 10. John is old
|
||||
mkCl : NP -> A -> NP -> Cl ; -- 11. John is older than her
|
||||
mkCl : NP -> A2 -> NP -> Cl ; -- 12. John is married to her
|
||||
mkCl : NP -> A -> Cl ; -- 9. John is old
|
||||
mkCl : NP -> A -> NP -> Cl ; -- 10. John is older than her
|
||||
mkCl : NP -> A2 -> NP -> Cl ; -- 11. John is married to her
|
||||
mkCl : NP -> AP -> Cl ; -- 12. John is very old
|
||||
mkCl : NP -> N -> Cl ; -- 13. John is a man
|
||||
mkCl : NP -> CN -> Cl ; -- 14. John is an old man
|
||||
mkCl : NP -> NP -> Cl ; -- 15. John is the man
|
||||
@@ -277,45 +277,45 @@ incomplete resource Constructors = open Grammar in {
|
||||
-- A verb phrase is formed from a verb with appropriate arguments.
|
||||
|
||||
mkVP : overload {
|
||||
mkVP : V -> VP ; -- walk
|
||||
mkVP : V2 -> NP -> VP ; -- love her
|
||||
mkVP : V3 -> NP -> NP -> VP ; -- send it to her
|
||||
mkVP : VV -> VP -> VP ; -- want to walk
|
||||
mkVP : VS -> S -> VP ; -- know that she walks
|
||||
mkVP : VQ -> QS -> VP ; -- ask if she walks
|
||||
mkVP : VA -> AP -> VP ; -- become warm
|
||||
mkVP : V2A -> NP -> AP -> VP ; -- paint the house red
|
||||
mkVP : V -> VP ; -- 1. walk
|
||||
mkVP : V2 -> NP -> VP ; -- 2. love her
|
||||
mkVP : V3 -> NP -> NP -> VP ; -- 3. send it to her
|
||||
mkVP : VV -> VP -> VP ; -- 4. want to walk
|
||||
mkVP : VS -> S -> VP ; -- 5. know that she walks
|
||||
mkVP : VQ -> QS -> VP ; -- 6. ask if she walks
|
||||
mkVP : VA -> AP -> VP ; -- 7. become old
|
||||
mkVP : V2A -> NP -> AP -> VP ; -- 8. paint it red
|
||||
|
||||
-- The verb can also be a copula ("be"), and the relevant argument is
|
||||
-- then the complement adjective or noun phrase.
|
||||
|
||||
mkVP : A -> VP ; -- be warm
|
||||
mkVP : AP -> VP ; -- be very warm
|
||||
mkVP : N -> VP ; -- be a man
|
||||
mkVP : CN -> VP ; -- be an old man
|
||||
mkVP : NP -> VP ; -- be the old man
|
||||
mkVP : Adv -> VP ; -- be here
|
||||
mkVP : A -> VP ; -- 9. be warm
|
||||
mkVP : AP -> VP ; -- 12. be very warm
|
||||
mkVP : N -> VP ; -- 13. be a man
|
||||
mkVP : CN -> VP ; -- 14. be an old man
|
||||
mkVP : NP -> VP ; -- 15. be the man
|
||||
mkVP : Adv -> VP ; -- 16. be here
|
||||
|
||||
-- A verb phrase can be modified with a postverbal or a preverbial adverb.
|
||||
-- A verb phrase can be modified with a postverbal or a preverbal adverb.
|
||||
|
||||
mkVP : VP -> Adv -> VP ; -- sleep here
|
||||
mkVP : AdV -> VP -> VP -- always sleep
|
||||
mkVP : VP -> Adv -> VP ; -- 17. sleep here
|
||||
mkVP : AdV -> VP -> VP -- 18. always sleep
|
||||
} ;
|
||||
|
||||
-- Two-place verbs can be used reflexively.
|
||||
|
||||
reflexiveVP : V2 -> VP ; -- love itself
|
||||
reflexiveVP : V2 -> VP ; -- 19. love itself
|
||||
|
||||
-- Two-place verbs can also be used in the passive, with or without an agent.
|
||||
|
||||
passiveVP : overload {
|
||||
passiveVP : V2 -> VP ; -- be loved
|
||||
passiveVP : V2 -> NP -> VP ; -- be loved by her
|
||||
passiveVP : V2 -> VP ; -- 20. be loved
|
||||
passiveVP : V2 -> NP -> VP ; -- 21. be loved by her
|
||||
} ;
|
||||
|
||||
-- A verb phrase can be turned into the progressive form.
|
||||
|
||||
progressiveVP : VP -> VP ; -- be sleeping
|
||||
progressiveVP : VP -> VP ; -- 22. be sleeping
|
||||
|
||||
--3 Imp, imperatives
|
||||
|
||||
|
||||
@@ -18,5 +18,13 @@ fun
|
||||
ex11_Cl, ex12_Cl, ex13_Cl, ex14_Cl, ex15_Cl, ex16_Cl, ex17_Cl, ex18_Cl, ex19_Cl, ex20_Cl,
|
||||
ex21_Cl, ex22_Cl, ex23_Cl, ex24_Cl, ex25_Cl : Cl ;
|
||||
|
||||
ex1_VP, ex2_VP, ex3_VP, ex4_VP, ex5_VP, ex6_VP, ex7_VP, ex8_VP, ex9_VP, ex10_VP,
|
||||
ex11_VP, ex12_VP, ex13_VP, ex14_VP, ex15_VP, ex16_VP, ex17_VP, ex18_VP, ex19_VP, ex20_VP,
|
||||
ex21_VP, ex22_VP : VP ;
|
||||
|
||||
|
||||
-- auxiliary to show VP's
|
||||
|
||||
utt : VP -> Utt ;
|
||||
|
||||
}
|
||||
|
||||
@@ -51,10 +51,10 @@ incomplete concrete ExxI of Exx = Cat ** open Lang, Constructors in {
|
||||
ex6_Cl = mkCl john_NP wonder_VQ (mkQS (mkCl (mkNP it_Pron) good_A)) ;
|
||||
ex7_Cl = mkCl john_NP become_VA (mkAP old_A) ;
|
||||
ex8_Cl = mkCl john_NP paint_V2A (mkNP it_Pron) (mkAP red_A) ;
|
||||
ex9_Cl = mkCl john_NP (mkAP very_AdA (mkAP old_A)) ;
|
||||
ex10_Cl = mkCl john_NP old_A ;
|
||||
ex11_Cl = mkCl john_NP old_A (mkNP she_Pron) ;
|
||||
ex12_Cl = mkCl john_NP married_A2 (mkNP she_Pron) ;
|
||||
ex9_Cl = mkCl john_NP old_A ;
|
||||
ex10_Cl = mkCl john_NP old_A (mkNP she_Pron) ;
|
||||
ex11_Cl = mkCl john_NP married_A2 (mkNP she_Pron) ;
|
||||
ex12_Cl = mkCl john_NP (mkAP very_AdA (mkAP old_A)) ;
|
||||
ex13_Cl = mkCl john_NP man_N ;
|
||||
ex14_Cl = mkCl john_NP (mkCN old_A man_N) ;
|
||||
ex15_Cl = mkCl john_NP (mkNP defSgDet man_N) ;
|
||||
@@ -69,6 +69,35 @@ incomplete concrete ExxI of Exx = Cat ** open Lang, Constructors in {
|
||||
ex24_Cl = mkCl here_Adv (mkS (mkCl john_NP walk_V)) ;
|
||||
ex25_Cl = mkCl (mkVP walk_V) ;
|
||||
|
||||
ex1_VP = mkVP walk_V ;
|
||||
ex2_VP = mkVP love_V2 (mkNP she_Pron) ;
|
||||
ex3_VP = mkVP send_V3 (mkNP it_Pron) (mkNP she_Pron) ;
|
||||
ex4_VP = mkVP want_VV (mkVP walk_V) ;
|
||||
ex5_VP = mkVP say_VS (mkS (mkCl (mkNP it_Pron) good_A)) ;
|
||||
ex6_VP = mkVP wonder_VQ (mkQS (mkCl (mkNP it_Pron) good_A)) ;
|
||||
ex7_VP = mkVP become_VA (mkAP old_A) ;
|
||||
ex8_VP = mkVP paint_V2A (mkNP it_Pron) (mkAP red_A) ;
|
||||
|
||||
ex9_VP = mkVP old_A ;
|
||||
--- ex10_VP = mkVP old_A (mkNP she_Pron) ;
|
||||
--- ex11_VP = mkVP married_A2 (mkNP she_Pron) ;
|
||||
ex12_VP = mkVP (mkAP very_AdA (mkAP old_A)) ;
|
||||
|
||||
ex13_VP = mkVP man_N ;
|
||||
ex14_VP = mkVP (mkCN old_A man_N) ;
|
||||
ex15_VP = mkVP (mkNP defSgDet man_N) ;
|
||||
ex16_VP = mkVP here_Adv ;
|
||||
ex17_VP = mkVP (mkVP sleep_V) here_Adv ;
|
||||
ex18_VP = mkVP always_AdV (mkVP sleep_V) ;
|
||||
ex19_VP = reflexiveVP love_V2 ;
|
||||
ex20_VP = passiveVP love_V2 ;
|
||||
ex21_VP = passiveVP love_V2 (mkNP she_Pron) ;
|
||||
ex22_VP = progressiveVP (mkVP sleep_V) ;
|
||||
|
||||
|
||||
|
||||
--- utt u = mkUtt u ;
|
||||
|
||||
oper
|
||||
john_PN = paris_PN ; ----
|
||||
today_Adv = here_Adv ; ----
|
||||
|
||||
@@ -11,6 +11,9 @@ mkgfs = do
|
||||
|
||||
|
||||
addLin s = case words s of
|
||||
c@('e':'x':_):_ -> appendFile script ("l " ++ c ++ "\n")
|
||||
c@('e':'x':_):_ -> appendFile script ("l " ++ cc ++ "\n") where
|
||||
cc = case take 2 (reverse c) of
|
||||
--- "PV" -> "utt " ++ c
|
||||
_ -> c
|
||||
_ -> return ()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user