forked from GitHub/gf-core
Exx-file complete except holes for Int
This commit is contained in:
@@ -157,6 +157,7 @@ fun
|
||||
important_A : A ;
|
||||
industry_N : N ;
|
||||
iron_N : N ;
|
||||
john_PN : PN ;
|
||||
jump_V : V ;
|
||||
kill_V2 : V2 ;
|
||||
king_N : N ;
|
||||
@@ -186,7 +187,6 @@ fun
|
||||
man_N : N ;
|
||||
married_A2 : A2 ;
|
||||
meat_N : N ;
|
||||
meat_N : N ;
|
||||
milk_N : N ;
|
||||
moon_N : N ;
|
||||
mother_N2 : N2 ;
|
||||
@@ -223,10 +223,13 @@ fun
|
||||
push_V2 : V2 ;
|
||||
put_V2 : V2 ;
|
||||
queen_N : N ;
|
||||
question_N : N ;
|
||||
radio_N : N ;
|
||||
rain_N : N ;
|
||||
rain_V0 : V ;
|
||||
read_V2 : V2 ;
|
||||
ready_A : A ;
|
||||
reason_N : N ;
|
||||
red_A : A ;
|
||||
religion_N : N ;
|
||||
restaurant_N : N ;
|
||||
@@ -311,6 +314,7 @@ fun
|
||||
think_V : V ;
|
||||
throw_V2 : V2 ;
|
||||
tie_V2 : V2 ;
|
||||
today_Adv : Adv ;
|
||||
tongue_N : N ;
|
||||
tooth_N : N ;
|
||||
train_N : N ;
|
||||
@@ -318,6 +322,7 @@ fun
|
||||
tree_N : N ;
|
||||
turn_V : V ;
|
||||
ugly_A : A ;
|
||||
uncertain_A : A ;
|
||||
understand_V2 : V2 ;
|
||||
university_N : N ;
|
||||
village_N : N ;
|
||||
@@ -329,7 +334,6 @@ fun
|
||||
wash_V2 : V2 ;
|
||||
watch_V2 : V2 ;
|
||||
water_N : N ;
|
||||
water_N : N ;
|
||||
wet_A : A ;
|
||||
white_A : A ;
|
||||
wide_A : A ;
|
||||
|
||||
@@ -415,25 +415,40 @@ incomplete resource Constructors = open Grammar in {
|
||||
indefPlDet : Det ; -- 14. (houses)
|
||||
|
||||
|
||||
--3 Quant, QuantSg, and QuantPl, quantifiers
|
||||
--3 Quant, quantifiers with both sincular and plural forms
|
||||
|
||||
-- Definite and indefinite articles have both singular and plural forms (even though the
|
||||
-- Definite and indefinite articles have both singular and plural
|
||||
-- forms (even though the
|
||||
-- plural indefinite is empty in most languages).
|
||||
|
||||
defQuant : Quant ; -- 1. the
|
||||
indefQuant : Quant ; -- 2. a
|
||||
|
||||
-- From quantifiers that can have both forms, these constructors build the singular and
|
||||
-- the plural forms.
|
||||
-- More quantifiers are available in the $Structural$ module.
|
||||
|
||||
|
||||
--3 QuantSg, singular quantifiers
|
||||
|
||||
-- From quantifiers that can have both forms, this constructor
|
||||
-- builds the singular form.
|
||||
|
||||
mkQuantSg : Quant -> QuantSg ; -- 1. this
|
||||
mkQuantPl : Quant -> QuantPl ; -- 1. these
|
||||
|
||||
-- The mass noun phrase constructor is treated as a singular quantifier.
|
||||
|
||||
massQuant : QuantSg ; -- 2. (mass terms)
|
||||
|
||||
-- More quantifiers are available in the $Structural$ module.
|
||||
-- More singular quantifiers are available in the $Structural$ module.
|
||||
|
||||
|
||||
--3 QuantPl, plural quantifiers
|
||||
|
||||
-- From quantifiers that can have both forms, this constructor
|
||||
-- builds the plural form.
|
||||
|
||||
mkQuantPl : Quant -> QuantPl ; -- 1. these
|
||||
|
||||
-- More plural quantifiers are available in the $Structural$ module.
|
||||
|
||||
|
||||
--3 Num, cardinal numerals
|
||||
@@ -442,51 +457,52 @@ incomplete resource Constructors = open Grammar in {
|
||||
-- and from symbolic integers.
|
||||
|
||||
mkNum : overload {
|
||||
mkNum : Numeral -> Num ; -- twenty
|
||||
mkNum : Int -> Num ; -- 51
|
||||
mkNum : Numeral -> Num ; -- 1. twenty
|
||||
mkNum : Int -> Num ; -- 2. 51
|
||||
|
||||
-- A numeral can be modified by an adnumeral.
|
||||
|
||||
mkNum : AdN -> Num -> Num -- almost ten
|
||||
mkNum : AdN -> Num -> Num -- 3. almost ten
|
||||
} ;
|
||||
|
||||
|
||||
--3 Ord, ordinal numerals
|
||||
|
||||
-- Just like cardinals, ordinals can be formed from number words ($Numeral$), their special case digits,
|
||||
-- Just like cardinals, ordinals can be formed from number words ($Numeral$)
|
||||
-- and from symbolic integers.
|
||||
|
||||
mkOrd : overload {
|
||||
mkOrd : Numeral -> Ord ; -- sixtieth
|
||||
mkOrd : Int -> Ord ; -- 51st
|
||||
mkOrd : Numeral -> Ord ; -- 1. twentieth
|
||||
mkOrd : Int -> Ord ; -- 2. 51st
|
||||
|
||||
-- Also adjectives in the superlative form can appear on ordinal positions.
|
||||
|
||||
mkOrd : A -> Ord -- best
|
||||
mkOrd : A -> Ord -- 3. best
|
||||
} ;
|
||||
|
||||
--3 AdN, adnumerals
|
||||
|
||||
-- Comparison adverbs can be used as adnumerals.
|
||||
|
||||
mkAdN : CAdv -> AdN ; -- more (than five)
|
||||
mkAdN : CAdv -> AdN ; -- 1. more than
|
||||
|
||||
--3 Numeral, number words
|
||||
|
||||
-- Digits and some "round" numbers are here given as shorthands.
|
||||
|
||||
n1_Numeral : Numeral ; -- one
|
||||
n2_Numeral : Numeral ; -- two
|
||||
n3_Numeral : Numeral ; -- three
|
||||
n4_Numeral : Numeral ; -- four
|
||||
n5_Numeral : Numeral ; -- five
|
||||
n6_Numeral : Numeral ; -- six
|
||||
n7_Numeral : Numeral ; -- seven
|
||||
n8_Numeral : Numeral ; -- eight
|
||||
n9_Numeral : Numeral ; -- nine
|
||||
n10_Numeral : Numeral ; -- ten
|
||||
n20_Numeral : Numeral ; -- twenty
|
||||
n100_Numeral : Numeral ; -- hundred
|
||||
n1000_Numeral : Numeral ; -- thousand
|
||||
n1_Numeral : Numeral ; -- 1. one
|
||||
n2_Numeral : Numeral ; -- 2. two
|
||||
n3_Numeral : Numeral ; -- 3. three
|
||||
n4_Numeral : Numeral ; -- 4. four
|
||||
n5_Numeral : Numeral ; -- 5. five
|
||||
n6_Numeral : Numeral ; -- 6. six
|
||||
n7_Numeral : Numeral ; -- 7. seven
|
||||
n8_Numeral : Numeral ; -- 8. eight
|
||||
n9_Numeral : Numeral ; -- 9. nine
|
||||
n10_Numeral : Numeral ; -- 10. ten
|
||||
n20_Numeral : Numeral ; -- 11. twenty
|
||||
n100_Numeral : Numeral ; -- 12. hundred
|
||||
n1000_Numeral : Numeral ; -- 13. thousand
|
||||
|
||||
-- See $Numeral$ for the full set of constructors, or use $Int$ for other numbers.
|
||||
|
||||
@@ -499,43 +515,45 @@ incomplete resource Constructors = open Grammar in {
|
||||
|
||||
-- The most frequent way of forming common noun phrases is from atomic nouns $N$.
|
||||
|
||||
mkCN : N -> CN ; -- house
|
||||
mkCN : N -> CN ; -- 1. house
|
||||
|
||||
-- Common noun phrases can be formed from relational nouns by providing arguments.
|
||||
|
||||
mkCN : N2 -> NP -> CN ; -- son of the king
|
||||
mkCN : N3 -> NP -> NP -> CN ; -- flight from Moscow to Paris
|
||||
mkCN : N2 -> NP -> CN ; -- 2. mother of John
|
||||
mkCN : N3 -> NP -> NP -> CN ; -- 3. distance from this city to Paris
|
||||
|
||||
-- Relational nouns can also be used without their arguments.
|
||||
|
||||
mkCN : N2 -> CN ; -- son
|
||||
mkCN : N3 -> CN ; -- flight
|
||||
mkCN : N2 -> CN ; -- 4. son
|
||||
mkCN : N3 -> CN ; -- 5. flight
|
||||
|
||||
-- A common noun phrase can be modified by adjectival phrase. We give special
|
||||
-- cases of this, where one or both of the arguments are atomic.
|
||||
|
||||
mkCN : AP -> CN -> CN ; -- very big blue house
|
||||
mkCN : A -> CN -> CN ; -- big blue house
|
||||
mkCN : AP -> N -> CN ; -- very big house
|
||||
mkCN : A -> N -> CN ; -- big house
|
||||
mkCN : A -> N -> CN ; -- 6. big house
|
||||
mkCN : A -> CN -> CN ; -- 7. big blue house
|
||||
mkCN : AP -> N -> CN ; -- 8. very big house
|
||||
mkCN : AP -> CN -> CN ; -- 9. very big blue house
|
||||
|
||||
-- A common noun phrase can be modified by a relative clause or an adverb.
|
||||
|
||||
mkCN : CN -> RS -> CN ; -- big house that John loves
|
||||
mkCN : N -> RS -> CN ; -- house that John loves
|
||||
mkCN : CN -> Adv -> CN ; -- big house on the mountain
|
||||
mkCN : N -> Adv -> CN ; -- house on the mountain
|
||||
mkCN : N -> RS -> CN ; -- 10. house that John loves
|
||||
mkCN : CN -> RS -> CN ; -- 11. big house that John loves
|
||||
mkCN : N -> Adv -> CN ; -- 12. house in the city
|
||||
mkCN : CN -> Adv -> CN ; -- 13. big house in the city
|
||||
|
||||
-- For some nouns it makes sense to modify them by sentences, questions, or infinitives.
|
||||
-- For some nouns it makes sense to modify them by sentences,
|
||||
-- questions, or infinitives. But syntactically this is possible for
|
||||
-- all nouns.
|
||||
|
||||
mkCN : CN -> S -> CN ; -- fact that John walks
|
||||
mkCN : CN -> QS -> CN ; -- question if John smokes
|
||||
mkCN : CN -> VP -> CN ; -- reason to smoke
|
||||
mkCN : CN -> S -> CN ; -- 14. rule that John walks
|
||||
mkCN : CN -> QS -> CN ; -- 15. question if John walks
|
||||
mkCN : CN -> VP -> CN ; -- 16. reason to walk
|
||||
|
||||
-- A noun can be used in apposition to a noun phrase, especially a proper name.
|
||||
|
||||
mkCN : CN -> NP -> CN ; -- old king John
|
||||
mkCN : N -> NP -> CN -- king John
|
||||
mkCN : N -> NP -> CN ; -- 17. king John
|
||||
mkCN : CN -> NP -> CN -- 18. old king John
|
||||
} ;
|
||||
|
||||
|
||||
@@ -548,30 +566,33 @@ incomplete resource Constructors = open Grammar in {
|
||||
-- Adjectival phrases can be formed from atomic adjectives by using the positive form or
|
||||
-- the comparative with a complement
|
||||
|
||||
mkAP : A -> AP ; -- old
|
||||
mkAP : A -> NP -> AP ; -- older than John
|
||||
mkAP : A -> AP ; -- 1. old
|
||||
mkAP : A -> NP -> AP ; -- 2. older than John
|
||||
|
||||
-- Relational adjectives can be used with a complement or a reflexive
|
||||
|
||||
mkAP : A2 -> NP -> AP ; -- married to her
|
||||
mkAP : A2 -> AP ; -- married to himself
|
||||
mkAP : A2 -> NP -> AP ; -- 3. married to her
|
||||
mkAP : A2 -> AP ; -- 4. married to myself
|
||||
|
||||
-- Some adjectival phrases can take as complements sentences, questions, or infinitives.
|
||||
-- Some adjectival phrases can take as complements sentences,
|
||||
-- questions, or infinitives. Syntactically this is possible for
|
||||
-- all adjectives.
|
||||
|
||||
mkAP : AP -> S -> AP ; -- great that she won
|
||||
mkAP : AP -> QS -> AP ; -- uncertain if she won
|
||||
mkAP : AP -> VP -> AP ; -- ready to go
|
||||
mkAP : AP -> S -> AP ; -- 5. probable that John walks
|
||||
mkAP : AP -> QS -> AP ; -- 6. uncertain if John walks
|
||||
mkAP : AP -> VP -> AP ; -- 7. ready to go
|
||||
|
||||
-- An adjectival phrase can be modified by an adadjective.
|
||||
|
||||
mkAP : AdA -> AP -> AP ; -- very big
|
||||
mkAP : AdA -> A -> AP ; -- 8. very old
|
||||
mkAP : AdA -> AP -> AP ; -- 9. very very old
|
||||
|
||||
-- Conjunction can be formed from two or more adjectival phrases.
|
||||
|
||||
mkAP : Conj -> AP -> AP -> AP ; -- warm and big
|
||||
mkAP : Conj -> ListAP -> AP ; -- warm, big, and cheap
|
||||
mkAP : DConj -> AP -> AP -> AP ; -- both warm and big
|
||||
mkAP : DConj -> ListAP -> AP -- both warm, big, and cheap
|
||||
mkAP : Conj -> AP -> AP -> AP ; -- 10. old and big
|
||||
mkAP : Conj -> ListAP -> AP ; -- 11. old, big, and warm
|
||||
mkAP : DConj -> AP -> AP -> AP ; -- 12. either old or big
|
||||
mkAP : DConj -> ListAP -> AP -- 13. either old, big, or warm
|
||||
|
||||
} ;
|
||||
|
||||
@@ -581,51 +602,55 @@ incomplete resource Constructors = open Grammar in {
|
||||
|
||||
-- Adverbs can be formed from adjectives.
|
||||
|
||||
mkAdv : A -> Adv ; -- quickly
|
||||
mkAdv : A -> Adv ; -- 1. warmly
|
||||
|
||||
-- Prepositional phrases are treated as adverbs.
|
||||
|
||||
mkAdv : Prep -> NP -> Adv ; -- in the house
|
||||
mkAdv : Prep -> NP -> Adv ; -- 2. with John
|
||||
|
||||
-- Subordinate sentences are treated as adverbs.
|
||||
|
||||
mkAdv : Subj -> S -> Adv ; -- when he arrives
|
||||
mkAdv : Subj -> S -> Adv ; -- 3. when John walks
|
||||
|
||||
-- An adjectival adverb can be compared to a noun phrase or a sentence.
|
||||
|
||||
mkAdv : CAdv -> A -> NP -> Adv ; -- more slowly than John
|
||||
mkAdv : CAdv -> A -> S -> Adv ; -- more slowly than he runs
|
||||
mkAdv : CAdv -> A -> NP -> Adv ; -- 4. more warmly than John
|
||||
mkAdv : CAdv -> A -> S -> Adv ; -- 5. more warmly than John walks
|
||||
|
||||
-- Adverbs can be modified by adadjectives.
|
||||
|
||||
mkAdv : AdA -> Adv -> Adv ; -- very quickly
|
||||
mkAdv : AdA -> Adv -> Adv ; -- 6. very warmly
|
||||
|
||||
-- Conjunction can be formed from two or more adverbial phrases.
|
||||
|
||||
mkAdv : Conj -> Adv -> Adv -> Adv ; -- here and now
|
||||
mkAdv : Conj -> ListAdv -> Adv ; -- here, now, and with you
|
||||
mkAdv : DConj -> Adv -> Adv -> Adv ; -- both here and now
|
||||
mkAdv : DConj -> ListAdv -> Adv -- both here, now, and with you
|
||||
mkAdv : Conj -> Adv -> Adv -> Adv ; -- 7. here and now
|
||||
mkAdv : Conj -> ListAdv -> Adv ; -- 8. with John, here and now
|
||||
mkAdv : DConj -> Adv -> Adv -> Adv ; -- 9. either here or now
|
||||
mkAdv : DConj -> ListAdv -> Adv -- 10. either here, now, or with John
|
||||
} ;
|
||||
|
||||
|
||||
--2 Questions and relatives
|
||||
|
||||
--3 QS, question sentences
|
||||
|
||||
mkQS : overload {
|
||||
|
||||
-- Just like a sentence $S$ is built from a clause $Cl$, a question sentence $QS$ is built from
|
||||
-- a question clause $QCl$ by fixing tense, anteriority and polarity. Any of these arguments
|
||||
-- can be omitted, which results in the default (present, simultaneous, and positive, respectively).
|
||||
-- Just like a sentence $S$ is built from a clause $Cl$,
|
||||
-- a question sentence $QS$ is built from
|
||||
-- a question clause $QCl$ by fixing tense, anteriority and polarity.
|
||||
-- Any of these arguments can be omitted, which results in the
|
||||
-- default (present, simultaneous, and positive, respectively).
|
||||
|
||||
mkQS : QCl -> QS ; -- who walks
|
||||
mkQS : (Tense) -> (Ant) -> (Pol) -> QCl -> QS ; -- wouldn't John have walked
|
||||
mkQS : QCl -> QS ; -- 1. who walks
|
||||
mkQS : (Tense) -> (Ant) -> (Pol) -> QCl -> QS ; -- 2. who wouldn't have walked
|
||||
|
||||
-- Since 'yes-no' question clauses can be built from clauses (see below), we give a shortcus
|
||||
-- Since 'yes-no' question clauses can be built from clauses (see below),
|
||||
-- we give a shortcut
|
||||
-- for building a question sentence directly from a clause, using the defaults
|
||||
-- present, simultaneous, and positive.
|
||||
|
||||
mkQS : Cl -> QS -- does John walk
|
||||
mkQS : Cl -> QS -- 3. does John walk
|
||||
} ;
|
||||
|
||||
|
||||
@@ -635,64 +660,73 @@ incomplete resource Constructors = open Grammar in {
|
||||
|
||||
-- 'Yes-no' question clauses are built from 'declarative' clauses.
|
||||
|
||||
mkQCl : Cl -> QCl ; -- does John walk
|
||||
mkQCl : Cl -> QCl ; -- 1. does John walk
|
||||
|
||||
-- 'Wh' questions are built from interrogative pronouns in subject or object position.
|
||||
-- The latter uses the 'slash' category of objectless clauses (see below); we give the
|
||||
-- common special case with a two-place verb.
|
||||
-- 'Wh' questions are built from interrogative pronouns in subject
|
||||
-- or object position. The former uses a verb phrase; we don't give
|
||||
-- shortcuts for verb-argument sequences as we do for clauses.
|
||||
-- The latter uses the 'slash' category of objectless clauses
|
||||
-- (see below); we give the common special case with a two-place verb.
|
||||
|
||||
mkQCl : IP -> VP -> QCl ; -- who walks
|
||||
mkQCl : IP -> Slash -> QCl ; -- who does John love
|
||||
mkQCl : IP -> NP -> V2 -> QCl ; -- who does John love
|
||||
mkQCl : IP -> VP -> QCl ; -- 2. who walks
|
||||
mkQCl : IP -> NP -> V2 -> QCl ; -- 3. whom does John love
|
||||
mkQCl : IP -> Slash -> QCl ; -- 4. whom does John love today
|
||||
|
||||
-- Adverbial 'wh' questions are built with interrogative adverbials, with the
|
||||
-- special case of prepositional phrases with interrogative pronouns.
|
||||
|
||||
mkQCl : IAdv -> Cl -> QCl ; -- why does John walk
|
||||
mkQCl : Prep -> IP -> Cl -> QCl ; -- with whom does John walk
|
||||
mkQCl : IAdv -> Cl -> QCl ; -- 5. why does John walk
|
||||
mkQCl : Prep -> IP -> Cl -> QCl ; -- 6. with who does John walk
|
||||
|
||||
-- An interrogative adverbial can serve as the complement of a copula.
|
||||
|
||||
mkQCl : IAdv -> NP -> QCl ; -- where is John
|
||||
mkQCl : IAdv -> NP -> QCl ; -- 7. where is John
|
||||
|
||||
-- Existentials are a special construction.
|
||||
|
||||
mkQCl : IP -> QCl -- which houses are there
|
||||
mkQCl : IP -> QCl -- 8. what is there
|
||||
} ;
|
||||
|
||||
--3 IP, interrogative pronouns
|
||||
|
||||
mkIP : overload {
|
||||
|
||||
-- In addition to the interrogative pronouns defined in the $Structural$ lexicon, they
|
||||
-- Interrogative pronouns
|
||||
-- can be formed much like noun phrases, by using interrogative determiners.
|
||||
|
||||
mkIP : IDet -> N -> IP ; -- which song
|
||||
mkIP : IDet -> (Num) -> (Ord) -> CN -> IP ; -- which five best songs
|
||||
mkIP : IDet -> N -> IP ; -- 1. which city
|
||||
mkIP : IDet -> (Num) -> (Ord) -> CN -> IP ; -- 2. which five best cities
|
||||
|
||||
-- An interrogative pronoun can be modified by an adverb.
|
||||
|
||||
mkIP : IP -> Adv -> IP -- who in Europe
|
||||
mkIP : IP -> Adv -> IP -- 3. who in Paris
|
||||
} ;
|
||||
|
||||
-- More interrogative pronouns and determiners can be found in $Structural$.
|
||||
|
||||
|
||||
--3 IAdv, interrogative adverbs.
|
||||
|
||||
-- In addition to the interrogative adverbs defined in the $Structural$ lexicon, they
|
||||
-- can be formed as prepositional phrases from interrogative pronouns.
|
||||
|
||||
mkIAdv : Prep -> IP -> IAdv ; -- in which city
|
||||
mkIAdv : Prep -> IP -> IAdv ; -- 1. in which city
|
||||
|
||||
-- More interrogative adverbs are given in $Structural$.
|
||||
|
||||
|
||||
--3 RS, relative sentences
|
||||
|
||||
-- Just like a sentence $S$ is built from a clause $Cl$, a relative sentence $RS$ is built from
|
||||
-- a relative clause $RCl$ by fixing the tense, anteriority and polarity. Any of these arguments
|
||||
-- can be omitted, which results in the default (present, simultaneous, and positive, respectively).
|
||||
-- Just like a sentence $S$ is built from a clause $Cl$,
|
||||
-- a relative sentence $RS$ is built from
|
||||
-- a relative clause $RCl$ by fixing the tense, anteriority and polarity.
|
||||
-- Any of these arguments
|
||||
-- can be omitted, which results in the default (present, simultaneous,
|
||||
-- and positive, respectively).
|
||||
|
||||
mkRS : overload {
|
||||
mkRS : RCl -> RS ; -- who walks
|
||||
mkRS : (Tense) -> (Ant) -> (Pol) -> RCl -> RS -- who wouldn't have walked
|
||||
mkRS : RCl -> RS ; -- 1. that walk
|
||||
mkRS : (Tense) -> (Ant) -> (Pol) -> RCl -> RS -- 2. that wouldn't have walked
|
||||
} ;
|
||||
|
||||
--3 RCl, relative clauses
|
||||
@@ -700,27 +734,30 @@ incomplete resource Constructors = open Grammar in {
|
||||
mkRCl : overload {
|
||||
|
||||
-- Relative clauses are built from relative pronouns in subject or object position.
|
||||
-- The latter uses the 'slash' category of objectless clauses (see below); we give the
|
||||
-- common special case with a two-place verb.
|
||||
-- The former uses a verb phrase; we don't give
|
||||
-- shortcuts for verb-argument sequences as we do for clauses.
|
||||
-- The latter uses the 'slash' category of objectless clauses (see below);
|
||||
-- we give the common special case with a two-place verb.
|
||||
|
||||
mkRCl : RP -> VP -> RCl ; -- who loves John
|
||||
mkRCl : RP -> NP -> V2 -> RCl ; -- whom John loves
|
||||
mkRCl : RP -> Slash -> RCl ; -- whom John wants to love
|
||||
mkRCl : RP -> VP -> RCl ; -- 1. that walk
|
||||
mkRCl : RP -> NP -> V2 -> RCl ; -- 2. which John loves
|
||||
mkRCl : RP -> Slash -> RCl ; -- 3. which John loves today
|
||||
|
||||
-- There is a simple 'such that' construction for forming relative clauses from clauses.
|
||||
-- There is a simple 'such that' construction for forming relative
|
||||
-- clauses from clauses.
|
||||
|
||||
mkRCl : Cl -> RCl -- such that John loves her
|
||||
mkRCl : Cl -> RCl -- 4. such that John loves her
|
||||
} ;
|
||||
|
||||
--3 RP, relative pronouns
|
||||
|
||||
-- There is an atomic relative pronoun
|
||||
|
||||
which_RP : RP ; -- which
|
||||
which_RP : RP ; -- 1. which
|
||||
|
||||
-- A relative pronoun can be made into a kind of a prepositional phrase.
|
||||
|
||||
mkRP : Prep -> NP -> RP -> RP ; -- all the houses in which
|
||||
mkRP : Prep -> NP -> RP -> RP ; -- 2. all the houses in which
|
||||
|
||||
|
||||
--3 Slash, objectless sentences
|
||||
@@ -731,19 +768,19 @@ incomplete resource Constructors = open Grammar in {
|
||||
-- The most common way of constructing them is by using a two-place verb
|
||||
-- with a subject but without an object.
|
||||
|
||||
mkSlash : NP -> V2 -> Slash ; -- (whom) he sees
|
||||
mkSlash : NP -> V2 -> Slash ; -- 1. (whom) John loves
|
||||
|
||||
-- The two-place verb can be separated from the subject by a verb-complement verb.
|
||||
|
||||
mkSlash : NP -> VV -> V2 -> Slash ; -- (whom) he wants to see
|
||||
mkSlash : NP -> VV -> V2 -> Slash ; -- 2. (whom) John wants to see
|
||||
|
||||
-- The missing object can also be the noun phrase in a prepositional phrase.
|
||||
|
||||
mkSlash : Cl -> Prep -> Slash ; -- (with whom) he walks
|
||||
mkSlash : Cl -> Prep -> Slash ; -- 3. (with whom) John walks
|
||||
|
||||
-- An objectless sentence can be modified by an adverb.
|
||||
|
||||
mkSlash : Slash -> Adv -> Slash -- (whom) he sees tomorrow
|
||||
mkSlash : Slash -> Adv -> Slash -- 4. (whom) John loves today
|
||||
} ;
|
||||
|
||||
|
||||
@@ -755,30 +792,30 @@ incomplete resource Constructors = open Grammar in {
|
||||
--3 ListS, sentence lists
|
||||
|
||||
mkListS : overload {
|
||||
mkListS : S -> S -> ListS ; -- he walks, she runs
|
||||
mkListS : S -> ListS -> ListS -- I sleep, he walks, she runs
|
||||
mkListS : S -> S -> ListS ; -- 1. he walks, I run
|
||||
mkListS : S -> ListS -> ListS -- 2. John walks, I run, you sleep
|
||||
} ;
|
||||
|
||||
--3 ListAdv, adverb lists
|
||||
|
||||
mkListAdv : overload {
|
||||
mkListAdv : Adv -> Adv -> ListAdv ; -- here, now
|
||||
mkListAdv : Adv -> ListAdv -> ListAdv -- to me, here, now
|
||||
mkListAdv : Adv -> Adv -> ListAdv ; -- 1. here, now
|
||||
mkListAdv : Adv -> ListAdv -> ListAdv -- 2. to me, here, now
|
||||
} ;
|
||||
|
||||
--3 ListAP, adjectival phrase lists
|
||||
|
||||
mkListAP : overload {
|
||||
mkListAP : AP -> AP -> ListAP ; -- big, old
|
||||
mkListAP : AP -> ListAP -> ListAP -- warm, big, old
|
||||
mkListAP : AP -> AP -> ListAP ; -- 1. old, big
|
||||
mkListAP : AP -> ListAP -> ListAP -- 2. old, big, warm
|
||||
} ;
|
||||
|
||||
|
||||
--3 ListNP, noun phrase lists
|
||||
|
||||
mkListNP : overload {
|
||||
mkListNP : NP -> NP -> ListNP ; -- John, Mary
|
||||
mkListNP : NP -> ListNP -> ListNP -- you, John, Mary
|
||||
mkListNP : NP -> NP -> ListNP ; -- 1. John, I
|
||||
mkListNP : NP -> ListNP -> ListNP -- 2. John, I, that
|
||||
} ;
|
||||
|
||||
|
||||
@@ -800,6 +837,8 @@ incomplete resource Constructors = open Grammar in {
|
||||
= \ap,s -> SentAP ap (EmbedQS s) ;
|
||||
mkAP : AP -> VP -> AP -- great that she won
|
||||
= \ap,s -> SentAP ap (EmbedVP s) ;
|
||||
mkAP : AdA -> A -> AP -- very uncertain
|
||||
= \x,y -> AdAP x (PositA y) ;
|
||||
mkAP : AdA -> AP -> AP -- very uncertain
|
||||
= AdAP ;
|
||||
mkAP : Conj -> AP -> AP -> AP
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
abstract Exx = Cat-[VP] ** {
|
||||
abstract Exx = Cat-[VP], Conjunction-[VP] ** {
|
||||
|
||||
cat VP ; --- hack to circumvent missing lockfields in overload resolution
|
||||
|
||||
fun
|
||||
|
||||
ex1_Text, ex2_Text, ex3_Text, ex4_Text, ex5_Text, ex6_Text, ex7_Text, ex8_Text : Text ;
|
||||
ex1_Text, ex2_Text, ex3_Text, ex4_Text, ex5_Text, ex6_Text, ex7_Text,
|
||||
ex8_Text : Text ;
|
||||
|
||||
ex1_Phr, ex2_Phr, ex3_Phr, ex4_Phr, ex5_Phr, ex6_Phr : Phr ;
|
||||
|
||||
@@ -12,24 +13,25 @@ fun
|
||||
|
||||
ex1_Voc : Voc ;
|
||||
|
||||
ex1_Utt, ex2_Utt, ex3_Utt, ex4_Utt, ex5_Utt, ex6_Utt, ex7_Utt, ex8_Utt, ex8_Utt, ex9_Utt, ex10_Utt, ex11_Utt : Utt ;
|
||||
ex1_Utt, ex2_Utt, ex3_Utt, ex4_Utt, ex5_Utt, ex6_Utt, ex7_Utt, ex8_Utt, ex8_Utt,
|
||||
ex9_Utt, ex10_Utt, ex11_Utt : Utt ;
|
||||
|
||||
ex1_S, ex2_S, ex3_S, ex4_S, ex5_S, ex6_S, ex7_S : S ;
|
||||
|
||||
ex1_Cl, ex2_Cl, ex3_Cl, ex4_Cl, ex5_Cl, ex6_Cl, ex7_Cl, ex8_Cl, ex9_Cl, ex10_Cl,
|
||||
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 ;
|
||||
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 ;
|
||||
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 ;
|
||||
|
||||
ex1_NP, ex2_NP, ex3_NP, ex4_NP, ex5_NP, ex6_NP, ex7_NP, ex8_NP, ex9_NP, ex10_NP,
|
||||
ex11_NP, ex12_NP, ex13_NP, ex14_NP, ex15_NP, ex16_NP, ex17_NP, ex18_NP, ex19_NP, ex20_NP,
|
||||
ex21_NP, ex22_NP, ex23_NP : NP ;
|
||||
ex11_NP, ex12_NP, ex13_NP, ex14_NP, ex15_NP, ex16_NP, ex17_NP, ex18_NP, ex19_NP,
|
||||
ex20_NP, ex21_NP, ex22_NP, ex23_NP : NP ;
|
||||
|
||||
ex1_Det, ex2_Det, ex3_Det, ex4_Det, ex5_Det, ex6_Det, ex7_Det, ex8_Det, ex9_Det, ex10_Det,
|
||||
ex11_Det, ex12_Det, ex13_Det, ex14_Det : Det ;
|
||||
ex1_Det, ex2_Det, ex3_Det, ex4_Det, ex5_Det, ex6_Det, ex7_Det, ex8_Det, ex9_Det,
|
||||
ex10_Det, ex11_Det, ex12_Det, ex13_Det, ex14_Det : Det ;
|
||||
|
||||
ex1_Quant, ex2_Quant : Quant ;
|
||||
|
||||
@@ -37,6 +39,49 @@ fun
|
||||
|
||||
ex1_QuantPl : QuantPl ;
|
||||
|
||||
ex1_Num, ex2_Num, ex3_Num : Num ;
|
||||
|
||||
ex1_Ord, ex2_Ord, ex3_Ord : Ord ;
|
||||
|
||||
ex1_AdN : AdN ;
|
||||
|
||||
ex1_Numeral, ex2_Numeral, ex3_Numeral, ex4_Numeral, ex5_Numeral,
|
||||
ex6_Numeral, ex7_Numeral, ex8_Numeral, ex9_Numeral,
|
||||
ex10_Numeral, ex11_Numeral, ex12_Numeral, ex13_Numeral : Numeral ;
|
||||
|
||||
ex1_CN, ex2_CN, ex3_CN, ex4_CN, ex5_CN, ex6_CN, ex7_CN, ex8_CN, ex9_CN, ex10_CN,
|
||||
ex11_CN, ex12_CN, ex13_CN, ex14_CN, ex15_CN, ex16_CN, ex17_CN, ex18_CN : CN ;
|
||||
|
||||
ex1_AP, ex2_AP, ex3_AP, ex4_AP, ex5_AP, ex6_AP, ex7_AP, ex8_AP, ex9_AP, ex10_AP,
|
||||
ex11_AP, ex12_AP, ex13_AP : AP ;
|
||||
|
||||
ex1_Adv, ex2_Adv, ex3_Adv, ex4_Adv, ex5_Adv, ex6_Adv, ex7_Adv, ex8_Adv,
|
||||
ex9_Adv, ex10_Adv : Adv ;
|
||||
|
||||
ex1_QS, ex2_QS, ex3_QS : QS ;
|
||||
|
||||
ex1_QCl, ex2_QCl, ex3_QCl, ex4_QCl, ex5_QCl, ex6_QCl, ex7_QCl, ex8_QCl : QCl ;
|
||||
|
||||
ex1_IP, ex2_IP, ex3_IP : IP ;
|
||||
|
||||
ex1_IAdv : IAdv ;
|
||||
|
||||
ex1_RS, ex2_RS : RS ;
|
||||
|
||||
ex1_RCl, ex2_RCl, ex3_RCl, ex4_RCl : RCl ;
|
||||
|
||||
ex1_RP, ex2_RP : RP ;
|
||||
|
||||
ex1_Slash, ex2_Slash, ex3_Slash, ex4_Slash : Slash ;
|
||||
|
||||
ex1_ListS, ex2_ListS : ListS ;
|
||||
|
||||
ex1_ListAdv, ex2_ListAdv : ListAdv ;
|
||||
|
||||
ex1_ListAP, ex2_ListAP : ListAP ;
|
||||
|
||||
ex1_ListNP, ex2_ListNP : ListNP ;
|
||||
|
||||
|
||||
-- auxiliary to show VP's
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--# -path=.:..:alltenses:prelude
|
||||
|
||||
concrete ExxEng of Exx = CatEng-[VP] ** ExxI with
|
||||
concrete ExxEng of Exx = CatEng-[VP], ConjunctionEng-[VP] ** ExxI with
|
||||
(Lang = LangEng),
|
||||
(Constructors = ConstructorsEng) ;
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--# -path=.:..:alltenses:prelude
|
||||
|
||||
concrete ExxFin of Exx = CatFin-[VP] ** ExxI with
|
||||
concrete ExxFin of Exx = CatFin-[VP], ConjunctionFin-[VP] ** ExxI with
|
||||
(Lang = LangFin),
|
||||
(Constructors = ConstructorsFin) ;
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--# -path=.:..:alltenses:prelude
|
||||
|
||||
concrete ExxFre of Exx = CatFre-[VP] ** ExxI with
|
||||
concrete ExxFre of Exx = CatFre-[VP], ConjunctionFre-[VP] ** ExxI with
|
||||
(Lang = LangFre),
|
||||
(Constructors = ConstructorsFre) ;
|
||||
|
||||
|
||||
7
lib/resource-1.0/api/examples/ExxGer.gf
Normal file
7
lib/resource-1.0/api/examples/ExxGer.gf
Normal file
@@ -0,0 +1,7 @@
|
||||
--# -path=.:..:alltenses:prelude
|
||||
|
||||
concrete ExxGer of Exx = CatGer-[VP], ConjunctionGer-[VP] ** ExxI with
|
||||
(Lang = LangGer),
|
||||
(Constructors = ConstructorsGer) ;
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
incomplete concrete ExxI of Exx = Cat-[VP] ** open Lang, Constructors in {
|
||||
incomplete concrete ExxI of Exx = Cat-[VP], Conjunction-[VP] **
|
||||
open Lang, Constructors in {
|
||||
|
||||
-- examples for Constructors.
|
||||
|
||||
@@ -139,18 +140,136 @@ incomplete concrete ExxI of Exx = Cat-[VP] ** open Lang, Constructors in {
|
||||
ex2_Quant = indefQuant ;
|
||||
|
||||
ex1_QuantSg = mkQuantSg this_Quant ;
|
||||
ex2_QuantSg = massQuant ;
|
||||
|
||||
ex1_QuantPl = mkQuantSg this_Quant ;
|
||||
|
||||
ex2_QuantSg = massQuant ;
|
||||
|
||||
ex1_Num = mkNum n20_Numeral ;
|
||||
--- ex2_Num = mkNum 51 ;
|
||||
ex3_Num = mkNum almost_AdN (mkNum n10_Numeral) ;
|
||||
|
||||
ex1_Ord = mkOrd n20_Numeral ;
|
||||
--- ex2_Ord = mkOrd 51 ;
|
||||
ex3_Ord = mkOrd good_A ;
|
||||
|
||||
ex1_AdN = mkAdN more_CAdv ;
|
||||
|
||||
ex1_Numeral = n1_Numeral ;
|
||||
ex2_Numeral = n2_Numeral ;
|
||||
ex3_Numeral = n3_Numeral ;
|
||||
ex4_Numeral = n4_Numeral ;
|
||||
ex5_Numeral = n5_Numeral ;
|
||||
ex6_Numeral = n6_Numeral ;
|
||||
ex7_Numeral = n7_Numeral ;
|
||||
ex8_Numeral = n8_Numeral ;
|
||||
ex9_Numeral = n9_Numeral ;
|
||||
ex10_Numeral = n10_Numeral ;
|
||||
ex11_Numeral = n20_Numeral ;
|
||||
ex12_Numeral = n100_Numeral ;
|
||||
ex13_Numeral = n1000_Numeral ;
|
||||
|
||||
ex1_CN = mkCN house_N ;
|
||||
ex2_CN = mkCN mother_N2 john_NP ;
|
||||
ex3_CN = mkCN distance_N3 (mkNP (mkDet this_Quant) city_N) (mkNP paris_PN) ;
|
||||
ex4_CN = mkCN mother_N2 ;
|
||||
ex5_CN = mkCN distance_N3 ;
|
||||
ex6_CN = mkCN big_A house_N ;
|
||||
ex7_CN = mkCN big_A (mkCN blue_A house_N) ;
|
||||
ex8_CN = mkCN (mkAP very_AdA big_A) house_N ;
|
||||
ex9_CN = mkCN (mkAP very_AdA big_A) (mkCN blue_A house_N) ;
|
||||
ex10_CN = mkCN house_N (mkRS (mkRCl which_RP john_NP love_V2)) ;
|
||||
ex11_CN = mkCN (mkCN big_A house_N) (mkRS (mkRCl which_RP john_NP love_V2)) ;
|
||||
ex12_CN = mkCN house_N (mkAdv in_Prep (mkNP defSgDet city_N)) ;
|
||||
ex13_CN = mkCN (mkCN big_A house_N) (mkAdv in_Prep (mkNP defSgDet city_N)) ;
|
||||
ex14_CN = mkCN (mkCN rule_N) (mkS (mkCl john_NP walk_V)) ;
|
||||
ex15_CN = mkCN (mkCN question_N) (mkQS (mkCl john_NP walk_V)) ;
|
||||
ex16_CN = mkCN (mkCN reason_N) (mkVP walk_V) ;
|
||||
ex17_CN = mkCN king_N john_NP ;
|
||||
ex18_CN = mkCN (mkCN old_A king_N) john_NP ;
|
||||
|
||||
ex1_AP = mkAP old_A ;
|
||||
ex2_AP = mkAP old_A john_NP ;
|
||||
ex3_AP = mkAP married_A2 (mkNP she_Pron) ;
|
||||
ex4_AP = mkAP married_A2 ;
|
||||
ex5_AP = mkAP (mkAP probable_AS) (mkS (mkCl john_NP walk_V)) ;
|
||||
ex6_AP = mkAP (mkAP uncertain_A) (mkQS (mkCl john_NP walk_V)) ;
|
||||
ex7_AP = mkAP (mkAP ready_A) (mkVP walk_V) ;
|
||||
ex8_AP = mkAP very_AdA old_A ;
|
||||
ex9_AP = mkAP very_AdA (mkAP very_AdA old_A) ;
|
||||
ex10_AP = mkAP and_Conj (mkAP old_A) (mkAP big_A) ;
|
||||
ex11_AP = mkAP and_Conj (mkListAP (mkAP old_A) (mkListAP (mkAP big_A) (mkAP warm_A)));
|
||||
ex12_AP = mkAP either7or_DConj (mkAP old_A) (mkAP big_A) ;
|
||||
ex13_AP = mkAP either7or_DConj (mkListAP (mkAP old_A) (mkListAP (mkAP big_A) (mkAP warm_A)));
|
||||
|
||||
|
||||
ex1_Adv = mkAdv warm_A ;
|
||||
ex2_Adv = mkAdv with_Prep john_NP ;
|
||||
ex3_Adv = mkAdv when_Subj (mkS (mkCl john_NP walk_V)) ;
|
||||
ex4_Adv = mkAdv more_CAdv warm_A john_NP ;
|
||||
ex5_Adv = mkAdv more_CAdv warm_A (mkS (mkCl john_NP walk_V)) ;
|
||||
ex6_Adv = mkAdv very_AdA (mkAdv warm_A) ;
|
||||
ex7_Adv = mkAdv and_Conj here_Adv now_Adv ;
|
||||
ex8_Adv = mkAdv and_Conj (mkListAdv (mkAdv with_Prep john_NP) (mkListAdv here_Adv now_Adv)) ;
|
||||
ex9_Adv = mkAdv either7or_DConj here_Adv now_Adv ;
|
||||
ex10_Adv = mkAdv either7or_DConj (mkListAdv (mkAdv with_Prep john_NP) (mkListAdv here_Adv now_Adv)) ;
|
||||
|
||||
|
||||
|
||||
ex1_QS = mkQS (mkQCl whoSg_IP (mkVP walk_V)) ;
|
||||
ex2_QS = mkQS conditionalTense anteriorAnt negativePol (mkQCl whoSg_IP (mkVP walk_V)) ;
|
||||
ex3_QS = mkQS (mkCl john_NP walk_V) ;
|
||||
|
||||
ex1_QCl = mkQCl (mkCl john_NP walk_V) ;
|
||||
ex2_QCl = mkQCl whoSg_IP (mkVP walk_V) ;
|
||||
ex3_QCl = mkQCl whoSg_IP john_NP love_V2 ;
|
||||
ex4_QCl = mkQCl whoSg_IP (mkSlash (mkSlash john_NP love_V2) today_Adv) ;
|
||||
ex5_QCl = mkQCl why_IAdv (mkCl john_NP walk_V) ;
|
||||
ex6_QCl = mkQCl with_Prep whoSg_IP (mkCl john_NP walk_V) ;
|
||||
ex7_QCl = mkQCl where_IAdv john_NP ;
|
||||
ex8_QCl = mkQCl whatSg_IP ;
|
||||
|
||||
ex1_IP = mkIP whichSg_IDet city_N ;
|
||||
ex2_IP = mkIP whichPl_IDet (mkNum n5_Numeral) (mkOrd good_A) (mkCN city_N) ;
|
||||
ex3_IP = mkIP whoSg_IP (mkAdv in_Prep (mkNP paris_PN)) ;
|
||||
|
||||
ex1_IAdv = mkIAdv in_Prep (mkIP whichSg_IDet city_N) ;
|
||||
|
||||
|
||||
ex1_RS = mkRS (mkRCl which_RP (mkVP walk_V)) ;
|
||||
ex2_RS = mkRS conditionalTense anteriorAnt negativePol (mkRCl which_RP (mkVP walk_V)) ;
|
||||
|
||||
ex1_RCl = mkRCl which_RP (mkVP walk_V) ;
|
||||
ex2_RCl = mkRCl which_RP john_NP love_V2 ;
|
||||
ex3_RCl = mkRCl which_RP (mkSlash (mkSlash john_NP love_V2) today_Adv) ;
|
||||
ex4_RCl = mkRCl (mkCl john_NP love_V2 (mkNP she_Pron)) ;
|
||||
|
||||
ex1_RP = which_RP ;
|
||||
ex2_RP = mkRP in_Prep (mkNP all_Predet (mkNP defPlDet house_N)) which_RP ;
|
||||
|
||||
ex1_Slash = mkSlash john_NP love_V2 ;
|
||||
ex2_Slash = mkSlash john_NP want_VV see_V2 ;
|
||||
ex3_Slash = mkSlash (mkCl john_NP walk_V) with_Prep ;
|
||||
ex4_Slash = mkSlash (mkSlash john_NP love_V2) today_Adv ;
|
||||
|
||||
|
||||
ex1_ListS = mkListS (mkS (mkCl john_NP walk_V)) (mkS (mkCl (mkNP i_Pron) run_V)) ;
|
||||
ex2_ListS = mkListS (mkS (mkCl john_NP walk_V)) (mkListS (mkS (mkCl (mkNP i_Pron) run_V)) (mkS (mkCl (mkNP youSg_Pron) sleep_V))) ;
|
||||
|
||||
ex1_ListAP = mkListAP (mkAP old_A) (mkAP big_A) ;
|
||||
ex2_ListAP = mkListAP (mkAP old_A) (mkListAP (mkAP big_A) (mkAP warm_A)) ;
|
||||
|
||||
ex1_ListAdv = mkListAdv here_Adv now_Adv ;
|
||||
ex2_ListAdv = mkListAdv (mkAdv with_Prep john_NP) (mkListAdv here_Adv now_Adv) ;
|
||||
|
||||
ex1_ListNP = mkListNP john_NP (mkNP i_Pron) ;
|
||||
ex2_ListNP = mkListNP john_NP (mkListNP (mkNP i_Pron) that_NP) ;
|
||||
|
||||
|
||||
|
||||
utt u = mkUtt u ; -- a hack to linearize VPs
|
||||
|
||||
oper
|
||||
john_PN = paris_PN ; ----
|
||||
today_Adv = here_Adv ; ----
|
||||
|
||||
john_NP = mkNP john_PN ;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--# -path=.:..:alltenses:prelude
|
||||
|
||||
concrete ExxSwe of Exx = CatSwe-[VP] ** ExxI with
|
||||
concrete ExxSwe of Exx = CatSwe-[VP], ConjunctionSwe-[VP] ** ExxI with
|
||||
(Lang = LangSwe),
|
||||
(Constructors = ConstructorsSwe) ;
|
||||
|
||||
|
||||
9
lib/resource-1.0/api/examples/Makefile
Normal file
9
lib/resource-1.0/api/examples/Makefile
Normal file
@@ -0,0 +1,9 @@
|
||||
Eng:
|
||||
gf -nocpu ExxEng.gf <exx.gfs >exxEng.txt
|
||||
Fin:
|
||||
gf -nocpu ExxFin.gf <exx.gfs >exxFin.txt
|
||||
Swe:
|
||||
gf -nocpu ExxSwe.gf <exx.gfs >exxSwe.txt
|
||||
|
||||
gfs:
|
||||
runghc mkgfs.hs
|
||||
@@ -355,6 +355,14 @@ lin
|
||||
language_N = regN "language" ;
|
||||
rule_N = regN "rule" ;
|
||||
|
||||
-- added 4/6/2007
|
||||
john_PN = regPN "John" ;
|
||||
question_N = regN "question" ;
|
||||
ready_A = regA "ready" ;
|
||||
reason_N = regN "reason" ;
|
||||
today_Adv = mkAdv "today" ;
|
||||
uncertain_A = regA "uncertain" ;
|
||||
|
||||
oper
|
||||
aboutP = mkPrep "about" ;
|
||||
atP = mkPrep "at" ;
|
||||
|
||||
@@ -371,6 +371,13 @@ lin
|
||||
language_N = reg2N "kieli" "kieliä" ;
|
||||
rule_N = regN "sääntö" ;
|
||||
|
||||
john_PN = regPN "Jussi" ;
|
||||
question_N = regN "kysymys" ;
|
||||
ready_A = regA "valmis" ;
|
||||
reason_N = regN "syy" ;
|
||||
today_Adv = mkAdv "tänään" ;
|
||||
uncertain_A = regA "epävarma" ;
|
||||
|
||||
oper
|
||||
mkOrd : N -> Ord ;
|
||||
mkOrd x = {s = \\n,c => x.s ! NCase n c; lock_Ord = <> } ;
|
||||
|
||||
@@ -356,5 +356,12 @@ lin
|
||||
language_N = regN "langue" ;
|
||||
rule_N = regN "règle" ;
|
||||
|
||||
john_PN = regPN "Jean" ;
|
||||
question_N = regN "question" ;
|
||||
ready_A = regA "prêt" ;
|
||||
reason_N = regGenN "raison" feminine ;
|
||||
today_Adv = mkAdv "aujourd'hui" ;
|
||||
uncertain_A = regA "incertain" ;
|
||||
|
||||
|
||||
} ;
|
||||
|
||||
@@ -355,5 +355,12 @@ lin
|
||||
language_N = regN "Sprache" ;
|
||||
rule_N = reg2N "Regel" "Regeln" feminine ;
|
||||
|
||||
john_PN = regPN "Johann" ;
|
||||
question_N = regN "Frage" ;
|
||||
ready_A = regA "fertig" ;
|
||||
reason_N = reg2N "Grund" "Gründe" masculine ;
|
||||
today_Adv = mkAdv "heute" ;
|
||||
uncertain_A = regA "unsicher" ;
|
||||
|
||||
|
||||
} ;
|
||||
|
||||
@@ -355,5 +355,12 @@ lin
|
||||
language_N = mk2N "språk" "språk" ;
|
||||
rule_N = mkN "regel" "regeln" "regler" "reglerna" ;
|
||||
|
||||
john_PN = regPN "Johan" ;
|
||||
question_N = regN "fråga" ;
|
||||
ready_A = regA "färdig" ;
|
||||
reason_N = regN "anledning" ;
|
||||
today_Adv = mkAdv "idag" ;
|
||||
uncertain_A = mk3A "osäker" "osäkert" "osäkra" ;
|
||||
|
||||
|
||||
} ;
|
||||
|
||||
Reference in New Issue
Block a user