inspected ParadigmsX

This commit is contained in:
aarne
2004-06-21 18:31:29 +00:00
parent 3608e81186
commit ee240bceb2
8 changed files with 84 additions and 66 deletions

View File

@@ -24,15 +24,17 @@
-- video recorder dialogue systems, software specifications, and a
-- health-related phrase book. Each new application helped to identify some
-- missing structures in the resource and suggested some additions, but the
-- number of them was usually small.
-- number of required additions was usually small.
--
-- To use the resource in applications, you need the following
-- $cat$ and $fun$ rules in $oper$ form, completed by taking the
-- $lincat$ and $lin$ judgements of a particular language. This is done
-- by using, instead of this module, the $reuse$ module which has the name
-- $ResourceX$
-- $ResourceX$. It is located in the subdirectory
-- $grammars/resource/lang$ where $lang$ is the full name of the language.
abstract Combinations = {
abstract Combinations = PredefAbs ** {
--!
--2 Categories
--
@@ -221,9 +223,9 @@ fun
PosVG,NegVG : VG -> VP ; --
--!
--3 Adverbials
--3 Adverbs
--
-- Here is how complex adverbials can be formed and used.
-- Here is how complex adverbs can be formed and used.
AdjAdv : AP -> AdV ; -- "freely", "more consciously than you"
PrepNP : Prep -> NP -> AdV ; -- "in London", "after the war"
@@ -237,9 +239,9 @@ fun
--
PredVP : NP -> VP -> S ; -- "John walks"
PosSlashTV, NegSlashTV : NP -> TV -> Slash ; -- "John sees", "John doesn's see"
PosSlashTV,NegSlashTV : NP -> TV -> Slash ; -- "John sees", "John doesn's see"
OneVP : VP -> S ; -- "one walks"
ThereNP : NP -> S ; -- "there is a bar","there are 86 bars"
ThereNP : NP -> S ; -- "there is a bar","there are 86 bars"
IdRP : RP ; -- "which"
FunRP : Fun -> RP -> RP ; -- "the successor of which"
@@ -317,9 +319,9 @@ fun
-- These are, more generally, *one-phrase utterances*. The list below
-- is very incomplete.
PhrNP : NP -> Phr ; -- "Some man.", "John."
PhrNP : NP -> Phr ; -- "Some man.", "John."
PhrOneCN, PhrManyCN : CN -> Phr ; -- "A car.", "Cars."
PhrIP : IAdv -> Phr ; -- "Who?"
PhrIP : IAdv -> Phr ; -- "Who?"
PhrIAdv : IAdv -> Phr ; -- "Why?"
--!

View File

@@ -41,7 +41,7 @@ fun
-- Depending on language, all, some, or none of there verbs belong to
-- a separate class of *auxiliary* verbs. The list is incomplete.
CanVV, CanKnowVV, MustVV : VV ; -- can (pouvoir/savoir), must
CanVV, CanKnowVV, MustVV : VV ; -- can (pouvoir,savoir), must
WantVV : VV ; -- want (to do)
--!
@@ -65,7 +65,7 @@ fun
--!
--2 Prepositions
--
-- We have carefully chosen a set of semantic relations expressible
-- We have chosen a set of semantic relations expressible
-- by prepositions in some languages, by cases or postpositions in
-- others. Complement uses of prepositions are not included, and
-- should be treated by the use of many-place verbs, adjectives, and

View File

@@ -13,8 +13,9 @@
--
-- The main difference with $MorphoEng.gf$ is that the types
-- referred to are compiled resource grammar types. We have moreover
-- had the design principle of always having existing forms as string
-- arguments of the paradigms, not stems.
-- had the design principle of always having existing forms, rather
-- than stems, as string
-- arguments of the paradigms.
--
-- The following modules are presupposed:
@@ -33,6 +34,11 @@ oper
singular : Number ;
plural : Number ;
-- To abstract over case names, we define the following.
nominative : Case ;
genitive : Case ;
--2 Nouns
@@ -69,8 +75,8 @@ oper
pnReg : (John : Str) -> PN ; -- John, John's
-- The most common cases on the top level havee shortcuts.
-- The regular "y"/"s" variation is taken into account in $CN$.
-- The most common cases on the higher-level category $CN$ have shortcuts.
-- The regular "y"/"s" variation is taken into account.
cnNonhuman : Str -> CN ;
cnHuman : Str -> CN ;
@@ -102,7 +108,7 @@ oper
aFat : (fat : Str) -> AdjDeg ; -- fat, fatter, fattest
aRidiculous : (ridiculous : Str) -> AdjDeg ; -- -/more/most ridiculous
-- On top level, there are adjectival phrases. The most common case is
-- On higher level, there are adjectival phrases. The most common case is
-- just to use a one-place adjective.
apReg : Str -> AP ;
@@ -112,7 +118,7 @@ oper
-- Adverbs are not inflected. Most lexical ones have position not
-- before the verb. Some can be preverbal (e.g. "always").
mkAdv : Str -> AdV ;
mkAdv : Str -> AdV ;
mkAdvPre : Str -> AdV ;
-- Adverbs modifying adjectives and sentences can also be formed.
@@ -167,9 +173,9 @@ oper
-- Ditransitive verbs.
mkV3 : V -> Str -> Str -> V3 ; -- prata, med, om
v3Dir : V -> Str -> V3 ; -- ge,_,till
v3DirDir : V -> V3 ; -- ge,_,_
mkV3 : V -> Str -> Str -> V3 ; -- speak, with, about
v3Dir : V -> Str -> V3 ; -- give,_,to
v3DirDir : V -> V3 ; -- give,_,_
-- The definitions should not bother the user of the API. So they are
-- hidden from the document.
@@ -177,10 +183,11 @@ oper
human = Hum ;
nonhuman = NoHum ;
-- singular defined in types.Eng
-- plural defined in types.Eng
singular = Sg ;
plural = Pl ;
nominative = Nom ;
genitive = Nom ;
mkN = \man,men,man's,men's,g ->
mkNoun man men man's men's ** {g = g ; lock_N = <>} ;

View File

@@ -9,10 +9,10 @@
-- Closed categories (determiners, pronouns, conjunctions) are
-- accessed through the resource syntax API, $Structural.gf$.
--
-- The main difference with $morpho.Fin.gf$ is that the types
-- The main difference with $MorphoFin.gf$ is that the types
-- referred to are compiled resource grammar types. We have moreover
-- had the design principle of always having existing forms as string
-- arguments of the paradigms, not stems.
-- had the design principle of always having existing forms, not
-- stems, as string arguments of the paradigms, not stems.
--
-- This is the path to read the grammar from the same directory.
--# -path=.:../abstract:../../prelude
@@ -30,8 +30,8 @@ oper
human : Gender ;
nonhuman : Gender ;
-- singular : Number ;
-- singular : Number ;
singular : Number ;
plural : Number ;
nominative : Case ;
genitive : Case ;
@@ -50,7 +50,8 @@ oper
-- stems, vowel alternation, and vowel harmony.
oper
mkN : (talo,talon,talona,taloa,taloon,taloina,taloissa,talojen,taloja,taloihin
mkN :
(talo,talon,talona,taloa,taloon,taloina,taloissa,talojen,taloja,taloihin
: Str) -> Gender -> N ;
-- Nouns with partitive "a"/"ä" are a large group.
@@ -147,12 +148,13 @@ oper
-- Nouns used as functions need a case, of which by far the commonest is
-- the genitive.
mkFun : N -> Case -> Fun ;
fGen : N -> Fun ;
mkFun : N -> Case -> Fun ;
fGen : N -> Fun ;
-- Proper names can be formed by using declensions for nouns.
-- The plural forms are filtered away by the compiler.
mkPN : N -> PN ;
mkPN : N -> PN ;
--2 Adjectives
@@ -225,8 +227,8 @@ oper
-- The definitions should not bother the user of the API. So they are
-- hidden from the document.
--.
-- singular defined in types.Fin
-- plural defined in types.Fin
singular = Sg ;
plural = Pl ;
human = Human ;
nonhuman = NonHuman ;

View File

@@ -13,13 +13,13 @@
--
-- The main difference with $MorphoFre.gf$ is that the types
-- referred to are compiled resource grammar types. We have moreover
-- had the design principle of always having existing forms as string
-- arguments of the paradigms, not stems.
-- had the design principle of always having existing forms, not stems, as string
-- arguments of the paradigms.
--
-- The following modules are presupposed:
resource ParadigmsFre =
open (Predef=Predef), Prelude, (Types = TypesFre), SyntaxFre, MorphoFre,
open Prelude, (Types = TypesFre), SyntaxFre, MorphoFre,
ResourceFre in {
--2 Parameters
@@ -30,18 +30,21 @@ oper
masculine : Gender ;
feminine : Gender ;
-- To abstract over case names, we define the following.
-- To abstract over number names, we define the following.
singular : Number ;
plural : Number ;
-- To abstract over case names, we define the following. (Except for
-- some pronouns, the accusative is equal to the nominative, the
-- dative is formed by the preposition "à", and the genitive by the
-- preposition "de".)
nominative : Case ;
accusative : Case ;
dative : Case ;
genitive : Case ;
-- To abstract over number names, we define the following.
singular : Number ;
plural : Number ;
--2 Nouns
@@ -55,7 +58,7 @@ oper
nReg : Str -> Gender -> N ; -- regular, e.g. maison, (maisons,) feminine
nEau : Str -> Gender -> N ; -- eau, (eaux,) feminine
nCas : Str -> Gender -> N ; -- cas, (cas,) masculine
nCheval : Str -> N ; -- cheval, (chevaux, masculine)
nCheval : Str -> N ; -- cheval, (chevaux, masculine)
-- Nouns used as functions need a case and a preposition. The most common is "de".
@@ -115,7 +118,7 @@ oper
--
-- The fragment only has present tense so far, but in all persons.
-- These are examples of standard conjugations are available. The full list
-- of Bescherelle conjugations is given in $morpho.Fra.gf$, with all forms
-- of Bescherelle conjugations is given in $MorphoFra.gf$, with all forms
-- (their type is $Verbum$). The present-tense forms can be extracted by the
-- function $extractVerb$.

View File

@@ -15,13 +15,13 @@
--
-- The main difference with $MorphoGer.gf$ is that the types
-- referred to are compiled resource grammar types. We have moreover
-- had the design principle of always having existing forms as string
-- arguments of the paradigms, not stems.
-- had the design principle of always having existing forms, not stems, as string
-- arguments of the paradigms.
--
-- The following modules are presupposed:
resource ParadigmsGer = open (Predef=Predef), Prelude,
(Morpho=MorphoGer), SyntaxGer, ResourceGer in {
resource ParadigmsGer =
open Prelude, (Morpho=MorphoGer), SyntaxGer, ResourceGer in {
--2 Parameters
@@ -174,7 +174,7 @@ oper
-- Regular verbs are those where no Umlaut occurs.
vReg : Str -> V ; -- führen
vReg : Str -> V ; -- führen
-- The verbs 'be' and 'have' are special.
@@ -194,11 +194,11 @@ oper
-- Two-place verbs, and the special case with direct object. Notice that
-- a particle can be included in a $V$.
mkTV : V -> Str -> Case -> TV ; -- hören, zu, dative
mkTV : V -> Str -> Case -> TV ; -- hören, zu, dative
tvReg : Str -> Str -> Case -> TV ; -- hören, zu, dative
tvDir : V -> TV ; -- umbringen
tvDirReg : Str -> TV ; -- lieben
tvReg : Str -> Str -> Case -> TV ; -- hören, zu, dative
tvDir : V -> TV ; -- umbringen
tvDirReg : Str -> TV ; -- lieben
-- Three-place verbs require two prepositions and cases.

View File

@@ -13,13 +13,13 @@
--
-- The main difference with $MorphoIta.gf$ is that the types
-- referred to are compiled resource grammar types. We have moreover
-- had the design principle of always having existing forms as string
-- arguments of the paradigms, not stems.
-- had the design principle of always having existing forms, not stems, as string
-- arguments of the paradigms.
--
-- The following modules are presupposed:
resource ParadigmsIta =
open (Predef=Predef), Prelude, (Types = TypesIta), SyntaxIta, MorphoIta,
open Prelude, (Types = TypesIta), SyntaxIta, MorphoIta,
ResourceIta in {
--2 Parameters
@@ -30,7 +30,15 @@ oper
masculine : Gender ;
feminine : Gender ;
-- To abstract over case names, we define the following.
-- To abstract over number names, we define the following.
singular : Number ;
plural : Number ;
-- To abstract over case names, we define the following. (Except for
-- some pronouns, the accusative is equal to the nominative, the
-- dative is formed by the preposition "a", and the genitive by the
-- preposition "di".)
nominative : Case ;
accusative : Case ;
@@ -44,10 +52,6 @@ oper
prep_su : Case ;
prep_con : Case ;
-- To abstract over number names, we define the following.
singular : Number ;
plural : Number ;
--2 Nouns

View File

@@ -13,8 +13,8 @@
--
-- The main difference with $MorphoSwe.gf$ is that the types
-- referred to are compiled resource grammar types. We have moreover
-- had the design principle of always having existing forms as string
-- arguments of the paradigms, not stems.
-- had the design principle of always having existing forms, not stems, as string
-- arguments of the paradigms.
--
-- The following modules are presupposed:
@@ -28,7 +28,7 @@ oper
utrum : Gender ;
neutrum : Gender ;
masculine : Sex ;
masculine : Sex ;
nonmasculine : Sex ;
-- To abstract over case names, we define the following.
@@ -195,8 +195,8 @@ oper
nonmasculine = NoMasc ;
nominative = Nom ;
genitive = Gen ;
-- singular defined in Types
-- plural defined in Types
singular = Sg ;
plural = Pl ;
mkN = \apa, apan, apor, aporna, g, x -> let
{nom = table {