summaryrefslogtreecommitdiff
path: root/examples/phrasebook/WordsTha.gf
diff options
context:
space:
mode:
authoraarne <aarne@chalmers.se>2011-12-01 21:58:42 +0000
committeraarne <aarne@chalmers.se>2011-12-01 21:58:42 +0000
commita32f9664f6a2da857655cad1e0cdcbf26fbbea9f (patch)
tree14a849a22071473e8991d24f6987794d05ad41ac /examples/phrasebook/WordsTha.gf
parent0814c07791c799538752bfadb4897abe3e6e98b1 (diff)
Nui's grammar error reports implemented in PhrasebookTha
Diffstat (limited to 'examples/phrasebook/WordsTha.gf')
-rw-r--r--examples/phrasebook/WordsTha.gf29
1 files changed, 23 insertions, 6 deletions
diff --git a/examples/phrasebook/WordsTha.gf b/examples/phrasebook/WordsTha.gf
index 726f12a98..0762706b3 100644
--- a/examples/phrasebook/WordsTha.gf
+++ b/examples/phrasebook/WordsTha.gf
@@ -209,18 +209,22 @@ concrete WordsTha of Words = SentencesTha **
-- transports
- HowFar place = mkQS (mkQCl far_IAdv place.name) ;
+ HowFar place = mkQS (mkQCl howFar.how (mkNP place.name howFar.far)) ;
+
HowFarFrom x y =
- mkQS (mkQCl far_IAdv (mkCl y.name (SyntaxTha.mkAdv from_Prep x.name))) ;
+ mkQS (mkQCl howFar.how (mkCl (mkNP y.name howFar.far) (SyntaxTha.mkAdv from_Prep x.name))) ;
+
HowFarFromBy x y t =
- mkQS (mkQCl far_IAdv (mkCl y.name (SyntaxTha.mkAdv from_Prep (mkNP x.name t)))) ;
- HowFarBy y t = mkQS (mkQCl far_IAdv (mkCl y.name t)) ;
+ mkQS (mkQCl howFar.how (mkCl (mkNP y.name howFar.far)
+ (SyntaxTha.mkAdv from_Prep (mkNP x.name t)))) ;
+
+ HowFarBy y t = mkQS (mkQCl howFar.how (mkCl (mkNP y.name howFar.far) t)) ;
WhichTranspPlace trans place =
mkQS (mkQCl (mkIP which_IDet trans.name) (mkVP (mkVP L.go_V) place.to)) ;
IsTranspPlace trans place =
- mkQS (mkQCl (mkCl (mkCN trans.name place.to))) ;
+ mkQS (mkQCl (mkCl (mkCN (mkCN trans.name (mkSC (mkVP L.go_V))) place.to))) ;
@@ -258,7 +262,9 @@ concrete WordsTha of Words = SentencesTha **
mkCurrency : Str -> CN = \s -> mkCN (mkN [] s) ; ---- just a classifier
- far_IAdv = lin IAdv (ss (R.thword "ไกล" "เท่า" "ไร")) ;
+ howFar : {far : Adv ; how : IAdv} = {
+ far = lin Adv (ss "ไกล") ; how = lin IAdv (ss ("เทา" + "ไร"))
+ } ;
at_Prep = mkPrep "ที่" ;
noPrep = mkPrep [] ;
@@ -284,7 +290,18 @@ concrete WordsTha of Words = SentencesTha **
Pineapple = mkCN (mkN (R.thword "สับ" "ปะ" "รด")) ;
Coke = mkCN (mkN ("โค้ก")) ;
IceCream = mkCN (mkN (R.thword "ไอ" "ศ" "กรีม")) ;
+ Salad = mkCN (mkN "สลัด") ;
+ OrangeJuice = mkCN (mkN (R.thword "น้ำ" "ส้ม" "คั้น")) ;
+ Lemonade = mkCN (mkN (R.thword "น้ำ" "มะ" "นาว")) ;
Beach = mkPlace (placeN (R.thword "หาด")) ;
+ ItsRaining = mkCl (mkVP L.rain_V0) ;
+ ItsCold = mkCl (mkVP L.cold_A) ;
+ ItsWarm = mkCl (mkVP L.warm_A) ;
+ ItsWindy = mkCl (mkVP (P.mkA (R.thword "ลม" "จัด"))) ;
+ SunShine = mkCl (mkNP the_Det L.sun_N) (mkVP (R.regV "ฉาย")) ;
+
+ Smoke = mkVP (P.mkV (R.thword "สูบ" "บุ" "รี")) ;
+
}