mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-22 17:42:51 -06:00
annotated some Paradigms for documentation
This commit is contained in:
@@ -9,7 +9,7 @@ resource ParadigmsBul = MorphoFunsBul ** open
|
|||||||
flags coding=cp1251 ;
|
flags coding=cp1251 ;
|
||||||
|
|
||||||
oper
|
oper
|
||||||
mkN001 : Str -> N ;
|
mkN001 : Str -> N ;
|
||||||
-- numbers refer to Krustev, Bulg. Morph. in 187 Tables
|
-- numbers refer to Krustev, Bulg. Morph. in 187 Tables
|
||||||
mkN001 base = {s = table {
|
mkN001 base = {s = table {
|
||||||
NF Sg Indef => base ;
|
NF Sg Indef => base ;
|
||||||
|
|||||||
@@ -77,37 +77,37 @@ oper
|
|||||||
-- "s","sh","x","z" or "y": "kiss - kisses", "flash - flashes";
|
-- "s","sh","x","z" or "y": "kiss - kisses", "flash - flashes";
|
||||||
-- "fly - flies" (but "toy - toys"),
|
-- "fly - flies" (but "toy - toys"),
|
||||||
|
|
||||||
mkN : (flash : Str) -> N ;
|
mkN : (flash : Str) -> N ; -- plural s, incl. flash-flashes, fly-flies
|
||||||
|
|
||||||
-- In practice the worst case is to give singular and plural nominative.
|
-- In practice the worst case is to give singular and plural nominative.
|
||||||
|
|
||||||
mkN : (man,men : Str) -> N ;
|
mkN : (man,men : Str) -> N ; -- irregular plural
|
||||||
|
|
||||||
-- The theoretical worst case: give all four forms.
|
-- The theoretical worst case: give all four forms.
|
||||||
|
|
||||||
mkN : (man,men,man's,men's : Str) -> N ;
|
mkN : (man,men,man's,men's : Str) -> N ; -- irregular genitives
|
||||||
|
|
||||||
-- Change gender from the default $nonhuman$.
|
-- Change gender from the default $nonhuman$.
|
||||||
|
|
||||||
mkN : Gender -> N -> N ;
|
mkN : Gender -> N -> N ; -- default nonhuman
|
||||||
|
|
||||||
--3 Compound nouns
|
--3 Compound nouns
|
||||||
--
|
--
|
||||||
-- A compound noun is an uninflected string attached to an inflected noun,
|
-- A compound noun is an uninflected string attached to an inflected noun,
|
||||||
-- such as "baby boom", "chief executive officer".
|
-- such as "baby boom", "chief executive officer".
|
||||||
|
|
||||||
mkN : Str -> N -> N
|
mkN : Str -> N -> N -- e.g. baby + boom
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|
||||||
--3 Relational nouns
|
--3 Relational nouns
|
||||||
|
|
||||||
mkN2 : overload {
|
mkN2 : overload {
|
||||||
mkN2 : N -> Prep -> N2 ; -- access to
|
mkN2 : Str -> N2 -- reg. noun, prep. "of" --%
|
||||||
mkN2 : N -> Str -> N2 ; -- access to
|
mkN2 : N -> N2 ; -- e.g. wife of (default prep. to)
|
||||||
mkN2 : Str -> Str -> N2 ; -- access to
|
mkN2 : N -> Str -> N2 ; -- access to --%
|
||||||
mkN2 : N -> N2 ; -- wife of
|
mkN2 : N -> Prep -> N2 ; -- e.g. access to
|
||||||
mkN2 : Str -> N2 -- daughter of
|
mkN2 : Str -> Str -> N2 ; -- access to (regular noun) --%
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- Use the function $mkPrep$ or see the section on prepositions below to
|
-- Use the function $mkPrep$ or see the section on prepositions below to
|
||||||
@@ -115,7 +115,7 @@ oper
|
|||||||
--
|
--
|
||||||
-- Three-place relational nouns ("the connection from x to y") need two prepositions.
|
-- Three-place relational nouns ("the connection from x to y") need two prepositions.
|
||||||
|
|
||||||
mkN3 : N -> Prep -> Prep -> N3 ;
|
mkN3 : N -> Prep -> Prep -> N3 ; -- e.g. connection from x to y
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -129,17 +129,17 @@ oper
|
|||||||
|
|
||||||
-- Sometimes a common noun can be reused as a proper name, e.g. "Bank"
|
-- Sometimes a common noun can be reused as a proper name, e.g. "Bank"
|
||||||
|
|
||||||
mkPN : N -> PN
|
mkPN : N -> PN --%
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
--3 Determiners and quantifiers
|
--3 Determiners and quantifiers
|
||||||
|
|
||||||
mkQuant : overload {
|
mkQuant : overload {
|
||||||
mkQuant : (this, these : Str) -> Quant ;
|
mkQuant : (this, these : Str) -> Quant ; --%
|
||||||
mkQuant : (no_sg, no_pl, none_sg, non_pl : Str) -> Quant ;
|
mkQuant : (no_sg, no_pl, none_sg, non_pl : Str) -> Quant ; --%
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
mkOrd : Str -> Ord ;
|
mkOrd : Str -> Ord ; --%
|
||||||
|
|
||||||
--2 Adjectives
|
--2 Adjectives
|
||||||
|
|
||||||
@@ -149,33 +149,33 @@ oper
|
|||||||
-- even for cases with the variations "happy - happily - happier - happiest",
|
-- even for cases with the variations "happy - happily - happier - happiest",
|
||||||
-- "free - freely - freer - freest", and "rude - rudest".
|
-- "free - freely - freer - freest", and "rude - rudest".
|
||||||
|
|
||||||
mkA : (happy : Str) -> A ;
|
mkA : (happy : Str) -> A ; -- regular adj, incl. happy-happier, rude-ruder
|
||||||
|
|
||||||
-- However, the duplication of the final consonant cannot be predicted,
|
-- However, the duplication of the final consonant cannot be predicted,
|
||||||
-- but a separate case is used to give the comparative
|
-- but a separate case is used to give the comparative
|
||||||
|
|
||||||
mkA : (fat,fatter : Str) -> A ;
|
mkA : (fat,fatter : Str) -> A ; -- irreg. comparative
|
||||||
|
|
||||||
-- As many as four forms may be needed.
|
-- As many as four forms may be needed.
|
||||||
|
|
||||||
mkA : (good,better,best,well : Str) -> A
|
mkA : (good,better,best,well : Str) -> A -- completely irreg.
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- Regular comparison is formed by "more - most" for words with two vowels separated
|
-- Regular comparison is formed by "more - most" for words with two vowels separated
|
||||||
-- and terminated by some other letters. To force this or the opposite,
|
-- and terminated by some other letters. To force this or the opposite,
|
||||||
-- the following can be used:
|
-- the following can be used:
|
||||||
|
|
||||||
compoundA : A -> A ; -- -/more/most ditto
|
compoundA : A -> A ; -- force comparison with more/most
|
||||||
simpleA : A -> A ; -- young,younger,youngest
|
simpleA : A -> A ; -- force comparison with -er,-est
|
||||||
irregAdv : A -> Str -> A ;
|
irregAdv : A -> Str -> A ; -- adverb irreg, e.g. "fast"
|
||||||
|
|
||||||
--3 Two-place adjectives
|
--3 Two-place adjectives
|
||||||
|
|
||||||
mkA2 : overload {
|
mkA2 : overload {
|
||||||
mkA2 : A -> Prep -> A2 ; -- absent from
|
mkA2 : A -> Prep -> A2 ; -- absent from
|
||||||
mkA2 : A -> Str -> A2 ; -- absent from
|
mkA2 : A -> Str -> A2 ; -- absent from --%
|
||||||
mkA2 : Str -> Prep -> A2 ; -- absent from
|
mkA2 : Str -> Prep -> A2 ; -- absent from --%
|
||||||
mkA2 : Str -> Str -> A2 -- absent from
|
mkA2 : Str -> Str -> A2 -- absent from --%
|
||||||
|
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
@@ -185,24 +185,24 @@ oper
|
|||||||
-- Adverbs are not inflected. Most lexical ones have position
|
-- Adverbs are not inflected. Most lexical ones have position
|
||||||
-- after the verb. Some can be preverbal (e.g. "always").
|
-- after the verb. Some can be preverbal (e.g. "always").
|
||||||
|
|
||||||
mkAdv : Str -> Adv ;
|
mkAdv : Str -> Adv ; -- e.g. today
|
||||||
mkAdV : Str -> AdV ;
|
mkAdV : Str -> AdV ; -- e.g. always
|
||||||
|
|
||||||
-- Adverbs modifying adjectives and sentences can also be formed.
|
-- Adverbs modifying adjectives and sentences can also be formed.
|
||||||
|
|
||||||
mkAdA : Str -> AdA ;
|
mkAdA : Str -> AdA ; -- e.g. quite
|
||||||
|
|
||||||
-- Adverbs modifying numerals
|
-- Adverbs modifying numerals
|
||||||
|
|
||||||
mkAdN : Str -> AdN ;
|
mkAdN : Str -> AdN ; -- e.g. approximately
|
||||||
|
|
||||||
--2 Prepositions
|
--2 Prepositions
|
||||||
--
|
--
|
||||||
-- A preposition as used for rection in the lexicon, as well as to
|
-- A preposition as used for rection in the lexicon, as well as to
|
||||||
-- build $PP$s in the resource API, just requires a string.
|
-- build $PP$s in the resource API, just requires a string.
|
||||||
|
|
||||||
mkPrep : Str -> Prep ;
|
mkPrep : Str -> Prep ; -- e.g. "in front of"
|
||||||
noPrep : Prep ;
|
noPrep : Prep ; -- no preposition
|
||||||
|
|
||||||
-- (These two functions are synonyms.)
|
-- (These two functions are synonyms.)
|
||||||
|
|
||||||
@@ -210,10 +210,10 @@ oper
|
|||||||
--
|
--
|
||||||
|
|
||||||
mkConj : overload {
|
mkConj : overload {
|
||||||
mkConj : Str -> Conj ; -- and (plural agreement)
|
mkConj : Str -> Conj ; -- and (plural agreement) --%
|
||||||
mkConj : Str -> Number -> Conj ; -- or (agrement number given as argument)
|
mkConj : Str -> Number -> Conj ; -- or (agrement number given as argument) --%
|
||||||
mkConj : Str -> Str -> Conj ; -- both ... and (plural)
|
mkConj : Str -> Str -> Conj ; -- both ... and (plural) --%
|
||||||
mkConj : Str -> Str -> Number -> Conj ; -- either ... or (agrement number given as argument)
|
mkConj : Str -> Str -> Number -> Conj ; -- either ... or (agrement number given as argument) --%
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
--2 Verbs
|
--2 Verbs
|
||||||
@@ -229,45 +229,45 @@ oper
|
|||||||
-- ("kiss-"kisses", "jazz-jazzes", "rush-rushes", "munch - munches",
|
-- ("kiss-"kisses", "jazz-jazzes", "rush-rushes", "munch - munches",
|
||||||
-- "fix - fixes").
|
-- "fix - fixes").
|
||||||
|
|
||||||
mkV : (cry : Str) -> V ;
|
mkV : (cry : Str) -> V ; -- regular, incl. cry-cries, kiss-kisses etc
|
||||||
|
|
||||||
-- Give the present and past forms for regular verbs where
|
-- Give the present and past forms for regular verbs where
|
||||||
-- the last letter is duplicated in some forms,
|
-- the last letter is duplicated in some forms,
|
||||||
-- e.g. "rip - ripped - ripping".
|
-- e.g. "rip - ripped - ripping".
|
||||||
|
|
||||||
mkV : (stop, stopped : Str) -> V ;
|
mkV : (stop, stopped : Str) -> V ; -- reg. with consonant duplication
|
||||||
|
|
||||||
-- There is an extensive list of irregular verbs in the module $IrregularEng$.
|
-- There is an extensive list of irregular verbs in the module $IrregularEng$.
|
||||||
-- In practice, it is enough to give three forms,
|
-- In practice, it is enough to give three forms,
|
||||||
-- e.g. "drink - drank - drunk".
|
-- e.g. "drink - drank - drunk".
|
||||||
|
|
||||||
mkV : (drink, drank, drunk : Str) -> V ;
|
mkV : (drink, drank, drunk : Str) -> V ; -- ordinary irregular
|
||||||
|
|
||||||
-- Irregular verbs with duplicated consonant in the present participle.
|
-- Irregular verbs with duplicated consonant in the present participle.
|
||||||
|
|
||||||
mkV : (run, ran, run, running : Str) -> V ;
|
mkV : (run, ran, run, running : Str) -> V ; -- irregular with duplication --%
|
||||||
|
|
||||||
-- Except for "be", the worst case needs five forms: the infinitive and
|
-- Except for "be", the worst case needs five forms: the infinitive and
|
||||||
-- the third person singular present, the past indicative, and the
|
-- the third person singular present, the past indicative, and the
|
||||||
-- past and present participles.
|
-- past and present participles.
|
||||||
|
|
||||||
mkV : (go, goes, went, gone, going : Str) -> V ;
|
mkV : (go, goes, went, gone, going : Str) -> V ; -- totally irregular
|
||||||
|
|
||||||
-- Adds a prefix to an exisiting verb. This is most useful to create
|
-- Adds a prefix to an exisiting verb. This is most useful to create
|
||||||
-- prefix-variants of irregular verbs from $IrregEng$, e.g. "undertake".
|
-- prefix-variants of irregular verbs from $IrregEng$, e.g. "undertake".
|
||||||
|
|
||||||
mkV : Str -> V -> V ;
|
mkV : Str -> V -> V ; -- fix compound, e.g. under+take
|
||||||
};
|
};
|
||||||
|
|
||||||
-- Verbs with a particle.
|
-- Verbs with a particle.
|
||||||
-- The particle, such as in "switch on", is given as a string.
|
-- The particle, such as in "switch on", is given as a string.
|
||||||
|
|
||||||
partV : V -> Str -> V ;
|
partV : V -> Str -> V ; -- with particle, e.g. switch + on
|
||||||
|
|
||||||
-- Reflexive verbs.
|
-- Reflexive verbs.
|
||||||
-- By default, verbs are not reflexive; this function makes them that.
|
-- By default, verbs are not reflexive; this function makes them that.
|
||||||
|
|
||||||
reflV : V -> V ;
|
reflV : V -> V ; -- reflexive e.g. behave oneself
|
||||||
|
|
||||||
--3 Two-place verbs
|
--3 Two-place verbs
|
||||||
--
|
--
|
||||||
@@ -275,12 +275,12 @@ oper
|
|||||||
-- (transitive verbs). Notice that a particle comes from the $V$.
|
-- (transitive verbs). Notice that a particle comes from the $V$.
|
||||||
|
|
||||||
mkV2 : overload {
|
mkV2 : overload {
|
||||||
mkV2 : Str -> V2 ; -- kill
|
mkV2 : Str -> V2 ; -- kill --%
|
||||||
mkV2 : V -> V2 ; -- hit
|
mkV2 : V -> V2 ; -- transitive, e.g. hit
|
||||||
mkV2 : V -> Prep -> V2 ; -- believe in
|
mkV2 : V -> Prep -> V2 ; -- with preposiiton, e.g. believe in
|
||||||
mkV2 : V -> Str -> V2 ; -- believe in
|
mkV2 : V -> Str -> V2 ; -- believe in --%
|
||||||
mkV2 : Str -> Prep -> V2 ; -- believe in
|
mkV2 : Str -> Prep -> V2 ; -- believe in --%
|
||||||
mkV2 : Str -> Str -> V2 -- believe in
|
mkV2 : Str -> Str -> V2 -- believe in --%
|
||||||
};
|
};
|
||||||
|
|
||||||
--3 Three-place verbs
|
--3 Three-place verbs
|
||||||
@@ -289,12 +289,12 @@ oper
|
|||||||
-- the first one or both can be absent.
|
-- the first one or both can be absent.
|
||||||
|
|
||||||
mkV3 : overload {
|
mkV3 : overload {
|
||||||
mkV3 : V -> Prep -> Prep -> V3 ; -- speak, with, about
|
mkV3 : V -> V3 ; -- ditransitive, e.g. give,_,_
|
||||||
mkV3 : V -> Prep -> V3 ; -- give,_,to
|
mkV3 : V -> Prep -> Prep -> V3 ; -- two prepositions, e.g. speak, with, about
|
||||||
mkV3 : V -> Str -> V3 ; -- give,_,to
|
mkV3 : V -> Prep -> V3 ; -- give,_,to --%
|
||||||
mkV3 : Str -> Str -> V3 ; -- give,_,to
|
mkV3 : V -> Str -> V3 ; -- give,_,to --%
|
||||||
mkV3 : V -> V3 ; -- give,_,_
|
mkV3 : Str -> Str -> V3 ; -- give,_,to --%
|
||||||
mkV3 : Str -> V3 ; -- give,_,_
|
mkV3 : Str -> V3 ; -- give,_,_ --%
|
||||||
};
|
};
|
||||||
|
|
||||||
--3 Other complement patterns
|
--3 Other complement patterns
|
||||||
@@ -302,30 +302,30 @@ oper
|
|||||||
-- Verbs and adjectives can take complements such as sentences,
|
-- Verbs and adjectives can take complements such as sentences,
|
||||||
-- questions, verb phrases, and adjectives.
|
-- questions, verb phrases, and adjectives.
|
||||||
|
|
||||||
mkV0 : V -> V0 ;
|
mkV0 : V -> V0 ; --%
|
||||||
mkVS : V -> VS ;
|
mkVS : V -> VS ; -- sentence-compl e.g. say (that S)
|
||||||
mkV2S : V -> Prep -> V2S ;
|
mkV2S : V -> Prep -> V2S ; -- e.g. tell (NP) (that S)
|
||||||
mkVV : V -> VV ;
|
mkVV : V -> VV ; -- e.g. want (to VP)
|
||||||
mkV2V : V -> Prep -> Prep -> V2V ;
|
mkV2V : V -> Prep -> Prep -> V2V ; -- e.g. want (NP) (to VP)
|
||||||
mkVA : V -> VA ;
|
mkVA : V -> VA ; -- e.g. become (AP)
|
||||||
mkV2A : V -> Prep -> V2A ;
|
mkV2A : V -> Prep -> V2A ; -- e.g. paint (NP) (AP)
|
||||||
mkVQ : V -> VQ ;
|
mkVQ : V -> VQ ; -- e.g. wonder (QS)
|
||||||
mkV2Q : V -> Prep -> V2Q ;
|
mkV2Q : V -> Prep -> V2Q ; -- e.g. ask (NP) (QS)
|
||||||
|
|
||||||
mkAS : A -> AS ;
|
mkAS : A -> AS ; --%
|
||||||
mkA2S : A -> Prep -> A2S ;
|
mkA2S : A -> Prep -> A2S ; --%
|
||||||
mkAV : A -> AV ;
|
mkAV : A -> AV ; --%
|
||||||
mkA2V : A -> Prep -> A2V ;
|
mkA2V : A -> Prep -> A2V ; --%
|
||||||
|
|
||||||
-- Notice: Categories $V0, AS, A2S, AV, A2V$ are just $A$.
|
-- Notice: Categories $V0, AS, A2S, AV, A2V$ are just $A$.
|
||||||
-- $V0$ is just $V$; the second argument is treated as adverb.
|
-- $V0$ is just $V$; the second argument is treated as adverb.
|
||||||
|
|
||||||
V0 : Type ;
|
V0 : Type ; --%
|
||||||
AS, A2S, AV, A2V : Type ;
|
AS, A2S, AV, A2V : Type ; --%
|
||||||
|
|
||||||
--2 Other categories
|
--2 Other categories
|
||||||
|
|
||||||
mkSubj : Str -> Subj = \s -> lin Subj {s = s} ;
|
mkSubj : Str -> Subj = \s -> lin Subj {s = s} ; --%
|
||||||
|
|
||||||
--.
|
--.
|
||||||
--2 Definitions of paradigms
|
--2 Definitions of paradigms
|
||||||
|
|||||||
Reference in New Issue
Block a user