mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-13 06:49:31 -06:00
section on agreement
This commit is contained in:
@@ -1,14 +1,16 @@
|
||||
abstract Foods = {
|
||||
|
||||
flags startcat=Phr ;
|
||||
|
||||
cat
|
||||
S ; Item ; Kind ; Quality ;
|
||||
Phr ; Item ; Kind ; Quality ;
|
||||
|
||||
fun
|
||||
Is : Item -> Quality -> S ;
|
||||
Is : Item -> Quality -> Phr ;
|
||||
This, That, These, Those : Kind -> Item ;
|
||||
QKind : Quality -> Kind -> Kind ;
|
||||
Wine, Cheese, Fish, Pizza : Kind ;
|
||||
Very : Quality -> Quality ;
|
||||
Fresh, Warm, Italian, Expensive, Delicious, Boring : Quality ;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
--# -path=.:resource:prelude
|
||||
--# -path=.:prelude
|
||||
|
||||
concrete FoodsEng of Foods = open Prelude in {
|
||||
|
||||
lincat
|
||||
S, Quality = SS ;
|
||||
Phr, Quality = SS ;
|
||||
Kind = {s : Number => Str} ;
|
||||
Item = {s : Str ; n : Number} ;
|
||||
|
||||
lin
|
||||
Is item quality = ss (item.s ++ copula item.n ++ quality.s) ;
|
||||
Is item quality = ss (item.s ++ copula ! item.n ++ quality.s) ;
|
||||
This = det Sg "this" ;
|
||||
That = det Sg "that" ;
|
||||
These = det Pl "these" ;
|
||||
Those = det Pl "those" ;
|
||||
QKind quality kind = {s = \\n => quality.s ++ kind.s ! n} ;
|
||||
Wine = noun "wine" "wines" ;
|
||||
Cheese = noun "cheese" "cheeses" ;
|
||||
Wine = regNoun "wine" ;
|
||||
Cheese = regNoun "cheese" ;
|
||||
Fish = noun "fish" "fish" ;
|
||||
Pizza = noun "pizza" "pizzas" ;
|
||||
Pizza = regNoun "pizza" ;
|
||||
Very = prefixSS "very" ;
|
||||
Fresh = ss "fresh" ;
|
||||
Warm = ss "warm" ;
|
||||
@@ -41,8 +41,10 @@ concrete FoodsEng of Foods = open Prelude in {
|
||||
Pl => men
|
||||
}
|
||||
} ;
|
||||
copula : Number -> Str =
|
||||
\n -> case n of {
|
||||
regNoun : Str -> {s : Number => Str} =
|
||||
\car -> noun car (car + "s") ;
|
||||
copula : Number => Str =
|
||||
table {
|
||||
Sg => "is" ;
|
||||
Pl => "are"
|
||||
} ;
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
--# -path=.:resource:prelude
|
||||
--# -path=.:prelude
|
||||
|
||||
concrete FoodsIta of Foods = open Prelude in {
|
||||
|
||||
lincat
|
||||
S = SS ;
|
||||
Phr = SS ;
|
||||
Quality = {s : Gender => Number => Str} ;
|
||||
Kind = {s : Number => Str ; g : Gender} ;
|
||||
Item = {s : Str ; g : Gender ; n : Number} ;
|
||||
@@ -74,4 +74,3 @@ concrete FoodsIta of Foods = open Prelude in {
|
||||
Pl => "sono"
|
||||
} ;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user