adjustments in Paradigms ; lang-specific modules for all except Rus, Ara

This commit is contained in:
aarne
2006-06-15 16:24:09 +00:00
parent 6bd400091c
commit 3d243e2596
84 changed files with 1219 additions and 6611 deletions

View File

@@ -1,8 +1,13 @@
GF=../../bin/gf
GF=gf
RTS=+RTS -M800M -K100M
GFCC=$(GF) -nocf -make
GFC=$(GFCC) -src
GFCP=$(GFC) -preproc=./mkPresent
.PHONY: show-path all test pretest langs present mathematical multimodal compiled treebank stat gfdoc clean
all: show-path langs multimodal present mathematical compiled
.PHONY: show-path all test alltenses pretest langs present mathematical multimodal compiled treebank stat gfdoc clean
all: show-path present alltenses langs multimodal mathematical compiled
show-path:
@echo GF_LIB_PATH=$(GF_LIB_PATH)
@@ -13,13 +18,36 @@ test:
pretest:
echo "gr -cat=Cl -number=11 -prob | tb" | $(GF) -probs=lang.gfprob -path=present:prelude -nocf ../present/Lang???.gfc
langs:
echo "s ;; pm | wf langs.gfcm" | $(GF) -nocf -src */Lang??*.gf english/LangEng.gf +RTS -M800M -K100M
alltenses:
# $(GFC) arabic/LangAra.gf
$(GFC) danish/Danish.gf
$(GFC) english/English.gf
$(GFC) finnish/Finnish.gf
$(GFC) french/French.gf
$(GFC) german/German.gf
$(GFC) italian/Italian.gf
$(GFC) norwegian/Norwegian.gf
$(GFC) russian/LangRus.gf
$(GFC) spanish/Spanish.gf
$(GFC) swedish/Swedish.gf
cp -p */*.gfc */*.gfr ../alltenses
langs:
echo "s ;; pm | wf langs.gfcm" | $(GFCC) -path=alltenses:prelude ../alltenses/Lang???.gfc $(RTS)
present:
chmod u+x mkPresent
$(GF) -make -src -preproc=./mkPresent */Lang??*.gf +RTS -M800M -K100M
# $(GFCP) arabic/LangAra.gf
$(GFCP) danish/Danish.gf
$(GFCP) english/English.gf
$(GFCP) finnish/Finnish.gf
$(GFCP) french/French.gf
$(GFCP) german/German.gf
$(GFCP) italian/Italian.gf
$(GFCP) norwegian/Norwegian.gf
$(GFCP) russian/LangRus.gf
$(GFCP) spanish/Spanish.gf
$(GFCP) swedish/Swedish.gf
mv */*.gfc */*.gfr ../present
mathematical:

View File

@@ -2,7 +2,7 @@
--1 Arabic Lexical Paradigms
--
-- Aarne Ranta 2003--2005
-- Ali El Dada 2005--2006
--
-- This is an API to the user of the resource grammar
-- for adding lexical items. It gives functions for forming

View File

@@ -0,0 +1,7 @@
--# -path=.:../scandinavian:../abstract:../common:prelude
concrete Danish of DanishAbs =
LangDan,
IrregDan - [fly_V],
ExtraDan
** {} ;

View File

@@ -0,0 +1,5 @@
abstract DanishAbs =
Lang,
IrregDanAbs - [fly_V],
ExtraDanAbs
** {} ;

View File

@@ -0,0 +1,3 @@
concrete ExtraDan of ExtraDanAbs = ExtraScandDan ** open CommonScand, ResDan in {
}

View File

@@ -0,0 +1,7 @@
-- Structures special for Danish. These are not implemented in other
-- Scandinavian languages.
abstract ExtraDanAbs = ExtraScandAbs ** {
}

View File

@@ -0,0 +1,2 @@
concrete ExtraScandDan of ExtraScandAbs = CatDan ** ExtraScand with
(ResScand = ResDan) ;

View File

@@ -10,18 +10,18 @@ flags startcat=Phr ; lexer=textlit ; unlexer=text ;
lin
airplane_N = mk2N "fly" "flyet" ;
answer_V2S = mkV2S (regV "svare") "til" ;
answer_V2S = mkV2S (regV "svare") (mkPrep "til") ;
apartment_N = mk2N "værelse" "værelsen" ;
apple_N = mk3N "æble" "æblet" "æbler" ;
art_N = mk2N "kunst" "kunsten" ;
ask_V2Q = mkV2Q spørge_V [] ;
ask_V2Q = mkV2Q spørge_V noPrep ;
baby_N = mk2N "baby" "babyen" ; ---- babyen
bad_A = regADeg "dårlig" ; ----
bank_N = mk2N "bank" "banken" ;
beautiful_A = mk3ADeg "smuk" "smukt" "smukke" ; ----
become_VA = mkVA blive_V ;
beer_N = mk2N "øl" "ølet" ;
beg_V2V = mkV2V bede_V [] "at" ;
beg_V2V = mkV2V bede_V noPrep (mkPrep "at") ;
big_A = irregADeg "stor" "større" "størst";
bike_N = mkN "cykel" "cykeln" "cykler" "cyklerne" ; ----
bird_N = mk2N "fugl" "fuglen" ;
@@ -35,7 +35,7 @@ lin
bread_N = mk2N "brød" "brødet" ;
break_V2 = dirV2 (mk2V "knuse" "knuste") ;
broad_A = regADeg "bred" ;
brother_N2 = mkN2 (mk3N "broder" "brodren" "brødre") "til" ; ----
brother_N2 = mkN2 (mk3N "broder" "brodren" "brødre") (mkPrep "til") ; ----
brown_A = regADeg "brun" ;
butter_N = mk2N "smør" "smøret" ;
buy_V2 = dirV2 (mk2V "købe" "købte") ; ----
@@ -62,17 +62,17 @@ lin
cow_N = mk2N "ku" "kuen" ; ----
die_V = vaereV dø_V ;
dirty_A = regADeg "smudsig" ; ----
distance_N3 = mkN3 (regGenN "afstand" utrum) "fra" "til" ;
distance_N3 = mkN3 (regGenN "afstand" utrum) (mkPrep "fra") (mkPrep "til") ;
doctor_N = mk2N "læge" "lægen" ;
dog_N = mk2N "hund" "hunden" ;
door_N = mk2N "dør" "døren" ;
drink_V2 = dirV2 drikke_V ;
easy_A2V = mkA2V (regA "nem") "for" ; ----
easy_A2V = mkA2V (regA "nem") (mkPrep "for") ; ----
eat_V2 = dirV2 (mk2V "spise" "spiste") ;
empty_A = mkADeg "tøm" "tømt" "tømme" "tømmere" "tømmest" ; ----
enemy_N = mk2N "fjende" "fjenden" ;
factory_N = mk2N "fabrik" "fabriken" ;
father_N2 = mkN2 ( (mk3N "far" "fadren" "fædre")) "til" ; ----
father_N2 = mkN2 ( (mk3N "far" "fadren" "fædre")) (mkPrep "til") ; ----
fear_VS = mkVS (regV "frygte") ;
find_V2 = dirV2 (irregV "finde" "fand" "fundet") ; ----
fish_N = mk2N "fisk" "fisken" ;
@@ -109,19 +109,19 @@ lin
learn_V2 = dirV2 (mk2V "lære" "lærte") ;
leather_N = mk2N "læder" "lædret" ;
leave_V2 = dirV2 forlade_V ;
like_V2 = mkV2 holde_V "af" ;
like_V2 = mkV2 holde_V (mkPrep "af") ;
listen_V2 = dirV2 (regV "lytte") ;
live_V = mk2V "leve" "levde" ;
long_A = irregADeg "lang" "længere" "længst" ; ----
lose_V2 = dirV2 (regV "tabe") ;
love_N = mk2N "kærlighed" "kærligheden" ;
love_V2 = dirV2 (regV "elske") ;
man_N = mk3N "mand" "manden" "mænd" ; ----
married_A2 = mkA2 (mk2A "gift" "gift") "med" ;
man_N = mkN "mand" "manden" "mænd" "mændene" ;
married_A2 = mkA2 (mk2A "gift" "gift") (mkPrep "med") ;
meat_N = mk2N "kød" "kødet" ;
milk_N = mk2N "mælk" "mælken" ;
moon_N = mk2N "måne" "månen" ;
mother_N2 = mkN2 (mkN "moder" "moderen" "mødre" "mødrene") "til" ; ----
mother_N2 = mkN2 (mkN "moder" "moderen" "mødre" "mødrene") (mkPrep "til") ; ----
mountain_N = mk2N "bjerg" "bjerget" ;
music_N = mk2N "musik" "musiken" ;
narrow_A = regADeg "smal" ;
@@ -130,9 +130,9 @@ lin
oil_N = mk2N "olie" "olien" ;
old_A = mkADeg "gammel" "gammelt" "gamle" "ældre" "ældst" ; ----
open_V2 = dirV2 (regV "åbne") ;
paint_V2A = mkV2A (regV "male") [] ;
paint_V2A = mkV2A (regV "male") noPrep ;
paper_N = mk2N "papir" "papiret" ;
paris_PN = regPN "Paris" neutrum ;
paris_PN = mkPN "Paris" neutrum ;
peace_N = mk2N "fred" "freden" ;
pen_N = mk2N "pen" "penen" ;
planet_N = mk2N "planet" "planeten" ;
@@ -158,9 +158,9 @@ lin
science_N = mk2N "videnskab" "videnskaben" ;
sea_N = mk2N "hav" "havet" ;
see_V2 = dirV2 se_V ;
seek_V2 = mkV2 (mk2V "søge" "søgte") "efter" ;
sell_V3 = dirV3 sælge_V "til" ;
send_V3 = dirV3 (mk2V "sende" "sendte") "til" ;
seek_V2 = mkV2 (mk2V "søge" "søgte") (mkPrep "efter") ;
sell_V3 = dirV3 sælge_V (mkPrep "til") ;
send_V3 = dirV3 (mk2V "sende" "sendte") (mkPrep "til") ;
sheep_N = mk2N "får" "fåret" ;
ship_N = mk2N "skib" "skibet" ;
shirt_N = mk2N "skjorte" "skjorten" ;
@@ -184,7 +184,7 @@ lin
switch8off_V2 = dirV2 (partV (regV "lukke") "for") ;
switch8on_V2 = dirV2 (partV (regV "lukke") "op") ;
table_N = mk2N "bord" "bordet" ;
talk_V3 = mkV3 (regV "tale") "til" "om" ;
talk_V3 = mkV3 (regV "tale") (mkPrep "til") (mkPrep "om") ;
teacher_N = mkN "lærer" "læreren" "lærere" "lærerne" ;
teach_V2 = dirV2 (mk2V "undervise" "underviste") ;
television_N = mk2N "fjernsyn" "fjernsynet" ;
@@ -198,11 +198,11 @@ lin
understand_V2 = dirV2 (irregV "forstå" "forstod" "forstått") ;
university_N = mk2N "universitet" "universitetet" ;
village_N = mk2N "landsby" "landsbyen" ;
wait_V2 = mkV2 (regV "vente") "på" ;
wait_V2 = mkV2 (regV "vente") (mkPrep "på") ;
walk_V = vaereV gå_V ;
warm_A = regADeg "varm" ;
war_N = mk2N "krig" "krigen" ;
watch_V2 = mkV2 se_V "på" ;
watch_V2 = mkV2 se_V (mkPrep "på") ;
water_N = mk2N "vand" "vandet" ;
white_A = regADeg "hvid" ;
window_N = mkN "vindue" "vinduet" "vinduer" "vinduene" ; ---- er?
@@ -219,7 +219,7 @@ lin
now_Adv = mkAdv "nu" ;
already_Adv = mkAdv "allerede" ;
song_N = mk2N "sang" "sangen" ;
add_V3 = mkV3 (regV "tilføje") [] "til" ; ----
add_V3 = mkV3 (regV "tilføje") noPrep (mkPrep "til") ; ----
number_N = mk2N "nummer" "numret" ; ----
put_V2 = dirV2 sætte_V ;
stop_V = vaereV (regV "standse") ;

View File

@@ -59,7 +59,8 @@ oper
-- Prepositions used in many-argument functions are just strings.
Preposition : Type = Str ;
mkPrep : Str -> Prep ;
noPrep : Prep ; -- empty string
--2 Nouns
@@ -100,19 +101,20 @@ oper
--
-- Relational nouns ("daughter of x") need a preposition.
mkN2 : N -> Preposition -> N2 ;
mkN2 : N -> Prep -> N2 ;
-- The most common preposition is "av", and the following is a
-- shortcut for regular, $nonhuman$ relational nouns with "av".
regN2 : Str -> Gender -> N2 ;
-- Use the function $mkPreposition$ or see the section on prepositions below to
-- Use the function $mkPrep$ or see the section on prepositions below to
-- form other prepositions.
--
-- 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 -> Preposition -> Preposition -> N3 ;
mkN3 : N -> Prep -> Prep -> N3 ;
--3 Relational common noun phrases
@@ -127,7 +129,8 @@ oper
--
-- Proper names, with a regular genitive, are formed as follows
regPN : Str -> Gender -> PN ; -- John, John's
mkPN : Str -> Gender -> PN ; -- Paris neutrum
regPN : Str -> PN ; -- utrum gender
-- Sometimes you can reuse a common noun as a proper name, e.g. "Bank".
@@ -156,7 +159,7 @@ oper
--
-- Two-place adjectives need a preposition for their second argument.
mkA2 : A -> Preposition -> A2 ;
mkA2 : A -> Prep -> A2 ;
-- Comparison adjectives may need as many as five forms.
@@ -194,11 +197,6 @@ oper
mkAdA : Str -> AdA ;
--2 Prepositions
--
-- A preposition is just a string.
mkPreposition : Str -> Preposition ;
--2 Verbs
--
@@ -249,7 +247,7 @@ oper
-- Two-place verbs need a preposition, except the special case with direct object.
-- (transitive verbs). Notice that a particle comes from the $V$.
mkV2 : V -> Preposition -> V2 ;
mkV2 : V -> Prep -> V2 ;
dirV2 : V -> V2 ;
@@ -258,8 +256,8 @@ oper
-- Three-place (ditransitive) verbs need two prepositions, of which
-- the first one or both can be absent.
mkV3 : V -> Str -> Str -> V3 ; -- speak, with, about
dirV3 : V -> Str -> V3 ; -- give,_,to
mkV3 : V -> Prep -> Prep -> V3 ; -- speak, with, about
dirV3 : V -> Prep -> V3 ; -- give,_,to
dirdirV3 : V -> V3 ; -- give,_,_
--3 Other complement patterns
@@ -269,18 +267,18 @@ oper
mkV0 : V -> V0 ;
mkVS : V -> VS ;
mkV2S : V -> Str -> V2S ;
mkV2S : V -> Prep -> V2S ;
mkVV : V -> VV ;
mkV2V : V -> Str -> Str -> V2V ;
mkV2V : V -> Prep -> Prep -> V2V ;
mkVA : V -> VA ;
mkV2A : V -> Str -> V2A ;
mkV2A : V -> Prep -> V2A ;
mkVQ : V -> VQ ;
mkV2Q : V -> Str -> V2Q ;
mkV2Q : V -> Prep -> V2Q ;
mkAS : A -> AS ;
mkA2S : A -> Str -> A2S ;
mkA2S : A -> Prep -> A2S ;
mkAV : A -> AV ;
mkA2V : A -> Str -> A2V ;
mkA2V : A -> Prep -> A2V ;
-- Notice: categories $V2S, V2V, V2A, V2Q$ are in v 1.0 treated
-- just as synonyms of $V2$, and the second argument is given
@@ -290,12 +288,13 @@ oper
V0, V2S, V2V, V2A, V2Q : Type ;
AS, A2S, AV, A2V : Type ;
--.
--2 Definitions of the paradigms
--
-- The definitions should not bother the user of the API. So they are
-- hidden from the document.
--.
Gender = MorphoDan.Gender ;
Number = MorphoDan.Number ;
@@ -307,6 +306,14 @@ oper
nominative = Nom ;
genitive = Gen ;
Preposition : Type = Str ; -- obsolete
mkPreposition : Str -> Prep ; -- obsolete
mkPreposition = mkPrep ;
mkPrep p = {s = p ; lock_Prep = <>} ;
noPrep = mkPrep [] ;
mkN x y z u = mkSubstantive x y z u ** {g = extNGen y ; lock_N = <>} ;
regN x = regGenN x Utr ;
@@ -330,11 +337,12 @@ oper
mk3N x y z = let u = ifTok Str x z "ene" "ne" in mkN x y z (z + u) ;
mkN2 = \n,p -> n ** {lock_N2 = <> ; c2 = p} ;
mkN2 = \n,p -> n ** {lock_N2 = <> ; c2 = p.s} ;
regN2 n g = mkN2 (regGenN n g) (mkPreposition "av") ;
mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p ; c3 = q} ;
mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p.s ; c3 = q.s} ;
regPN n g = {s = \\c => mkCase c n ; g = g} ** {lock_PN = <>} ;
mkPN n g = {s = \\c => mkCase c n ; g = g} ** {lock_PN = <>} ;
regPN n = mkPN n utrum ;
nounPN n = {s = n.s ! singular ! Indef ; g = n.g ; lock_PN = <>} ;
mkNP x y n g =
{s = table {NPPoss _ => x ; _ => y} ; a = agrP3 g n ;
@@ -344,7 +352,7 @@ oper
mk2A a b = mkA a b (a + "e") ;
regA a = (regADeg a) ** {lock_A = <>} ;
mkA2 a p = a ** {c2 = p ; lock_A2 = <>} ;
mkA2 a p = a ** {c2 = p.s ; lock_A2 = <>} ;
mkADeg a b c d e = mkAdject a b c d e ** {isComp = False ; lock_A = <>} ;
@@ -368,8 +376,6 @@ oper
mkAdV x = ss x ** {lock_AdV = <>} ;
mkAdA x = ss x ** {lock_AdA = <>} ;
mkPreposition p = p ;
mkV a b c d e f = mkVerb6 a b c d e f **
{part = [] ; vtype = VAct ; lock_V = <> ; isVaere = False} ;
@@ -418,12 +424,12 @@ oper
s = v.s ; part = v.part ; vtype = VRefl ; isVaere = False ; lock_V = <>
} ;
mkV2 v p = v ** {c2 = p ; lock_V2 = <>} ;
dirV2 v = mkV2 v [] ;
mkV2 v p = v ** {c2 = p.s ; lock_V2 = <>} ;
dirV2 v = mkV2 v (mkPrep []) ;
mkV3 v p q = v ** {c2 = p ; c3 = q ; lock_V3 = <>} ;
dirV3 v p = mkV3 v [] p ;
dirdirV3 v = dirV3 v [] ;
mkV3 v p q = v ** {c2 = p.s ; c3 = q.s ; lock_V3 = <>} ;
dirV3 v p = mkV3 v noPrep p ;
dirdirV3 v = dirV3 v noPrep ;
mkV0 v = v ** {lock_V0 = <>} ;
mkVS v = v ** {lock_VS = <>} ;

View File

@@ -2,21 +2,16 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Adjectives and adjectival phrases</TITLE>
<TITLE> Adjective: Adjectives and Adjectival Phrases</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Adjectives and adjectival phrases</H1>
<P ALIGN="center"><CENTER><H1> Adjective: Adjectives and Adjectival Phrases</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:38 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Adjectives and adjectival phrases</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,8 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Adjectives and adjectival phrases</H1>
<PRE>
abstract Adjective = Cat ** {

View File

@@ -2,21 +2,16 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Adverbs and adverbial phrases</TITLE>
<TITLE> Adverb: Adverbs and Adverbial Phrases</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Adverbs and adverbial phrases</H1>
<P ALIGN="center"><CENTER><H1> Adverb: Adverbs and Adverbial Phrases</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:38 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Adverbs and adverbial phrases</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,8 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Adverbs and adverbial phrases</H1>
<PRE>
abstract Adverb = Cat ** {

View File

@@ -2,31 +2,27 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> The category system</TITLE>
<TITLE> Cat: the Category System</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> The category system</H1>
<P ALIGN="center"><CENTER><H1> Cat: the Category System</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:38 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">The category system</A>
<UL>
<LI><A HREF="#toc2">Sentences and clauses</A>
<LI><A HREF="#toc3">Questions and interrogatives</A>
<LI><A HREF="#toc4">Relative clauses and pronouns</A>
<LI><A HREF="#toc5">Verb phrases</A>
<LI><A HREF="#toc6">Adjectival phrases</A>
<LI><A HREF="#toc7">Nouns and noun phrases</A>
<LI><A HREF="#toc8">Numerals</A>
<LI><A HREF="#toc9">Structural words</A>
<LI><A HREF="#toc10">Words of open classes</A>
<LI><A HREF="#toc1">Sentences and clauses</A>
<LI><A HREF="#toc2">Questions and interrogatives</A>
<LI><A HREF="#toc3">Relative clauses and pronouns</A>
<LI><A HREF="#toc4">Verb phrases</A>
<LI><A HREF="#toc5">Adjectival phrases</A>
<LI><A HREF="#toc6">Nouns and noun phrases</A>
<LI><A HREF="#toc7">Numerals</A>
<LI><A HREF="#toc8">Structural words</A>
<LI><A HREF="#toc9">Words of open classes</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
@@ -36,8 +32,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>The category system</H1>
<P>
The category system is central to the library in the sense
that the other modules (<CODE>Adjective</CODE>, <CODE>Adverb</CODE>, <CODE>Noun</CODE>, <CODE>Verb</CODE> etc)
@@ -64,7 +58,7 @@ are defined on <CODE>Conjunction</CODE> and only used locally there.
cat
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Sentences and clauses</H2>
<P>
Constructed in <A HREF="Sentence.html">Sentence</A>, and also in
@@ -79,7 +73,7 @@ Constructed in <A HREF="Sentence.html">Sentence</A>, and also in
Imp ; -- imperative e.g. "look at this"
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Questions and interrogatives</H2>
<P>
Constructed in <A HREF="Question.html">Question</A>.
@@ -91,7 +85,7 @@ Constructed in <A HREF="Question.html">Question</A>.
IDet ; -- interrogative determiner e.g. "which"
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H2>Relative clauses and pronouns</H2>
<P>
Constructed in <A HREF="Relative.html">Relative</A>.
@@ -101,7 +95,7 @@ Constructed in <A HREF="Relative.html">Relative</A>.
RP ; -- relative pronoun e.g. "in which"
</PRE>
<P></P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H2>Verb phrases</H2>
<P>
Constructed in <A HREF="Verb.html">Verb</A>.
@@ -111,7 +105,7 @@ Constructed in <A HREF="Verb.html">Verb</A>.
Comp ; -- complement of copula, such as AP e.g. "very warm"
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H2>Adjectival phrases</H2>
<P>
Constructed in <A HREF="Adjective.html">Adjective</A>.
@@ -120,7 +114,7 @@ Constructed in <A HREF="Adjective.html">Adjective</A>.
AP ; -- adjectival phrase e.g. "very warm"
</PRE>
<P></P>
<A NAME="toc7"></A>
<A NAME="toc6"></A>
<H2>Nouns and noun phrases</H2>
<P>
Constructed in <A HREF="Noun.html">Noun</A>.
@@ -147,7 +141,7 @@ as defined in <A HREF="Noun.html">Noun</A>.
Ord ; -- ordinal number (used in Det) e.g. "seventh"
</PRE>
<P></P>
<A NAME="toc8"></A>
<A NAME="toc7"></A>
<H2>Numerals</H2>
<P>
Constructed in <A HREF="Numeral.html">Numeral</A>.
@@ -156,7 +150,7 @@ Constructed in <A HREF="Numeral.html">Numeral</A>.
Numeral;-- cardinal or ordinal, e.g. "five/fifth"
</PRE>
<P></P>
<A NAME="toc9"></A>
<A NAME="toc8"></A>
<H2>Structural words</H2>
<P>
Constructed in <A HREF="Structural.html">Structural</A>.
@@ -168,7 +162,7 @@ Constructed in <A HREF="Structural.html">Structural</A>.
Prep ; -- preposition, or just case e.g. "in"
</PRE>
<P></P>
<A NAME="toc10"></A>
<A NAME="toc9"></A>
<H2>Words of open classes</H2>
<P>
These are constructed in <A HREF="Lexicon.html">Lexicon</A> and in

View File

@@ -2,25 +2,21 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Infrastructure with common implementations.</TITLE>
<TITLE> Common: Structures with Common Implementations.</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Infrastructure with common implementations.</H1>
<P ALIGN="center"><CENTER><H1> Common: Structures with Common Implementations.</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:38 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Infrastructure with common implementations.</A>
<UL>
<LI><A HREF="#toc2">Top-level units</A>
<LI><A HREF="#toc3">Adverbs</A>
<LI><A HREF="#toc4">Tense, polarity, and anteriority</A>
<LI><A HREF="#toc1">Top-level units</A>
<LI><A HREF="#toc2">Adverbs</A>
<LI><A HREF="#toc3">Tense, polarity, and anteriority</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
@@ -30,8 +26,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Infrastructure with common implementations.</H1>
<P>
This module defines the categories that uniformly have the linearization
<CODE>{s : Str}</CODE> in all languages.
@@ -48,7 +42,7 @@ Romance languages.
cat
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Top-level units</H2>
<P>
Constructed in <A HREF="Text.html">Text</A>: <CODE>Text</CODE>.
@@ -74,7 +68,7 @@ Constructed in <A HREF="Sentence.html">Sentence</A>:
SC ; -- embedded sentence or question e.g. "that it rains"
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Adverbs</H2>
<P>
Constructed in <A HREF="Adverb.html">Adverb</A>.
@@ -89,7 +83,7 @@ Many adverbs are constructed in <A HREF="Structural.html">Structural</A>.
CAdv ; -- comparative adverb e.g. "more"
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H2>Tense, polarity, and anteriority</H2>
<PRE>
Tense ; -- tense: present, past, future, conditional

View File

@@ -2,25 +2,21 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Coordination</TITLE>
<TITLE> Conjunction: Coordination</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Coordination</H1>
<P ALIGN="center"><CENTER><H1> Conjunction: Coordination</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:39 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Coordination</A>
<UL>
<LI><A HREF="#toc2">Rules</A>
<LI><A HREF="#toc3">Categories</A>
<LI><A HREF="#toc4">List constructors</A>
<LI><A HREF="#toc1">Rules</A>
<LI><A HREF="#toc2">Categories</A>
<LI><A HREF="#toc3">List constructors</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
@@ -30,8 +26,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Coordination</H1>
<P>
Coordination is defined for many different categories; here is
a sample. The rules apply to <B>lists</B> of two or more elements,
@@ -51,7 +45,7 @@ compatibility with API 0.9 is needed, use
abstract Conjunction = Cat ** {
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Rules</H2>
<PRE>
fun
@@ -66,7 +60,7 @@ compatibility with API 0.9 is needed, use
DConjAdv : DConj -&gt; [Adv] -&gt; Adv; -- "both badly and slowly"
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Categories</H2>
<P>
These categories are only used in this module.
@@ -79,7 +73,7 @@ These categories are only used in this module.
[AP]{2} ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H2>List constructors</H2>
<P>
The list constructors are derived from the list notation and therefore

View File

@@ -2,21 +2,16 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> The Main Module of the Resource Grammar</TITLE>
<TITLE> Grammar: the Main Module of the Resource Grammar</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> The Main Module of the Resource Grammar</H1>
<P ALIGN="center"><CENTER><H1> Grammar: the Main Module of the Resource Grammar</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:39 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">The Main Module of the Resource Grammar</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,8 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>The Main Module of the Resource Grammar</H1>
<P>
This grammar a collection of the different grammar modules,
To test the resource, import <A HREF="Lang.html">Lang</A>, which also contains

View File

@@ -2,21 +2,16 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Idiomatic expressions</TITLE>
<TITLE> Idiom: Idiomatic Expressions</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Idiomatic expressions</H1>
<P ALIGN="center"><CENTER><H1> Idiom: Idiomatic Expressions</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:39 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Idiomatic expressions</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,8 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Idiomatic expressions</H1>
<PRE>
abstract Idiom = Cat ** {
</PRE>

View File

@@ -2,21 +2,16 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> The Main Module of the Resource Grammar</TITLE>
<TITLE> Lang: a Test Module for the Resource Grammar</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> The Main Module of the Resource Grammar</H1>
<P ALIGN="center"><CENTER><H1> Lang: a Test Module for the Resource Grammar</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:40 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">The Main Module of the Resource Grammar</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,12 +20,10 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>The Main Module of the Resource Grammar</H1>
<P>
This grammar is just a collection of the different modules,
and the one that can be imported when one wants to test the
grammar. A module without a lexicon is <A HREF="Grammar.html">Grammar</A>,
This grammar is for testing the resource as included in the
language-independent API, consisting of a grammar and a lexicon.
The grammar without a lexicon is <A HREF="Grammar.html">Grammar</A>,
which may be more suitable to open in applications.
</P>
<PRE>

View File

@@ -6,17 +6,12 @@
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> The Mathematics API to the Resource Grammar</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:44 2006
<I>Last update: 2006-02-28 09:26:58 CET</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">The Mathematics API to the Resource Grammar</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,8 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>The Mathematics API to the Resource Grammar</H1>
<P>
This grammar is a collection of the different modules.
It differs from <CODE>Lang</CODE> in two main ways:

View File

@@ -6,17 +6,12 @@
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Multimodal additions to the resource grammar library</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:44 2006
<I>Last update: 2006-05-24 15:08:56 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Multimodal additions to the resource grammar library</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,8 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Multimodal additions to the resource grammar library</H1>
<PRE>
abstract Multi = Lang ** {

View File

@@ -2,26 +2,22 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> The construction of nouns, noun phrases, and determiners</TITLE>
<TITLE> Noun: Nouns, noun phrases, and determiners</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> The construction of nouns, noun phrases, and determiners</H1>
<P ALIGN="center"><CENTER><H1> Noun: Nouns, noun phrases, and determiners</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:40 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">The construction of nouns, noun phrases, and determiners</A>
<UL>
<LI><A HREF="#toc2">Noun phrases</A>
<LI><A HREF="#toc3">Determiners</A>
<LI><A HREF="#toc4">Common nouns</A>
<LI><A HREF="#toc5">Apposition</A>
<LI><A HREF="#toc1">Noun phrases</A>
<LI><A HREF="#toc2">Determiners</A>
<LI><A HREF="#toc3">Common nouns</A>
<LI><A HREF="#toc4">Apposition</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
@@ -31,13 +27,11 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>The construction of nouns, noun phrases, and determiners</H1>
<PRE>
abstract Noun = Cat ** {
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Noun phrases</H2>
<P>
The three main types of noun phrases are
@@ -72,7 +66,7 @@ verb or by an adverb.
AdvNP : NP -&gt; Adv -&gt; NP ; -- Paris at midnight
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Determiners</H2>
<P>
The determiner has a fine-grained structure, in which a 'nucleus'
@@ -166,7 +160,7 @@ in semantically odd expressions.
<P>
Other determiners are defined in <A HREF="Structural.html">Structural</A>.
</P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H2>Common nouns</H2>
<P>
Simple nouns can be used as nouns outright.
@@ -212,7 +206,7 @@ to decide. Sentential complements are defined in <A HREF="Verb.html">Verb</A>.
SentCN : CN -&gt; SC -&gt; CN ; -- fact that John smokes, question if he does
</PRE>
<P></P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H2>Apposition</H2>
<P>
This is certainly overgenerating.

View File

@@ -6,17 +6,12 @@
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Numerals</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:40 2006
<I>Last update: 2006-01-25 12:10:58 CET</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Numerals</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,8 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Numerals</H1>
<P>
This grammar defines numerals from 1 to 999999.
The implementations are adapted from the

View File

@@ -2,64 +2,50 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Danish Lexical Paradigms</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Danish Lexical Paradigms</H1>
<FONT SIZE="4">
<I>Last update: 2006-06-15 14:44:29 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Danish Lexical Paradigms</A>
<UL>
<LI><A HREF="#toc2">Parameters</A>
<LI><A HREF="#toc3">Nouns</A>
<LI><A HREF="#toc1">Parameters</A>
<LI><A HREF="#toc2">Nouns</A>
<UL>
<LI><A HREF="#toc4">Compound nouns</A>
<LI><A HREF="#toc5">Relational nouns</A>
<LI><A HREF="#toc6">Relational common noun phrases</A>
<LI><A HREF="#toc7">Proper names and noun phrases</A>
<LI><A HREF="#toc3">Compound nouns</A>
<LI><A HREF="#toc4">Relational nouns</A>
<LI><A HREF="#toc5">Relational common noun phrases</A>
<LI><A HREF="#toc6">Proper names and noun phrases</A>
</UL>
<LI><A HREF="#toc8">Adjectives</A>
<LI><A HREF="#toc7">Adjectives</A>
<UL>
<LI><A HREF="#toc9">Two-place adjectives</A>
<LI><A HREF="#toc8">Two-place adjectives</A>
</UL>
<LI><A HREF="#toc10">Adverbs</A>
<LI><A HREF="#toc11">Prepositions</A>
<LI><A HREF="#toc12">Verbs</A>
<LI><A HREF="#toc9">Adverbs</A>
<LI><A HREF="#toc10">Verbs</A>
<UL>
<LI><A HREF="#toc13">Verbs with //være// as auxiliary</A>
<LI><A HREF="#toc14">Verbs with a particle</A>
<LI><A HREF="#toc15">Deponent verbs</A>
<LI><A HREF="#toc16">Two-place verbs</A>
<LI><A HREF="#toc17">Three-place verbs</A>
<LI><A HREF="#toc18">Other complement patterns</A>
<LI><A HREF="#toc11">Verbs with //være// as auxiliary</A>
<LI><A HREF="#toc12">Verbs with a particle</A>
<LI><A HREF="#toc13">Deponent verbs</A>
<LI><A HREF="#toc14">Two-place verbs</A>
<LI><A HREF="#toc15">Three-place verbs</A>
<LI><A HREF="#toc16">Other complement patterns</A>
</UL>
<LI><A HREF="#toc19">Definitions of the paradigms</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<P>
Author:
Last update: Tue Jun 13 11:42:42 2006
</P>
<P>
Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
==
</P>
<P>
# -path=.:../scandinavian:../common:../abstract:../../prelude
</P>
<A NAME="toc1"></A>
<H1>Danish Lexical Paradigms</H1>
<P>
Aarne Ranta 2003
</P>
<P>
@@ -97,7 +83,7 @@ words.
CatDan in {
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Parameters</H2>
<P>
To abstract over gender names, we define the following identifiers.
@@ -134,10 +120,11 @@ To abstract over case names, we define the following.
Prepositions used in many-argument functions are just strings.
</P>
<PRE>
Preposition : Type = Str ;
mkPrep : Str -&gt; Prep ;
noPrep : Prep ; -- empty string
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Nouns</H2>
<P>
Worst case: give all four forms. The gender is computed from the
@@ -180,19 +167,19 @@ indefinite
mk3N : (bil,bilen,biler : Str) -&gt; N ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H3>Compound nouns</H3>
<P>
All the functions above work quite as well to form compound nouns,
such as <I>fotboll</I>.
</P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H3>Relational nouns</H3>
<P>
Relational nouns (<I>daughter of x</I>) need a preposition.
</P>
<PRE>
mkN2 : N -&gt; Preposition -&gt; N2 ;
mkN2 : N -&gt; Prep -&gt; N2 ;
</PRE>
<P></P>
<P>
@@ -204,17 +191,18 @@ shortcut for regular, <CODE>nonhuman</CODE> relational nouns with <I>av</I>.
</PRE>
<P></P>
<P>
Use the function <CODE>mkPreposition</CODE> or see the section on prepositions below to
Use the function <CODE>mkPrep</CODE> or see the section on prepositions below to
form other prepositions.
</P>
<P>
Three-place relational nouns (<I>the connection from x to y</I>) need two prepositions.
Three-place relational nouns (<I>the connection from x to y</I>)
need two prepositions.
</P>
<PRE>
mkN3 : N -&gt; Preposition -&gt; Preposition -&gt; N3 ;
mkN3 : N -&gt; Prep -&gt; Prep -&gt; N3 ;
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H3>Relational common noun phrases</H3>
<P>
In some cases, you may want to make a complex <CODE>CN</CODE> into a
@@ -222,13 +210,14 @@ relational noun (e.g. <I>the old town hall of</I>). However, <CODE>N2</CODE> and
<CODE>N3</CODE> are purely lexical categories. But you can use the <CODE>AdvCN</CODE>
and <CODE>PrepNP</CODE> constructions to build phrases like this.
</P>
<A NAME="toc7"></A>
<A NAME="toc6"></A>
<H3>Proper names and noun phrases</H3>
<P>
Proper names, with a regular genitive, are formed as follows
</P>
<PRE>
regPN : Str -&gt; Gender -&gt; PN ; -- John, John's
mkPN : Str -&gt; Gender -&gt; PN ; -- Paris neutrum
regPN : Str -&gt; PN ; -- utrum gender
</PRE>
<P></P>
<P>
@@ -246,7 +235,7 @@ genitive, you can use the worst-case function.
mkNP : Str -&gt; Str -&gt; Number -&gt; Gender -&gt; NP ;
</PRE>
<P></P>
<A NAME="toc8"></A>
<A NAME="toc7"></A>
<H2>Adjectives</H2>
<P>
Non-comparison one-place adjectives need three forms:
@@ -269,13 +258,13 @@ In most cases, two forms are enough.
mk2A : (stor,stort : Str) -&gt; A ;
</PRE>
<P></P>
<A NAME="toc9"></A>
<A NAME="toc8"></A>
<H3>Two-place adjectives</H3>
<P>
Two-place adjectives need a preposition for their second argument.
</P>
<PRE>
mkA2 : A -&gt; Preposition -&gt; A2 ;
mkA2 : A -&gt; Prep -&gt; A2 ;
</PRE>
<P></P>
<P>
@@ -316,7 +305,7 @@ long adjective, the following pattern is used:
compoundA : A -&gt; A ; -- -/mer/mest norsk
</PRE>
<P></P>
<A NAME="toc10"></A>
<A NAME="toc9"></A>
<H2>Adverbs</H2>
<P>
Adverbs are not inflected. Most lexical ones have position
@@ -334,16 +323,7 @@ Adverbs modifying adjectives and sentences can also be formed.
mkAdA : Str -&gt; AdA ;
</PRE>
<P></P>
<A NAME="toc11"></A>
<H2>Prepositions</H2>
<P>
A preposition is just a string.
</P>
<PRE>
mkPreposition : Str -&gt; Preposition ;
</PRE>
<P></P>
<A NAME="toc12"></A>
<A NAME="toc10"></A>
<H2>Verbs</H2>
<P>
The worst case needs six forms.
@@ -374,7 +354,7 @@ In practice, it is enough to give three forms, as in school books.
irregV : (drikke, drakk, drukket : Str) -&gt; V ;
</PRE>
<P></P>
<A NAME="toc13"></A>
<A NAME="toc11"></A>
<H3>Verbs with //være// as auxiliary</H3>
<P>
By default, the auxiliary is <I>have</I>. This function changes it to <I>være</I>.
@@ -383,7 +363,7 @@ By default, the auxiliary is <I>have</I>. This function changes it to <I>v
vaereV : V -&gt; V ;
</PRE>
<P></P>
<A NAME="toc14"></A>
<A NAME="toc12"></A>
<H3>Verbs with a particle</H3>
<P>
The particle, such as in <I>switch on</I>, is given as a string.
@@ -392,7 +372,7 @@ The particle, such as in <I>switch on</I>, is given as a string.
partV : V -&gt; Str -&gt; V ;
</PRE>
<P></P>
<A NAME="toc15"></A>
<A NAME="toc13"></A>
<H3>Deponent verbs</H3>
<P>
Some words are used in passive forms only, e.g. <I>hoppas</I>, some as
@@ -403,31 +383,31 @@ reflexive e.g. <I>
reflV : V -&gt; V ;
</PRE>
<P></P>
<A NAME="toc16"></A>
<A NAME="toc14"></A>
<H3>Two-place verbs</H3>
<P>
Two-place verbs need a preposition, except the special case with direct object.
(transitive verbs). Notice that a particle comes from the <CODE>V</CODE>.
</P>
<PRE>
mkV2 : V -&gt; Preposition -&gt; V2 ;
mkV2 : V -&gt; Prep -&gt; V2 ;
dirV2 : V -&gt; V2 ;
</PRE>
<P></P>
<A NAME="toc17"></A>
<A NAME="toc15"></A>
<H3>Three-place verbs</H3>
<P>
Three-place (ditransitive) verbs need two prepositions, of which
the first one or both can be absent.
</P>
<PRE>
mkV3 : V -&gt; Str -&gt; Str -&gt; V3 ; -- speak, with, about
dirV3 : V -&gt; Str -&gt; V3 ; -- give,_,to
mkV3 : V -&gt; Prep -&gt; Prep -&gt; V3 ; -- speak, with, about
dirV3 : V -&gt; Prep -&gt; V3 ; -- give,_,to
dirdirV3 : V -&gt; V3 ; -- give,_,_
</PRE>
<P></P>
<A NAME="toc18"></A>
<A NAME="toc16"></A>
<H3>Other complement patterns</H3>
<P>
Verbs and adjectives can take complements such as sentences,
@@ -436,18 +416,18 @@ questions, verb phrases, and adjectives.
<PRE>
mkV0 : V -&gt; V0 ;
mkVS : V -&gt; VS ;
mkV2S : V -&gt; Str -&gt; V2S ;
mkV2S : V -&gt; Prep -&gt; V2S ;
mkVV : V -&gt; VV ;
mkV2V : V -&gt; Str -&gt; Str -&gt; V2V ;
mkV2V : V -&gt; Prep -&gt; Prep -&gt; V2V ;
mkVA : V -&gt; VA ;
mkV2A : V -&gt; Str -&gt; V2A ;
mkV2A : V -&gt; Prep -&gt; V2A ;
mkVQ : V -&gt; VQ ;
mkV2Q : V -&gt; Str -&gt; V2Q ;
mkV2Q : V -&gt; Prep -&gt; V2Q ;
mkAS : A -&gt; AS ;
mkA2S : A -&gt; Str -&gt; A2S ;
mkA2S : A -&gt; Prep -&gt; A2S ;
mkAV : A -&gt; AV ;
mkA2V : A -&gt; Str -&gt; A2V ;
mkA2V : A -&gt; Prep -&gt; A2V ;
</PRE>
<P></P>
<P>
@@ -461,12 +441,6 @@ as an adverb. Likewise <CODE>AS, A2S, AV, A2V</CODE> are just <CODE>A</CODE>.
AS, A2S, AV, A2V : Type ;
</PRE>
<P></P>
<A NAME="toc19"></A>
<H2>Definitions of the paradigms</H2>
<P>
The definitions should not bother the user of the API. So they are
hidden from the document.
</P>
<!-- html code generated by txt2tags 2.3 (http://txt2tags.sf.net) -->
<!-- cmdline: txt2tags -thtml -\-toc danish/ParadigmsDan.txt -->

View File

@@ -2,63 +2,50 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> English Lexical Paradigms</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> English Lexical Paradigms</H1>
<FONT SIZE="4">
<I>Last update: 2006-06-15 16:21:43 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">English Lexical Paradigms</A>
<UL>
<LI><A HREF="#toc2">Parameters</A>
<LI><A HREF="#toc3">Nouns</A>
<LI><A HREF="#toc1">Parameters</A>
<LI><A HREF="#toc2">Nouns</A>
<UL>
<LI><A HREF="#toc4">Compound nouns</A>
<LI><A HREF="#toc5">Relational nouns</A>
<LI><A HREF="#toc6">Relational common noun phrases</A>
<LI><A HREF="#toc7">Proper names and noun phrases</A>
<LI><A HREF="#toc3">Compound nouns</A>
<LI><A HREF="#toc4">Relational nouns</A>
<LI><A HREF="#toc5">Relational common noun phrases</A>
<LI><A HREF="#toc6">Proper names and noun phrases</A>
</UL>
<LI><A HREF="#toc8">Adjectives</A>
<LI><A HREF="#toc7">Adjectives</A>
<UL>
<LI><A HREF="#toc9">Two-place adjectives</A>
<LI><A HREF="#toc8">Two-place adjectives</A>
</UL>
<LI><A HREF="#toc10">Adverbs</A>
<LI><A HREF="#toc11">Prepositions</A>
<LI><A HREF="#toc12">Verbs</A>
<LI><A HREF="#toc9">Adverbs</A>
<LI><A HREF="#toc10">Prepositions</A>
<LI><A HREF="#toc11">Verbs</A>
<UL>
<LI><A HREF="#toc13">Verbs with a particle.</A>
<LI><A HREF="#toc14">Reflexive verbs</A>
<LI><A HREF="#toc15">Two-place verbs</A>
<LI><A HREF="#toc16">Three-place verbs</A>
<LI><A HREF="#toc17">Other complement patterns</A>
<LI><A HREF="#toc12">Verbs with a particle.</A>
<LI><A HREF="#toc13">Reflexive verbs</A>
<LI><A HREF="#toc14">Two-place verbs</A>
<LI><A HREF="#toc15">Three-place verbs</A>
<LI><A HREF="#toc16">Other complement patterns</A>
</UL>
<LI><A HREF="#toc18">Definitions of paradigms</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<P>
Author:
Last update: Tue Jun 13 11:42:42 2006
</P>
<P>
Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
==
</P>
<P>
# -path=.:../abstract:../../prelude:../common
</P>
<A NAME="toc1"></A>
<H1>English Lexical Paradigms</H1>
<P>
Aarne Ranta 2003--2005
</P>
<P>
@@ -97,7 +84,7 @@ The following modules are presupposed:
in {
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Parameters</H2>
<P>
To abstract over gender names, we define the following identifiers.
@@ -133,12 +120,9 @@ To abstract over case names, we define the following.
<P></P>
<P>
Prepositions are used in many-argument functions for rection.
The resource category <CODE>Prep</CODE> is used.
</P>
<PRE>
Preposition : Type ;
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Nouns</H2>
<P>
Worst case: give all four forms and the semantic gender.
@@ -172,7 +156,7 @@ function:
genderN : Gender -&gt; N -&gt; N ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H3>Compound nouns</H3>
<P>
A compound noun ia an uninflected string attached to an inflected noun,
@@ -182,13 +166,13 @@ such as <I>baby boom</I>, <I>chief executive officer</I>.
compoundN : Str -&gt; N -&gt; N ;
</PRE>
<P></P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H3>Relational nouns</H3>
<P>
Relational nouns (<I>daughter of x</I>) need a preposition.
</P>
<PRE>
mkN2 : N -&gt; Preposition -&gt; N2 ;
mkN2 : N -&gt; Prep -&gt; N2 ;
</PRE>
<P></P>
<P>
@@ -200,34 +184,35 @@ shortcut for regular relational nouns with <I>of</I>.
</PRE>
<P></P>
<P>
Use the function <CODE>mkPreposition</CODE> or see the section on prepositions below to
Use the function <CODE>mkPrep</CODE> or see the section on prepositions below to
form other prepositions.
</P>
<P>
Three-place relational nouns (<I>the connection from x to y</I>) need two prepositions.
</P>
<PRE>
mkN3 : N -&gt; Preposition -&gt; Preposition -&gt; N3 ;
mkN3 : N -&gt; Prep -&gt; Prep -&gt; N3 ;
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H3>Relational common noun phrases</H3>
<P>
In some cases, you may want to make a complex <CODE>CN</CODE> into a
relational noun (e.g. <I>the old town hall of</I>).
</P>
<PRE>
cnN2 : CN -&gt; Preposition -&gt; N2 ;
cnN3 : CN -&gt; Preposition -&gt; Preposition -&gt; N3 ;
cnN2 : CN -&gt; Prep -&gt; N2 ;
cnN3 : CN -&gt; Prep -&gt; Prep -&gt; N3 ;
</PRE>
<P></P>
<A NAME="toc7"></A>
<A NAME="toc6"></A>
<H3>Proper names and noun phrases</H3>
<P>
Proper names, with a regular genitive, are formed as follows
</P>
<PRE>
regPN : Str -&gt; Gender -&gt; PN ; -- John, John's
regPN : Str -&gt; PN ;
regGenPN : Str -&gt; Gender -&gt; PN ; -- John, John's
</PRE>
<P></P>
<P>
@@ -245,7 +230,7 @@ genitive, you can use the worst-case function.
mkNP : Str -&gt; Str -&gt; Number -&gt; Gender -&gt; NP ;
</PRE>
<P></P>
<A NAME="toc8"></A>
<A NAME="toc7"></A>
<H2>Adjectives</H2>
<P>
Non-comparison one-place adjectives need two forms: one for
@@ -263,13 +248,13 @@ even for cases with the variation <I>happy - happily</I>.
regA : Str -&gt; A ;
</PRE>
<P></P>
<A NAME="toc9"></A>
<A NAME="toc8"></A>
<H3>Two-place adjectives</H3>
<P>
Two-place adjectives need a preposition for their second argument.
</P>
<PRE>
mkA2 : A -&gt; Preposition -&gt; A2 ;
mkA2 : A -&gt; Prep -&gt; A2 ;
</PRE>
<P></P>
<P>
@@ -313,7 +298,7 @@ From a given <CODE>ADeg</CODE>, it is possible to get back to <CODE>A</CODE>.
adegA : ADeg -&gt; A ;
</PRE>
<P></P>
<A NAME="toc10"></A>
<A NAME="toc9"></A>
<H2>Adverbs</H2>
<P>
Adverbs are not inflected. Most lexical ones have position
@@ -331,21 +316,21 @@ Adverbs modifying adjectives and sentences can also be formed.
mkAdA : Str -&gt; AdA ;
</PRE>
<P></P>
<A NAME="toc11"></A>
<A NAME="toc10"></A>
<H2>Prepositions</H2>
<P>
A preposition as used for rection in the lexicon, as well as to
build <CODE>PP</CODE>s in the resource API, just requires a string.
</P>
<PRE>
mkPreposition : Str -&gt; Preposition ;
mkPrep : Str -&gt; Prep ;
mkPrep : Str -&gt; Prep ;
noPrep : Prep ;
</PRE>
<P></P>
<P>
(These two functions are synonyms.)
</P>
<A NAME="toc12"></A>
<A NAME="toc11"></A>
<H2>Verbs</H2>
<P>
Except for <I>be</I>, the worst case needs five forms: the infinitive and
@@ -384,7 +369,7 @@ duplication in the present participle.
irregDuplV : (get, got, gotten : Str) -&gt; V ;
</PRE>
<P></P>
<A NAME="toc13"></A>
<A NAME="toc12"></A>
<H3>Verbs with a particle.</H3>
<P>
The particle, such as in <I>switch on</I>, is given as a string.
@@ -393,7 +378,7 @@ The particle, such as in <I>switch on</I>, is given as a string.
partV : V -&gt; Str -&gt; V ;
</PRE>
<P></P>
<A NAME="toc14"></A>
<A NAME="toc13"></A>
<H3>Reflexive verbs</H3>
<P>
By default, verbs are not reflexive; this function makes them that.
@@ -402,31 +387,31 @@ By default, verbs are not reflexive; this function makes them that.
reflV : V -&gt; V ;
</PRE>
<P></P>
<A NAME="toc15"></A>
<A NAME="toc14"></A>
<H3>Two-place verbs</H3>
<P>
Two-place verbs need a preposition, except the special case with direct object.
(transitive verbs). Notice that a particle comes from the <CODE>V</CODE>.
</P>
<PRE>
mkV2 : V -&gt; Preposition -&gt; V2 ;
mkV2 : V -&gt; Prep -&gt; V2 ;
dirV2 : V -&gt; V2 ;
</PRE>
<P></P>
<A NAME="toc16"></A>
<A NAME="toc15"></A>
<H3>Three-place verbs</H3>
<P>
Three-place (ditransitive) verbs need two prepositions, of which
the first one or both can be absent.
</P>
<PRE>
mkV3 : V -&gt; Preposition -&gt; Preposition -&gt; V3 ; -- speak, with, about
dirV3 : V -&gt; Preposition -&gt; V3 ; -- give,_,to
dirdirV3 : V -&gt; V3 ; -- give,_,_
mkV3 : V -&gt; Prep -&gt; Prep -&gt; V3 ; -- speak, with, about
dirV3 : V -&gt; Prep -&gt; V3 ; -- give,_,to
dirdirV3 : V -&gt; V3 ; -- give,_,_
</PRE>
<P></P>
<A NAME="toc17"></A>
<A NAME="toc16"></A>
<H3>Other complement patterns</H3>
<P>
Verbs and adjectives can take complements such as sentences,
@@ -435,18 +420,18 @@ questions, verb phrases, and adjectives.
<PRE>
mkV0 : V -&gt; V0 ;
mkVS : V -&gt; VS ;
mkV2S : V -&gt; Str -&gt; V2S ;
mkV2S : V -&gt; Prep -&gt; V2S ;
mkVV : V -&gt; VV ;
mkV2V : V -&gt; Str -&gt; Str -&gt; V2V ;
mkV2V : V -&gt; Prep -&gt; Prep -&gt; V2V ;
mkVA : V -&gt; VA ;
mkV2A : V -&gt; Str -&gt; V2A ;
mkV2A : V -&gt; Prep -&gt; V2A ;
mkVQ : V -&gt; VQ ;
mkV2Q : V -&gt; Str -&gt; V2Q ;
mkV2Q : V -&gt; Prep -&gt; V2Q ;
mkAS : A -&gt; AS ;
mkA2S : A -&gt; Str -&gt; A2S ;
mkA2S : A -&gt; Prep -&gt; A2S ;
mkAV : A -&gt; AV ;
mkA2V : A -&gt; Str -&gt; A2V ;
mkA2V : A -&gt; Prep -&gt; A2V ;
</PRE>
<P></P>
<P>
@@ -460,12 +445,6 @@ as an adverb. Likewise <CODE>AS, A2S, AV, A2V</CODE> are just <CODE>A</CODE>.
AS, A2S, AV, A2V : Type ;
</PRE>
<P></P>
<A NAME="toc18"></A>
<H2>Definitions of paradigms</H2>
<P>
The definitions should not bother the user of the API. So they are
hidden from the document.
</P>
<!-- html code generated by txt2tags 2.3 (http://txt2tags.sf.net) -->
<!-- cmdline: txt2tags -thtml -\-toc english/ParadigmsEng.txt -->

View File

@@ -2,48 +2,36 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Finnish Lexical Paradigms</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Finnish Lexical Paradigms</H1>
<FONT SIZE="4">
<I>Last update: 2006-06-15 15:06:49 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Finnish Lexical Paradigms</A>
<UL>
<LI><A HREF="#toc2">Parameters</A>
<LI><A HREF="#toc3">Nouns</A>
<LI><A HREF="#toc4">Adjectives</A>
<LI><A HREF="#toc5">Verbs</A>
<LI><A HREF="#toc1">Parameters</A>
<LI><A HREF="#toc2">Nouns</A>
<LI><A HREF="#toc3">Adjectives</A>
<LI><A HREF="#toc4">Verbs</A>
<UL>
<LI><A HREF="#toc6">Three-place verbs</A>
<LI><A HREF="#toc7">Other complement patterns</A>
<LI><A HREF="#toc5">Three-place verbs</A>
<LI><A HREF="#toc6">Other complement patterns</A>
</UL>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<P>
Author:
Last update: Tue Jun 13 11:42:42 2006
</P>
<P>
Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
==
</P>
<P>
# -path=.:../abstract:../common:../../prelude
</P>
<A NAME="toc1"></A>
<H1>Finnish Lexical Paradigms</H1>
<P>
Aarne Ranta 2003--2005
</P>
<P>
@@ -89,7 +77,7 @@ flags optimize=all ;
flags optimize=noexpand ;
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Parameters</H2>
<P>
To abstract over gender, number, and (some) case names,
@@ -129,7 +117,7 @@ just a case, or a pre/postposition and a case.
casePrep : Case -&gt; Prep ; -- adessive
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Nouns</H2>
<P>
The worst case gives ten forms and the semantic gender.
@@ -325,11 +313,12 @@ Proper names can be formed by using declensions for nouns.
The plural forms are filtered away by the compiler.
</P>
<PRE>
regPN : Str -&gt; PN ;
mkPN : N -&gt; PN ;
mkNP : N -&gt; Number -&gt; NP ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H2>Adjectives</H2>
<P>
Non-comparison one-place adjectives are just like nouns.
@@ -361,7 +350,7 @@ The regular adjectives are based on <CODE>regN</CODE> in the positive.
regA : (punainen : Str) -&gt; A ;
</PRE>
<P></P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H2>Verbs</H2>
<P>
The grammar does not cover the potential mood and some nominal
@@ -467,7 +456,7 @@ But this is taken care of by <CODE>ClauseFin</CODE>.
dirV2 : V -&gt; V2 ;
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H3>Three-place verbs</H3>
<P>
Three-place (ditransitive) verbs need two prepositions, of which
@@ -479,7 +468,7 @@ the first one or both can be absent.
dirdirV3 : V -&gt; V3 ; -- acc, allat
</PRE>
<P></P>
<A NAME="toc7"></A>
<A NAME="toc6"></A>
<H3>Other complement patterns</H3>
<P>
Verbs and adjectives can take complements such as sentences,
@@ -513,10 +502,6 @@ as an adverb. Likewise <CODE>AS, A2S, AV, A2V</CODE> are just <CODE>A</CODE>.
AS, A2S, AV, A2V : Type ;
</PRE>
<P></P>
<P>
The definitions should not bother the user of the API. So they are
hidden from the document.
</P>
<!-- html code generated by txt2tags 2.3 (http://txt2tags.sf.net) -->
<!-- cmdline: txt2tags -thtml -\-toc finnish/ParadigmsFin.txt -->

View File

@@ -2,61 +2,48 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> French Lexical Paradigms</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> French Lexical Paradigms</H1>
<FONT SIZE="4">
<I>Last update: 2006-06-15 15:08:18 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">French Lexical Paradigms</A>
<UL>
<LI><A HREF="#toc2">Parameters</A>
<LI><A HREF="#toc3">Nouns</A>
<LI><A HREF="#toc1">Parameters</A>
<LI><A HREF="#toc2">Nouns</A>
<UL>
<LI><A HREF="#toc4">Compound nouns</A>
<LI><A HREF="#toc5">Relational nouns</A>
<LI><A HREF="#toc6">Relational common noun phrases</A>
<LI><A HREF="#toc7">Proper names and noun phrases</A>
<LI><A HREF="#toc3">Compound nouns</A>
<LI><A HREF="#toc4">Relational nouns</A>
<LI><A HREF="#toc5">Relational common noun phrases</A>
<LI><A HREF="#toc6">Proper names and noun phrases</A>
</UL>
<LI><A HREF="#toc8">Adjectives</A>
<LI><A HREF="#toc7">Adjectives</A>
<UL>
<LI><A HREF="#toc9">Two-place adjectives</A>
<LI><A HREF="#toc10">Comparison adjectives</A>
<LI><A HREF="#toc8">Two-place adjectives</A>
<LI><A HREF="#toc9">Comparison adjectives</A>
</UL>
<LI><A HREF="#toc11">Adverbs</A>
<LI><A HREF="#toc12">Verbs</A>
<LI><A HREF="#toc10">Adverbs</A>
<LI><A HREF="#toc11">Verbs</A>
<UL>
<LI><A HREF="#toc13">Two-place verbs</A>
<LI><A HREF="#toc14">Three-place verbs</A>
<LI><A HREF="#toc15">Other complement patterns</A>
<LI><A HREF="#toc12">Two-place verbs</A>
<LI><A HREF="#toc13">Three-place verbs</A>
<LI><A HREF="#toc14">Other complement patterns</A>
</UL>
<LI><A HREF="#toc16">Definitions of the paradigms</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<P>
Author:
Last update: Tue Jun 13 11:42:43 2006
</P>
<P>
Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
==
</P>
<P>
# -path=.:../romance:../common:../abstract:../../prelude
</P>
<A NAME="toc1"></A>
<H1>French Lexical Paradigms</H1>
<P>
Aarne Ranta 2003
</P>
<P>
@@ -96,7 +83,7 @@ words.
flags optimize=all ;
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Parameters</H2>
<P>
To abstract over gender names, we define the following identifiers.
@@ -126,16 +113,14 @@ amalgamate with the following word (the 'genitive' <I>de</I> and the
'dative' <I>à</I>).
</P>
<PRE>
Preposition : Type ;
accusative : Prep ;
genitive : Prep ;
dative : Prep ;
accusative : Preposition ;
genitive : Preposition ;
dative : Preposition ;
mkPreposition : Str -&gt; Preposition ;
mkPrep : Str -&gt; Prep ;
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Nouns</H2>
<P>
Worst case: give both two forms and the gender.
@@ -165,7 +150,7 @@ Adding gender information widens the scope of the foregoing function.
regGenN : Str -&gt; Gender -&gt; N ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H3>Compound nouns</H3>
<P>
Some nouns are ones where the first part is inflected as a noun but
@@ -177,13 +162,13 @@ they are frequent in lexica.
compN : N -&gt; Str -&gt; N ;
</PRE>
<P></P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H3>Relational nouns</H3>
<P>
Relational nouns (<I>fille de x</I>) need a case and a preposition.
</P>
<PRE>
mkN2 : N -&gt; Preposition -&gt; N2 ;
mkN2 : N -&gt; Prep -&gt; N2 ;
</PRE>
<P></P>
<P>
@@ -199,10 +184,10 @@ with the empty preposition.
Three-place relational nouns (<I>la connection de x à y</I>) need two prepositions.
</P>
<PRE>
mkN3 : N -&gt; Preposition -&gt; Preposition -&gt; N3 ;
mkN3 : N -&gt; Prep -&gt; Prep -&gt; N3 ;
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H3>Relational common noun phrases</H3>
<P>
In some cases, you may want to make a complex <CODE>CN</CODE> into a
@@ -210,13 +195,15 @@ relational noun (e.g. <I>the old town hall of</I>). However, <CODE>N2</CODE> and
<CODE>N3</CODE> are purely lexical categories. But you can use the <CODE>AdvCN</CODE>
and <CODE>PrepNP</CODE> constructions to build phrases like this.
</P>
<A NAME="toc7"></A>
<A NAME="toc6"></A>
<H3>Proper names and noun phrases</H3>
<P>
Proper names need a string and a gender.
</P>
<PRE>
mkPN : Str -&gt; Gender -&gt; PN ; -- Jean
mkPN : Str -&gt; Gender -&gt; PN ; -- Jean
regPN : Str -&gt; PN ; -- masculine
</PRE>
<P></P>
<P>
@@ -227,7 +214,7 @@ you can use the worst-case function.
mkNP : Str -&gt; Gender -&gt; Number -&gt; NP ;
</PRE>
<P></P>
<A NAME="toc8"></A>
<A NAME="toc7"></A>
<H2>Adjectives</H2>
<P>
Non-comparison one-place adjectives need four forms in the worst
@@ -258,16 +245,16 @@ provided.
prefA : A -&gt; A ;
</PRE>
<P></P>
<A NAME="toc9"></A>
<A NAME="toc8"></A>
<H3>Two-place adjectives</H3>
<P>
Two-place adjectives need a preposition for their second argument.
</P>
<PRE>
mkA2 : A -&gt; Preposition -&gt; A2 ;
mkA2 : A -&gt; Prep -&gt; A2 ;
</PRE>
<P></P>
<A NAME="toc10"></A>
<A NAME="toc9"></A>
<H3>Comparison adjectives</H3>
<P>
Comparison adjectives are in the worst case put up from two
@@ -293,7 +280,7 @@ provided.
prefA : A -&gt; A ;
</PRE>
<P></P>
<A NAME="toc11"></A>
<A NAME="toc10"></A>
<H2>Adverbs</H2>
<P>
Adverbs are not inflected. Most lexical ones have position
@@ -317,7 +304,7 @@ Adverbs modifying adjectives and sentences can also be formed.
mkAdA : Str -&gt; AdA ;
</PRE>
<P></P>
<A NAME="toc12"></A>
<A NAME="toc11"></A>
<H2>Verbs</H2>
<P>
Irregular verbs are given in the module <CODE>VerbsFre</CODE>.
@@ -354,14 +341,14 @@ To change it to <I>
reflV : V -&gt; V ;
</PRE>
<P></P>
<A NAME="toc13"></A>
<A NAME="toc12"></A>
<H3>Two-place verbs</H3>
<P>
Two-place verbs need a preposition, except the special case with direct object.
(transitive verbs). Notice that a particle comes from the <CODE>V</CODE>.
</P>
<PRE>
mkV2 : V -&gt; Preposition -&gt; V2 ;
mkV2 : V -&gt; Prep -&gt; V2 ;
dirV2 : V -&gt; V2 ;
</PRE>
@@ -373,19 +360,19 @@ You can reuse a <CODE>V2</CODE> verb in <CODE>V</CODE>.
v2V : V2 -&gt; V ;
</PRE>
<P></P>
<A NAME="toc14"></A>
<A NAME="toc13"></A>
<H3>Three-place verbs</H3>
<P>
Three-place (ditransitive) verbs need two prepositions, of which
the first one or both can be absent.
</P>
<PRE>
mkV3 : V -&gt; Preposition -&gt; Preposition -&gt; V3 ; -- parler, à, de
dirV3 : V -&gt; Preposition -&gt; V3 ; -- donner,_,à
dirdirV3 : V -&gt; V3 ; -- donner,_,_
mkV3 : V -&gt; Prep -&gt; Prep -&gt; V3 ; -- parler, à, de
dirV3 : V -&gt; Prep -&gt; V3 ; -- donner,_,à
dirdirV3 : V -&gt; V3 ; -- donner,_,_
</PRE>
<P></P>
<A NAME="toc15"></A>
<A NAME="toc14"></A>
<H3>Other complement patterns</H3>
<P>
Verbs and adjectives can take complements such as sentences,
@@ -394,20 +381,20 @@ questions, verb phrases, and adjectives.
<PRE>
mkV0 : V -&gt; V0 ;
mkVS : V -&gt; VS ;
mkV2S : V -&gt; Preposition -&gt; V2S ;
mkV2S : V -&gt; Prep -&gt; V2S ;
mkVV : V -&gt; VV ; -- plain infinitive: "je veux parler"
deVV : V -&gt; VV ; -- "j'essaie de parler"
aVV : V -&gt; VV ; -- "j'arrive à parler"
mkV2V : V -&gt; Preposition -&gt; Preposition -&gt; V2V ;
mkV2V : V -&gt; Prep -&gt; Prep -&gt; V2V ;
mkVA : V -&gt; VA ;
mkV2A : V -&gt; Preposition -&gt; Preposition -&gt; V2A ;
mkV2A : V -&gt; Prep -&gt; Prep -&gt; V2A ;
mkVQ : V -&gt; VQ ;
mkV2Q : V -&gt; Preposition -&gt; V2Q ;
mkV2Q : V -&gt; Prep -&gt; V2Q ;
mkAS : A -&gt; AS ;
mkA2S : A -&gt; Preposition -&gt; A2S ;
mkAV : A -&gt; Preposition -&gt; AV ;
mkA2V : A -&gt; Preposition -&gt; Preposition -&gt; A2V ;
mkA2S : A -&gt; Prep -&gt; A2S ;
mkAV : A -&gt; Prep -&gt; AV ;
mkA2V : A -&gt; Prep -&gt; Prep -&gt; A2V ;
</PRE>
<P></P>
<P>
@@ -421,12 +408,6 @@ as an adverb. Likewise <CODE>AS, A2S, AV, A2V</CODE> are just <CODE>A</CODE>.
AS, A2S, AV, A2V : Type ;
</PRE>
<P></P>
<A NAME="toc16"></A>
<H2>Definitions of the paradigms</H2>
<P>
The definitions should not bother the user of the API. So they are
hidden from the document.
</P>
<!-- html code generated by txt2tags 2.3 (http://txt2tags.sf.net) -->
<!-- cmdline: txt2tags -thtml -\-toc french/ParadigmsFre.txt -->

View File

@@ -2,55 +2,42 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> German Lexical Paradigms</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> German Lexical Paradigms</H1>
<FONT SIZE="4">
<I>Last update: 2006-06-15 14:53:14 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">German Lexical Paradigms</A>
<UL>
<LI><A HREF="#toc2">Parameters</A>
<LI><A HREF="#toc3">Nouns</A>
<LI><A HREF="#toc1">Parameters</A>
<LI><A HREF="#toc2">Nouns</A>
<UL>
<LI><A HREF="#toc4">Proper names and noun phrases</A>
<LI><A HREF="#toc3">Proper names and noun phrases</A>
</UL>
<LI><A HREF="#toc5">Adjectives</A>
<LI><A HREF="#toc6">Adverbs</A>
<LI><A HREF="#toc7">Prepositions</A>
<LI><A HREF="#toc8">Verbs</A>
<LI><A HREF="#toc4">Adjectives</A>
<LI><A HREF="#toc5">Adverbs</A>
<LI><A HREF="#toc6">Prepositions</A>
<LI><A HREF="#toc7">Verbs</A>
<UL>
<LI><A HREF="#toc9">Two-place verbs</A>
<LI><A HREF="#toc10">Three-place verbs</A>
<LI><A HREF="#toc11">Other complement patterns</A>
<LI><A HREF="#toc8">Two-place verbs</A>
<LI><A HREF="#toc9">Three-place verbs</A>
<LI><A HREF="#toc10">Other complement patterns</A>
</UL>
<LI><A HREF="#toc12">Definitions of paradigms</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<P>
Author:
Last update: Tue Jun 13 11:42:43 2006
</P>
<P>
Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
==
</P>
<P>
# -path=.:../common:../abstract:../../prelude
</P>
<A NAME="toc1"></A>
<H1>German Lexical Paradigms</H1>
<P>
Aarne Ranta &amp; Harald Hammarström 2003--2006
</P>
<P>
@@ -86,7 +73,7 @@ words.
in {
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Parameters</H2>
<P>
To abstract over gender names, we define the following identifiers.
@@ -122,7 +109,7 @@ To abstract over number names, we define the following.
plural : Number ;
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Nouns</H2>
<P>
Worst case: give all four singular forms, two plural forms (others + dative),
@@ -172,7 +159,7 @@ Three-place relational nouns (<I>die Verbindung von x nach y</I>) need two prepo
mkN3 : N -&gt; Prep -&gt; Prep -&gt; N3 ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H3>Proper names and noun phrases</H3>
<P>
Proper names, with a regular genitive, are formed as follows
@@ -183,7 +170,7 @@ The regular genitive is <I>s</I>, omitted after <I>s</I>.
regPN : (Johann : Str) -&gt; PN ; -- Johann, Johanns ; Johannes, Johannes
</PRE>
<P></P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H2>Adjectives</H2>
<P>
Adjectives need three forms, one for each degree.
@@ -214,7 +201,7 @@ Two-place adjectives are formed by adding a preposition to an adjective.
mkA2 : A -&gt; Prep -&gt; A2 ;
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H2>Adverbs</H2>
<P>
Adverbs are just strings.
@@ -223,7 +210,7 @@ Adverbs are just strings.
mkAdv : Str -&gt; Adv ;
</PRE>
<P></P>
<A NAME="toc7"></A>
<A NAME="toc6"></A>
<H2>Prepositions</H2>
<P>
A preposition is formed from a string and a case.
@@ -249,7 +236,7 @@ A couple of common prepositions (always with the dative).
zu_Prep : Prep ;
</PRE>
<P></P>
<A NAME="toc8"></A>
<A NAME="toc7"></A>
<H2>Verbs</H2>
<P>
The worst-case constructor needs six forms:
@@ -312,7 +299,7 @@ Reflexive verbs can take reflexive pronouns of different cases.
reflV : V -&gt; Case -&gt; V ;
</PRE>
<P></P>
<A NAME="toc9"></A>
<A NAME="toc8"></A>
<H3>Two-place verbs</H3>
<P>
Two-place verbs need a preposition, except the special case with direct object
@@ -325,7 +312,7 @@ Two-place verbs need a preposition, except the special case with direct object
datV2 : V -&gt; V2 ;
</PRE>
<P></P>
<A NAME="toc10"></A>
<A NAME="toc9"></A>
<H3>Three-place verbs</H3>
<P>
Three-place (ditransitive) verbs need two prepositions, of which
@@ -337,7 +324,7 @@ the first one or both can be absent.
accdatV3 : V -&gt; V3 ; -- give,_,_
</PRE>
<P></P>
<A NAME="toc11"></A>
<A NAME="toc10"></A>
<H3>Other complement patterns</H3>
<P>
Verbs and adjectives can take complements such as sentences,
@@ -371,12 +358,6 @@ as an adverb. Likewise <CODE>AS, A2S, AV, A2V</CODE> are just <CODE>A</CODE>.
AS, A2S, AV, A2V : Type ;
</PRE>
<P></P>
<A NAME="toc12"></A>
<H2>Definitions of paradigms</H2>
<P>
The definitions should not bother the user of the API. So they are
hidden from the document.
</P>
<!-- html code generated by txt2tags 2.3 (http://txt2tags.sf.net) -->
<!-- cmdline: txt2tags -thtml -\-toc german/ParadigmsGer.txt -->

View File

@@ -2,61 +2,48 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Italian Lexical Paradigms</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Italian Lexical Paradigms</H1>
<FONT SIZE="4">
<I>Last update: 2006-06-15 16:38:46 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Italian Lexical Paradigms</A>
<UL>
<LI><A HREF="#toc2">Parameters</A>
<LI><A HREF="#toc3">Nouns</A>
<LI><A HREF="#toc1">Parameters</A>
<LI><A HREF="#toc2">Nouns</A>
<UL>
<LI><A HREF="#toc4">Compound nouns</A>
<LI><A HREF="#toc5">Relational nouns</A>
<LI><A HREF="#toc6">Relational common noun phrases</A>
<LI><A HREF="#toc7">Proper names and noun phrases</A>
<LI><A HREF="#toc3">Compound nouns</A>
<LI><A HREF="#toc4">Relational nouns</A>
<LI><A HREF="#toc5">Relational common noun phrases</A>
<LI><A HREF="#toc6">Proper names and noun phrases</A>
</UL>
<LI><A HREF="#toc8">Adjectives</A>
<LI><A HREF="#toc7">Adjectives</A>
<UL>
<LI><A HREF="#toc9">Two-place adjectives</A>
<LI><A HREF="#toc10">Comparison adjectives</A>
<LI><A HREF="#toc8">Two-place adjectives</A>
<LI><A HREF="#toc9">Comparison adjectives</A>
</UL>
<LI><A HREF="#toc11">Adverbs</A>
<LI><A HREF="#toc12">Verbs</A>
<LI><A HREF="#toc10">Adverbs</A>
<LI><A HREF="#toc11">Verbs</A>
<UL>
<LI><A HREF="#toc13">Two-place verbs</A>
<LI><A HREF="#toc14">Three-place verbs</A>
<LI><A HREF="#toc15">Other complement patterns</A>
<LI><A HREF="#toc12">Two-place verbs</A>
<LI><A HREF="#toc13">Three-place verbs</A>
<LI><A HREF="#toc14">Other complement patterns</A>
</UL>
<LI><A HREF="#toc16">The definitions of the paradigms</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<P>
Author:
Last update: Tue Jun 13 11:42:43 2006
</P>
<P>
Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
==
</P>
<P>
# -path=.:../romance:../common:../abstract:../../prelude
</P>
<A NAME="toc1"></A>
<H1>Italian Lexical Paradigms</H1>
<P>
Aarne Ranta 2003
</P>
<P>
@@ -97,7 +84,7 @@ words.
flags optimize=all ;
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Parameters</H2>
<P>
To abstract over gender names, we define the following identifiers.
@@ -127,16 +114,16 @@ amalgamate with the following word (the 'genitive' <I>de</I> and the
'dative' <I>à</I>).
</P>
<PRE>
Preposition : Type ;
Prep : Type ;
accusative : Preposition ;
genitive : Preposition ;
dative : Preposition ;
accusative : Prep ;
genitive : Prep ;
dative : Prep ;
mkPreposition : Str -&gt; Preposition ;
mkPrep : Str -&gt; Prep ;
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Nouns</H2>
<P>
Worst case: give both two forms and the gender.
@@ -163,7 +150,7 @@ To force a different gender, use one of the following functions.
femN : N -&gt; N ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H3>Compound nouns</H3>
<P>
Some nouns are ones where the first part is inflected as a noun but
@@ -175,13 +162,13 @@ they are frequent in lexica.
compN : N -&gt; Str -&gt; N ;
</PRE>
<P></P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H3>Relational nouns</H3>
<P>
Relational nouns (<I>figlio di x</I>) need a case and a preposition.
</P>
<PRE>
mkN2 : N -&gt; Preposition -&gt; N2 ;
mkN2 : N -&gt; Prep -&gt; N2 ;
</PRE>
<P></P>
<P>
@@ -197,10 +184,10 @@ with the empty preposition.
Three-place relational nouns (<I>la connessione di x a y</I>) need two prepositions.
</P>
<PRE>
mkN3 : N -&gt; Preposition -&gt; Preposition -&gt; N3 ;
mkN3 : N -&gt; Prep -&gt; Prep -&gt; N3 ;
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H3>Relational common noun phrases</H3>
<P>
In some cases, you may want to make a complex <CODE>CN</CODE> into a
@@ -208,13 +195,14 @@ relational noun (e.g. <I>the old town hall of</I>). However, <CODE>N2</CODE> and
<CODE>N3</CODE> are purely lexical categories. But you can use the <CODE>AdvCN</CODE>
and <CODE>PrepNP</CODE> constructions to build phrases like this.
</P>
<A NAME="toc7"></A>
<A NAME="toc6"></A>
<H3>Proper names and noun phrases</H3>
<P>
Proper names need a string and a gender.
</P>
<PRE>
mkPN : Str -&gt; Gender -&gt; PN ; -- Jean
mkPN : Str -&gt; Gender -&gt; PN ;
regPN : Str -&gt; PN ; -- masculine
</PRE>
<P></P>
<P>
@@ -225,7 +213,7 @@ you can use the worst-case function.
mkNP : Str -&gt; Gender -&gt; Number -&gt; NP ;
</PRE>
<P></P>
<A NAME="toc8"></A>
<A NAME="toc7"></A>
<H2>Adjectives</H2>
<P>
Non-comparison one-place adjectives need five forms in the worst
@@ -253,16 +241,16 @@ provided.
prefA : A -&gt; A ;
</PRE>
<P></P>
<A NAME="toc9"></A>
<A NAME="toc8"></A>
<H3>Two-place adjectives</H3>
<P>
Two-place adjectives need a preposition for their second argument.
</P>
<PRE>
mkA2 : A -&gt; Preposition -&gt; A2 ;
mkA2 : A -&gt; Prep -&gt; A2 ;
</PRE>
<P></P>
<A NAME="toc10"></A>
<A NAME="toc9"></A>
<H3>Comparison adjectives</H3>
<P>
Comparison adjectives are in the worst case put up from two
@@ -288,7 +276,7 @@ with comparison by <I>plus</I>.
regADeg : Str -&gt; A ;
</PRE>
<P></P>
<A NAME="toc11"></A>
<A NAME="toc10"></A>
<H2>Adverbs</H2>
<P>
Adverbs are not inflected. Most lexical ones have position
@@ -312,7 +300,7 @@ Adverbs modifying adjectives and sentences can also be formed.
mkAdA : Str -&gt; AdA ;
</PRE>
<P></P>
<A NAME="toc12"></A>
<A NAME="toc11"></A>
<H2>Verbs</H2>
<P>
Regular verbs are ones with the infinitive <I>er</I> or <I>ir</I>, the
@@ -343,14 +331,14 @@ Reflexive implies <I>essere</I>.
reflV : V -&gt; V ;
</PRE>
<P></P>
<A NAME="toc13"></A>
<A NAME="toc12"></A>
<H3>Two-place verbs</H3>
<P>
Two-place verbs need a preposition, except the special case with direct object.
(transitive verbs). Notice that a particle comes from the <CODE>V</CODE>.
</P>
<PRE>
mkV2 : V -&gt; Preposition -&gt; V2 ;
mkV2 : V -&gt; Prep -&gt; V2 ;
dirV2 : V -&gt; V2 ;
</PRE>
@@ -362,19 +350,19 @@ You can reuse a <CODE>V2</CODE> verb in <CODE>V</CODE>.
v2V : V2 -&gt; V ;
</PRE>
<P></P>
<A NAME="toc14"></A>
<A NAME="toc13"></A>
<H3>Three-place verbs</H3>
<P>
Three-place (ditransitive) verbs need two prepositions, of which
the first one or both can be absent.
</P>
<PRE>
mkV3 : V -&gt; Preposition -&gt; Preposition -&gt; V3 ; -- parler, à, de
dirV3 : V -&gt; Preposition -&gt; V3 ; -- donner,_,à
dirdirV3 : V -&gt; V3 ; -- donner,_,_
mkV3 : V -&gt; Prep -&gt; Prep -&gt; V3 ; -- parlare, a, di
dirV3 : V -&gt; Prep -&gt; V3 ; -- dare,_,a
dirdirV3 : V -&gt; V3 ; -- dare,_,_
</PRE>
<P></P>
<A NAME="toc15"></A>
<A NAME="toc14"></A>
<H3>Other complement patterns</H3>
<P>
Verbs and adjectives can take complements such as sentences,
@@ -383,20 +371,20 @@ questions, verb phrases, and adjectives.
<PRE>
mkV0 : V -&gt; V0 ;
mkVS : V -&gt; VS ;
mkV2S : V -&gt; Preposition -&gt; V2S ;
mkVV : V -&gt; VV ; -- plain infinitive: "je veux parler"
deVV : V -&gt; VV ; -- "j'essaie de parler"
aVV : V -&gt; VV ; -- "j'arrive à parler"
mkV2V : V -&gt; Preposition -&gt; Preposition -&gt; V2V ;
mkV2S : V -&gt; Prep -&gt; V2S ;
mkVV : V -&gt; VV ; -- plain infinitive: "voglio parlare"
deVV : V -&gt; VV ; -- "cerco di parlare"
aVV : V -&gt; VV ; -- "arrivo a parlare"
mkV2V : V -&gt; Prep -&gt; Prep -&gt; V2V ;
mkVA : V -&gt; VA ;
mkV2A : V -&gt; Preposition -&gt; Preposition -&gt; V2A ;
mkV2A : V -&gt; Prep -&gt; Prep -&gt; V2A ;
mkVQ : V -&gt; VQ ;
mkV2Q : V -&gt; Preposition -&gt; V2Q ;
mkV2Q : V -&gt; Prep -&gt; V2Q ;
mkAS : A -&gt; AS ;
mkA2S : A -&gt; Preposition -&gt; A2S ;
mkAV : A -&gt; Preposition -&gt; AV ;
mkA2V : A -&gt; Preposition -&gt; Preposition -&gt; A2V ;
mkA2S : A -&gt; Prep -&gt; A2S ;
mkAV : A -&gt; Prep -&gt; AV ;
mkA2V : A -&gt; Prep -&gt; Prep -&gt; A2V ;
</PRE>
<P></P>
<P>
@@ -410,12 +398,6 @@ as an adverb. Likewise <CODE>AS, A2S, AV, A2V</CODE> are just <CODE>A</CODE>.
AS, A2S, AV, A2V : Type ;
</PRE>
<P></P>
<A NAME="toc16"></A>
<H2>The definitions of the paradigms</H2>
<P>
The definitions should not bother the user of the API. So they are
hidden from the document.
</P>
<!-- html code generated by txt2tags 2.3 (http://txt2tags.sf.net) -->
<!-- cmdline: txt2tags -thtml -\-toc italian/ParadigmsIta.txt -->

View File

@@ -2,64 +2,50 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Norwegian Lexical Paradigms</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Norwegian Lexical Paradigms</H1>
<FONT SIZE="4">
<I>Last update: 2006-06-15 15:58:53 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Norwegian Lexical Paradigms</A>
<UL>
<LI><A HREF="#toc2">Parameters</A>
<LI><A HREF="#toc3">Nouns</A>
<LI><A HREF="#toc1">Parameters</A>
<LI><A HREF="#toc2">Nouns</A>
<UL>
<LI><A HREF="#toc4">Compound nouns</A>
<LI><A HREF="#toc5">Relational nouns</A>
<LI><A HREF="#toc6">Relational common noun phrases</A>
<LI><A HREF="#toc7">Proper names and noun phrases</A>
<LI><A HREF="#toc3">Compound nouns</A>
<LI><A HREF="#toc4">Relational nouns</A>
<LI><A HREF="#toc5">Relational common noun phrases</A>
<LI><A HREF="#toc6">Proper names and noun phrases</A>
</UL>
<LI><A HREF="#toc8">Adjectives</A>
<LI><A HREF="#toc7">Adjectives</A>
<UL>
<LI><A HREF="#toc9">Two-place adjectives</A>
<LI><A HREF="#toc8">Two-place adjectives</A>
</UL>
<LI><A HREF="#toc10">Adverbs</A>
<LI><A HREF="#toc11">Prepositions</A>
<LI><A HREF="#toc12">Verbs</A>
<LI><A HREF="#toc9">Adverbs</A>
<LI><A HREF="#toc10">Verbs</A>
<UL>
<LI><A HREF="#toc13">Verbs with //være// as auxiliary</A>
<LI><A HREF="#toc14">Verbs with a particle.</A>
<LI><A HREF="#toc15">Deponent verbs.</A>
<LI><A HREF="#toc16">Two-place verbs</A>
<LI><A HREF="#toc17">Three-place verbs</A>
<LI><A HREF="#toc18">Other complement patterns</A>
<LI><A HREF="#toc11">Verbs with //være// as auxiliary</A>
<LI><A HREF="#toc12">Verbs with a particle.</A>
<LI><A HREF="#toc13">Deponent verbs.</A>
<LI><A HREF="#toc14">Two-place verbs</A>
<LI><A HREF="#toc15">Three-place verbs</A>
<LI><A HREF="#toc16">Other complement patterns</A>
</UL>
<LI><A HREF="#toc19">Definitions of the paradigms</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<P>
Author:
Last update: Tue Jun 13 11:42:43 2006
</P>
<P>
Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
==
</P>
<P>
# -path=.:../scandinavian:../common:../abstract:../../prelude
</P>
<A NAME="toc1"></A>
<H1>Norwegian Lexical Paradigms</H1>
<P>
Aarne Ranta 2003
</P>
<P>
@@ -97,7 +83,7 @@ words.
CatNor in {
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Parameters</H2>
<P>
To abstract over gender names, we define the following identifiers.
@@ -135,10 +121,11 @@ To abstract over case names, we define the following.
Prepositions used in many-argument functions are just strings.
</P>
<PRE>
Preposition : Type = Str ;
mkPrep : Str -&gt; Prep ;
noPrep : Prep ; -- empty string
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Nouns</H2>
<P>
Worst case: give all four forms. The gender is computed from the
@@ -174,19 +161,19 @@ gender is computed from the definite form.
mk2N : (bil,bilen : Str) -&gt; N ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H3>Compound nouns</H3>
<P>
All the functions above work quite as well to form compound nouns,
such as <I>fotboll</I>.
</P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H3>Relational nouns</H3>
<P>
Relational nouns (<I>daughter of x</I>) need a preposition.
</P>
<PRE>
mkN2 : N -&gt; Preposition -&gt; N2 ;
mkN2 : N -&gt; Prep -&gt; N2 ;
</PRE>
<P></P>
<P>
@@ -198,17 +185,17 @@ shortcut for regular, <CODE>nonhuman</CODE> relational nouns with <I>av</I>.
</PRE>
<P></P>
<P>
Use the function <CODE>mkPreposition</CODE> or see the section on prepositions below to
Use the function <CODE>mkPrep</CODE> or see the section on prepositions below to
form other prepositions.
</P>
<P>
Three-place relational nouns (<I>the connection from x to y</I>) need two prepositions.
</P>
<PRE>
mkN3 : N -&gt; Preposition -&gt; Preposition -&gt; N3 ;
mkN3 : N -&gt; Prep -&gt; Prep -&gt; N3 ;
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H3>Relational common noun phrases</H3>
<P>
In some cases, you may want to make a complex <CODE>CN</CODE> into a
@@ -216,13 +203,14 @@ relational noun (e.g. <I>the old town hall of</I>). However, <CODE>N2</CODE> and
<CODE>N3</CODE> are purely lexical categories. But you can use the <CODE>AdvCN</CODE>
and <CODE>PrepNP</CODE> constructions to build phrases like this.
</P>
<A NAME="toc7"></A>
<A NAME="toc6"></A>
<H3>Proper names and noun phrases</H3>
<P>
Proper names, with a regular genitive, are formed as follows
</P>
<PRE>
regPN : Str -&gt; Gender -&gt; PN ; -- John, John's
regPN : Str -&gt; PN ; -- utrum
regGenPN : Str -&gt; Gender -&gt; PN ;
</PRE>
<P></P>
<P>
@@ -240,7 +228,7 @@ genitive, you can use the worst-case function.
mkNP : Str -&gt; Str -&gt; Number -&gt; Gender -&gt; NP ;
</PRE>
<P></P>
<A NAME="toc8"></A>
<A NAME="toc7"></A>
<H2>Adjectives</H2>
<P>
Non-comparison one-place adjectives need three forms:
@@ -263,13 +251,13 @@ In most cases, two forms are enough.
mk2A : (stor,stort : Str) -&gt; A ;
</PRE>
<P></P>
<A NAME="toc9"></A>
<A NAME="toc8"></A>
<H3>Two-place adjectives</H3>
<P>
Two-place adjectives need a preposition for their second argument.
</P>
<PRE>
mkA2 : A -&gt; Preposition -&gt; A2 ;
mkA2 : A -&gt; Prep -&gt; A2 ;
</PRE>
<P></P>
<P>
@@ -310,7 +298,7 @@ long adjective, the following pattern is used:
compoundA : A -&gt; A ; -- -/mer/mest norsk
</PRE>
<P></P>
<A NAME="toc10"></A>
<A NAME="toc9"></A>
<H2>Adverbs</H2>
<P>
Adverbs are not inflected. Most lexical ones have position
@@ -328,16 +316,7 @@ Adverbs modifying adjectives and sentences can also be formed.
mkAdA : Str -&gt; AdA ;
</PRE>
<P></P>
<A NAME="toc11"></A>
<H2>Prepositions</H2>
<P>
A preposition is just a string.
</P>
<PRE>
mkPreposition : Str -&gt; Preposition ;
</PRE>
<P></P>
<A NAME="toc12"></A>
<A NAME="toc10"></A>
<H2>Verbs</H2>
<P>
The worst case needs six forms.
@@ -368,7 +347,7 @@ In practice, it is enough to give three forms, as in school books.
irregV : (drikke, drakk, drukket : Str) -&gt; V ;
</PRE>
<P></P>
<A NAME="toc13"></A>
<A NAME="toc11"></A>
<H3>Verbs with //være// as auxiliary</H3>
<P>
By default, the auxiliary is <I>have</I>. This function changes it to <I>være</I>.
@@ -377,7 +356,7 @@ By default, the auxiliary is <I>have</I>. This function changes it to <I>v
vaereV : V -&gt; V ;
</PRE>
<P></P>
<A NAME="toc14"></A>
<A NAME="toc12"></A>
<H3>Verbs with a particle.</H3>
<P>
The particle, such as in <I>switch on</I>, is given as a string.
@@ -386,7 +365,7 @@ The particle, such as in <I>switch on</I>, is given as a string.
partV : V -&gt; Str -&gt; V ;
</PRE>
<P></P>
<A NAME="toc15"></A>
<A NAME="toc13"></A>
<H3>Deponent verbs.</H3>
<P>
Some words are used in passive forms only, e.g. <I>hoppas</I>, some as
@@ -397,31 +376,31 @@ reflexive e.g. <I>
reflV : V -&gt; V ;
</PRE>
<P></P>
<A NAME="toc16"></A>
<A NAME="toc14"></A>
<H3>Two-place verbs</H3>
<P>
Two-place verbs need a preposition, except the special case with direct object.
(transitive verbs). Notice that a particle comes from the <CODE>V</CODE>.
</P>
<PRE>
mkV2 : V -&gt; Preposition -&gt; V2 ;
mkV2 : V -&gt; Prep -&gt; V2 ;
dirV2 : V -&gt; V2 ;
</PRE>
<P></P>
<A NAME="toc17"></A>
<A NAME="toc15"></A>
<H3>Three-place verbs</H3>
<P>
Three-place (ditransitive) verbs need two prepositions, of which
the first one or both can be absent.
</P>
<PRE>
mkV3 : V -&gt; Str -&gt; Str -&gt; V3 ; -- speak, with, about
dirV3 : V -&gt; Str -&gt; V3 ; -- give,_,to
dirdirV3 : V -&gt; V3 ; -- give,_,_
mkV3 : V -&gt; Prep -&gt; Prep -&gt; V3 ; -- speak, with, about
dirV3 : V -&gt; Prep -&gt; V3 ; -- give,_,to
dirdirV3 : V -&gt; V3 ; -- give,_,_
</PRE>
<P></P>
<A NAME="toc18"></A>
<A NAME="toc16"></A>
<H3>Other complement patterns</H3>
<P>
Verbs and adjectives can take complements such as sentences,
@@ -430,18 +409,18 @@ questions, verb phrases, and adjectives.
<PRE>
mkV0 : V -&gt; V0 ;
mkVS : V -&gt; VS ;
mkV2S : V -&gt; Str -&gt; V2S ;
mkV2S : V -&gt; Prep -&gt; V2S ;
mkVV : V -&gt; VV ;
mkV2V : V -&gt; Str -&gt; Str -&gt; V2V ;
mkV2V : V -&gt; Prep -&gt; Prep -&gt; V2V ;
mkVA : V -&gt; VA ;
mkV2A : V -&gt; Str -&gt; V2A ;
mkV2A : V -&gt; Prep -&gt; V2A ;
mkVQ : V -&gt; VQ ;
mkV2Q : V -&gt; Str -&gt; V2Q ;
mkV2Q : V -&gt; Prep -&gt; V2Q ;
mkAS : A -&gt; AS ;
mkA2S : A -&gt; Str -&gt; A2S ;
mkA2S : A -&gt; Prep -&gt; A2S ;
mkAV : A -&gt; AV ;
mkA2V : A -&gt; Str -&gt; A2V ;
mkA2V : A -&gt; Prep -&gt; A2V ;
</PRE>
<P></P>
<P>
@@ -455,12 +434,6 @@ as an adverb. Likewise <CODE>AS, A2S, AV, A2V</CODE> are just <CODE>A</CODE>.
AS, A2S, AV, A2V : Type ;
</PRE>
<P></P>
<A NAME="toc19"></A>
<H2>Definitions of the paradigms</H2>
<P>
The definitions should not bother the user of the API. So they are
hidden from the document.
</P>
<!-- html code generated by txt2tags 2.3 (http://txt2tags.sf.net) -->
<!-- cmdline: txt2tags -thtml -\-toc norwegian/ParadigmsNor.txt -->

View File

@@ -2,45 +2,33 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Russian Lexical Paradigms</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Russian Lexical Paradigms</H1>
<FONT SIZE="4">
<I>Last update: 2006-06-15 16:42:18 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Russian Lexical Paradigms</A>
<UL>
<LI><A HREF="#toc2">Parameters</A>
<LI><A HREF="#toc3">Nouns</A>
<LI><A HREF="#toc4">Adjectives</A>
<LI><A HREF="#toc5">Adverbs</A>
<LI><A HREF="#toc6">Verbs</A>
<LI><A HREF="#toc1">Parameters</A>
<LI><A HREF="#toc2">Nouns</A>
<LI><A HREF="#toc3">Adjectives</A>
<LI><A HREF="#toc4">Adverbs</A>
<LI><A HREF="#toc5">Verbs</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<P>
Author:
Last update: Tue Jun 13 11:42:43 2006
</P>
<P>
Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
==
</P>
<P>
# -path=.:../abstract:../../prelude:../common
</P>
<A NAME="toc1"></A>
<H1>Russian Lexical Paradigms</H1>
<P>
Janna Khegai 2003--2005
</P>
<P>
@@ -82,7 +70,7 @@ The following modules are presupposed:
flags coding=utf8 ;
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Parameters</H2>
<P>
To abstract over gender names, we define the following identifiers.
@@ -122,7 +110,7 @@ To abstract over number names, we define the following.
plural : Number ;
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Nouns</H2>
<P>
Best case: indeclinabe nouns: <I>кофе</I>, <I>пальто</I>, <I>ВУЗ</I>.
@@ -221,6 +209,7 @@ Proper names.
</P>
<PRE>
mkPN : Str -&gt; Gender -&gt; Animacy -&gt; PN ; -- "Иван", "Маша"
regPN : Str -&gt; PN ;
nounPN : N -&gt; PN ;
</PRE>
<P></P>
@@ -233,7 +222,7 @@ On the top level, it is maybe <CODE>CN</CODE> that is used rather than <CODE>N</
mkNP : Str -&gt; Gender -&gt; Animacy -&gt; NP ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H2>Adjectives</H2>
<P>
Non-comparison (only positive degree) one-place adjectives need 28 (4 by 7)
@@ -297,7 +286,7 @@ On top level, there are adjectival phrases. The most common case is
just to use a one-place adjective.
ap : A -&gt; IsPostfixAdj -&gt; AP ;
</P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H2>Adverbs</H2>
<P>
Adverbs are not inflected. Most lexical ones have position
@@ -307,7 +296,7 @@ after the verb. Some can be preverbal (e.g. <I>always</I>).
mkAdv : Str -&gt; Adv ;
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H2>Verbs</H2>
<P>
In our lexicon description (<I>Verbum</I>) there are 62 forms:
@@ -395,10 +384,6 @@ a particle can be included in a <CODE>V</CODE>.
tvDirDir : V -&gt; V3 ;
</PRE>
<P></P>
<P>
The definitions should not bother the user of the API. So they are
hidden from the document.
</P>
<!-- html code generated by txt2tags 2.3 (http://txt2tags.sf.net) -->
<!-- cmdline: txt2tags -thtml -\-toc russian/ParadigmsRus.txt -->

View File

@@ -2,61 +2,48 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Spanish Lexical Paradigms</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Spanish Lexical Paradigms</H1>
<FONT SIZE="4">
<I>Last update: 2006-06-15 16:29:51 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Spanish Lexical Paradigms</A>
<UL>
<LI><A HREF="#toc2">Parameters</A>
<LI><A HREF="#toc3">Nouns</A>
<LI><A HREF="#toc1">Parameters</A>
<LI><A HREF="#toc2">Nouns</A>
<UL>
<LI><A HREF="#toc4">Compound nouns</A>
<LI><A HREF="#toc5">Relational nouns</A>
<LI><A HREF="#toc6">Relational common noun phrases</A>
<LI><A HREF="#toc7">Proper names and noun phrases</A>
<LI><A HREF="#toc3">Compound nouns</A>
<LI><A HREF="#toc4">Relational nouns</A>
<LI><A HREF="#toc5">Relational common noun phrases</A>
<LI><A HREF="#toc6">Proper names and noun phrases</A>
</UL>
<LI><A HREF="#toc8">Adjectives</A>
<LI><A HREF="#toc7">Adjectives</A>
<UL>
<LI><A HREF="#toc9">Two-place adjectives</A>
<LI><A HREF="#toc10">Comparison adjectives</A>
<LI><A HREF="#toc8">Two-place adjectives</A>
<LI><A HREF="#toc9">Comparison adjectives</A>
</UL>
<LI><A HREF="#toc11">Adverbs</A>
<LI><A HREF="#toc12">Verbs</A>
<LI><A HREF="#toc10">Adverbs</A>
<LI><A HREF="#toc11">Verbs</A>
<UL>
<LI><A HREF="#toc13">Two-place verbs</A>
<LI><A HREF="#toc14">Three-place verbs</A>
<LI><A HREF="#toc15">Other complement patterns</A>
<LI><A HREF="#toc12">Two-place verbs</A>
<LI><A HREF="#toc13">Three-place verbs</A>
<LI><A HREF="#toc14">Other complement patterns</A>
</UL>
<LI><A HREF="#toc16">The definitions of the paradigms</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<P>
Author:
Last update: Tue Jun 13 11:42:43 2006
</P>
<P>
Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
==
</P>
<P>
# -path=.:../romance:../common:../abstract:../../prelude
</P>
<A NAME="toc1"></A>
<H1>Spanish Lexical Paradigms</H1>
<P>
Aarne Ranta 2003
</P>
<P>
@@ -94,7 +81,7 @@ escape to construct the most irregular words of type <CODE>C</CODE>.
flags optimize=all ;
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Parameters</H2>
<P>
To abstract over gender names, we define the following identifiers.
@@ -124,16 +111,16 @@ amalgamate with the following word (the 'genitive' <I>de</I> and the
'dative' <I>à</I>).
</P>
<PRE>
Preposition : Type ;
Prep : Type ;
accusative : Preposition ;
genitive : Preposition ;
dative : Preposition ;
accusative : Prep ;
genitive : Prep ;
dative : Prep ;
mkPreposition : Str -&gt; Preposition ;
mkPrep : Str -&gt; Prep ;
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Nouns</H2>
<P>
Worst case: two forms (singular + plural),
@@ -164,7 +151,7 @@ To force a different gender, use one of the following functions.
femN : N -&gt; N ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H3>Compound nouns</H3>
<P>
Some nouns are ones where the first part is inflected as a noun but
@@ -176,13 +163,13 @@ they are frequent in lexica.
compN : N -&gt; Str -&gt; N ;
</PRE>
<P></P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H3>Relational nouns</H3>
<P>
Relational nouns (<I>fille de x</I>) need a case and a preposition.
</P>
<PRE>
mkN2 : N -&gt; Preposition -&gt; N2 ;
mkN2 : N -&gt; Prep -&gt; N2 ;
</PRE>
<P></P>
<P>
@@ -198,10 +185,10 @@ with the empty preposition.
Three-place relational nouns (<I>la connessione di x a y</I>) need two prepositions.
</P>
<PRE>
mkN3 : N -&gt; Preposition -&gt; Preposition -&gt; N3 ;
mkN3 : N -&gt; Prep -&gt; Prep -&gt; N3 ;
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H3>Relational common noun phrases</H3>
<P>
In some cases, you may want to make a complex <CODE>CN</CODE> into a
@@ -209,13 +196,14 @@ relational noun (e.g. <I>the old town hall of</I>). However, <CODE>N2</CODE> and
<CODE>N3</CODE> are purely lexical categories. But you can use the <CODE>AdvCN</CODE>
and <CODE>PrepNP</CODE> constructions to build phrases like this.
</P>
<A NAME="toc7"></A>
<A NAME="toc6"></A>
<H3>Proper names and noun phrases</H3>
<P>
Proper names need a string and a gender.
</P>
<PRE>
mkPN : Str -&gt; Gender -&gt; PN ; -- Jean
mkPN : Str -&gt; Gender -&gt; PN ; -- Jean
regPN : Str -&gt; PN ; -- masculine
</PRE>
<P></P>
<P>
@@ -226,7 +214,7 @@ you can use the worst-case function.
mkNP : Str -&gt; Gender -&gt; Number -&gt; NP ;
</PRE>
<P></P>
<A NAME="toc8"></A>
<A NAME="toc7"></A>
<H2>Adjectives</H2>
<P>
Non-comparison one-place adjectives need five forms in the worst
@@ -255,16 +243,16 @@ provided.
prefA : A -&gt; A ;
</PRE>
<P></P>
<A NAME="toc9"></A>
<A NAME="toc8"></A>
<H3>Two-place adjectives</H3>
<P>
Two-place adjectives need a preposition for their second argument.
</P>
<PRE>
mkA2 : A -&gt; Preposition -&gt; A2 ;
mkA2 : A -&gt; Prep -&gt; A2 ;
</PRE>
<P></P>
<A NAME="toc10"></A>
<A NAME="toc9"></A>
<H3>Comparison adjectives</H3>
<P>
Comparison adjectives are in the worst case put up from two
@@ -290,7 +278,7 @@ with comparison by <I>mas</I>.
regADeg : Str -&gt; A ;
</PRE>
<P></P>
<A NAME="toc11"></A>
<A NAME="toc10"></A>
<H2>Adverbs</H2>
<P>
Adverbs are not inflected. Most lexical ones have position
@@ -314,7 +302,7 @@ Adverbs modifying adjectives and sentences can also be formed.
mkAdA : Str -&gt; AdA ;
</PRE>
<P></P>
<A NAME="toc12"></A>
<A NAME="toc11"></A>
<H2>Verbs</H2>
<P>
Regular verbs are ones inflected like <I>cortar</I>, <I>deber</I>, or <I>vivir</I>.
@@ -350,14 +338,14 @@ in masculine singular form as second argument.
special_ppV : V -&gt; Str -&gt; V ;
</PRE>
<P></P>
<A NAME="toc13"></A>
<A NAME="toc12"></A>
<H3>Two-place verbs</H3>
<P>
Two-place verbs need a preposition, except the special case with direct object.
(transitive verbs). Notice that a particle comes from the <CODE>V</CODE>.
</P>
<PRE>
mkV2 : V -&gt; Preposition -&gt; V2 ;
mkV2 : V -&gt; Prep -&gt; V2 ;
dirV2 : V -&gt; V2 ;
</PRE>
@@ -369,19 +357,19 @@ You can reuse a <CODE>V2</CODE> verb in <CODE>V</CODE>.
v2V : V2 -&gt; V ;
</PRE>
<P></P>
<A NAME="toc14"></A>
<A NAME="toc13"></A>
<H3>Three-place verbs</H3>
<P>
Three-place (ditransitive) verbs need two prepositions, of which
the first one or both can be absent.
</P>
<PRE>
mkV3 : V -&gt; Preposition -&gt; Preposition -&gt; V3 ; -- parler, à, de
dirV3 : V -&gt; Preposition -&gt; V3 ; -- donner,_,à
dirdirV3 : V -&gt; V3 ; -- donner,_,_
mkV3 : V -&gt; Prep -&gt; Prep -&gt; V3 ; -- parler, à, de
dirV3 : V -&gt; Prep -&gt; V3 ; -- donner,_,à
dirdirV3 : V -&gt; V3 ; -- donner,_,_
</PRE>
<P></P>
<A NAME="toc15"></A>
<A NAME="toc14"></A>
<H3>Other complement patterns</H3>
<P>
Verbs and adjectives can take complements such as sentences,
@@ -390,20 +378,20 @@ questions, verb phrases, and adjectives.
<PRE>
mkV0 : V -&gt; V0 ;
mkVS : V -&gt; VS ;
mkV2S : V -&gt; Preposition -&gt; V2S ;
mkV2S : V -&gt; Prep -&gt; V2S ;
mkVV : V -&gt; VV ; -- plain infinitive: "je veux parler"
deVV : V -&gt; VV ; -- "j'essaie de parler"
aVV : V -&gt; VV ; -- "j'arrive à parler"
mkV2V : V -&gt; Preposition -&gt; Preposition -&gt; V2V ;
mkV2V : V -&gt; Prep -&gt; Prep -&gt; V2V ;
mkVA : V -&gt; VA ;
mkV2A : V -&gt; Preposition -&gt; Preposition -&gt; V2A ;
mkV2A : V -&gt; Prep -&gt; Prep -&gt; V2A ;
mkVQ : V -&gt; VQ ;
mkV2Q : V -&gt; Preposition -&gt; V2Q ;
mkV2Q : V -&gt; Prep -&gt; V2Q ;
mkAS : A -&gt; AS ;
mkA2S : A -&gt; Preposition -&gt; A2S ;
mkAV : A -&gt; Preposition -&gt; AV ;
mkA2V : A -&gt; Preposition -&gt; Preposition -&gt; A2V ;
mkA2S : A -&gt; Prep -&gt; A2S ;
mkAV : A -&gt; Prep -&gt; AV ;
mkA2V : A -&gt; Prep -&gt; Prep -&gt; A2V ;
</PRE>
<P></P>
<P>
@@ -417,12 +405,6 @@ as an adverb. Likewise <CODE>AS, A2S, AV, A2V</CODE> are just <CODE>A</CODE>.
AS, A2S, AV, A2V : Type ;
</PRE>
<P></P>
<A NAME="toc16"></A>
<H2>The definitions of the paradigms</H2>
<P>
The definitions should not bother the user of the API. So they are
hidden from the document.
</P>
<!-- html code generated by txt2tags 2.3 (http://txt2tags.sf.net) -->
<!-- cmdline: txt2tags -thtml -\-toc spanish/ParadigmsSpa.txt -->

View File

@@ -2,63 +2,50 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Swedish Lexical Paradigms</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Swedish Lexical Paradigms</H1>
<FONT SIZE="4">
<I>Last update: 2006-06-15 16:03:55 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Swedish Lexical Paradigms</A>
<UL>
<LI><A HREF="#toc2">Parameters</A>
<LI><A HREF="#toc3">Nouns</A>
<LI><A HREF="#toc1">Parameters</A>
<LI><A HREF="#toc2">Nouns</A>
<UL>
<LI><A HREF="#toc4">Compound nouns</A>
<LI><A HREF="#toc5">Relational nouns</A>
<LI><A HREF="#toc6">Relational common noun phrases</A>
<LI><A HREF="#toc7">Proper names and noun phrases</A>
<LI><A HREF="#toc3">Compound nouns</A>
<LI><A HREF="#toc4">Relational nouns</A>
<LI><A HREF="#toc5">Relational common noun phrases</A>
<LI><A HREF="#toc6">Proper names and noun phrases</A>
</UL>
<LI><A HREF="#toc8">Adjectives</A>
<LI><A HREF="#toc7">Adjectives</A>
<UL>
<LI><A HREF="#toc9">Two-place adjectives</A>
<LI><A HREF="#toc8">Two-place adjectives</A>
</UL>
<LI><A HREF="#toc10">Adverbs</A>
<LI><A HREF="#toc11">Prepositions</A>
<LI><A HREF="#toc12">Verbs</A>
<LI><A HREF="#toc9">Adverbs</A>
<LI><A HREF="#toc10">Verbs</A>
<UL>
<LI><A HREF="#toc13">Verbs with a particle.</A>
<LI><A HREF="#toc14">Deponent verbs.</A>
<LI><A HREF="#toc15">Two-place verbs</A>
<LI><A HREF="#toc16">Three-place verbs</A>
<LI><A HREF="#toc17">Other complement patterns</A>
<LI><A HREF="#toc11">Verbs with a particle.</A>
<LI><A HREF="#toc12">Deponent verbs.</A>
<LI><A HREF="#toc13">Two-place verbs</A>
<LI><A HREF="#toc14">Three-place verbs</A>
<LI><A HREF="#toc15">Other complement patterns</A>
</UL>
<LI><A HREF="#toc18">Definitions of the paradigms</A>
<LI><A HREF="#toc16">Definitions of the paradigms</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<P>
Author:
Last update: Tue Jun 13 11:42:44 2006
</P>
<P>
Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
==
</P>
<P>
# -path=.:../scandinavian:../common:../abstract:../../prelude
</P>
<A NAME="toc1"></A>
<H1>Swedish Lexical Paradigms</H1>
<P>
Aarne Ranta 2003
</P>
<P>
@@ -96,7 +83,7 @@ words.
CatSwe in {
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Parameters</H2>
<P>
To abstract over gender names, we define the following identifiers.
@@ -133,10 +120,11 @@ To abstract over case names, we define the following.
Prepositions used in many-argument functions are just strings.
</P>
<PRE>
Preposition : Type = Str ;
mkPrep : Str -&gt; Prep ;
noPrep : Prep ; -- empty string
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Nouns</H2>
<P>
Worst case: give all four forms. The gender is computed from the
@@ -179,19 +167,19 @@ It does not work if there are changes in the stem.
mk1N : (bilarna : Str) -&gt; N ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H3>Compound nouns</H3>
<P>
All the functions above work quite as well to form compound nouns,
such as <I>fotboll</I>.
</P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H3>Relational nouns</H3>
<P>
Relational nouns (<I>daughter of x</I>) need a preposition.
</P>
<PRE>
mkN2 : N -&gt; Preposition -&gt; N2 ;
mkN2 : N -&gt; Prep -&gt; N2 ;
</PRE>
<P></P>
<P>
@@ -210,10 +198,10 @@ form other prepositions.
Three-place relational nouns (<I>the connection from x to y</I>) need two prepositions.
</P>
<PRE>
mkN3 : N -&gt; Preposition -&gt; Preposition -&gt; N3 ;
mkN3 : N -&gt; Prep -&gt; Prep -&gt; N3 ;
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H3>Relational common noun phrases</H3>
<P>
In some cases, you may want to make a complex <CODE>CN</CODE> into a
@@ -221,13 +209,14 @@ relational noun (e.g. <I>the old town hall of</I>). However, <CODE>N2</CODE> and
<CODE>N3</CODE> are purely lexical categories. But you can use the <CODE>AdvCN</CODE>
and <CODE>PrepNP</CODE> constructions to build phrases like this.
</P>
<A NAME="toc7"></A>
<A NAME="toc6"></A>
<H3>Proper names and noun phrases</H3>
<P>
Proper names, with a regular genitive, are formed as follows
</P>
<PRE>
regPN : Str -&gt; Gender -&gt; PN ; -- John, John's
regGenPN : Str -&gt; Gender -&gt; PN ;
regPN : Str -&gt; PN ; -- utrum
</PRE>
<P></P>
<P>
@@ -245,7 +234,7 @@ genitive, you can use the worst-case function.
mkNP : Str -&gt; Str -&gt; Number -&gt; Gender -&gt; NP ;
</PRE>
<P></P>
<A NAME="toc8"></A>
<A NAME="toc7"></A>
<H2>Adjectives</H2>
<P>
Adjectives may need as many as seven forms.
@@ -284,16 +273,16 @@ Comparison forms may be compound (<I>mera svensk</I> - <I>mest svensk</I>).
compoundA : A -&gt; A ;
</PRE>
<P></P>
<A NAME="toc9"></A>
<A NAME="toc8"></A>
<H3>Two-place adjectives</H3>
<P>
Two-place adjectives need a preposition for their second argument.
</P>
<PRE>
mkA2 : A -&gt; Preposition -&gt; A2 ;
mkA2 : A -&gt; Prep -&gt; A2 ;
</PRE>
<P></P>
<A NAME="toc10"></A>
<A NAME="toc9"></A>
<H2>Adverbs</H2>
<P>
Adverbs are not inflected. Most lexical ones have position
@@ -311,16 +300,7 @@ Adverbs modifying adjectives and sentences can also be formed.
mkAdA : Str -&gt; AdA ;
</PRE>
<P></P>
<A NAME="toc11"></A>
<H2>Prepositions</H2>
<P>
A preposition is just a string.
</P>
<PRE>
mkPreposition : Str -&gt; Preposition ;
</PRE>
<P></P>
<A NAME="toc12"></A>
<A NAME="toc10"></A>
<H2>Verbs</H2>
<P>
The worst case needs five forms.
@@ -358,7 +338,7 @@ In practice, it is enough to give three forms, as in school books.
irregV : (dricka, drack, druckit : Str) -&gt; V ;
</PRE>
<P></P>
<A NAME="toc13"></A>
<A NAME="toc11"></A>
<H3>Verbs with a particle.</H3>
<P>
The particle, such as in <I>passa på</I>, is given as a string.
@@ -367,7 +347,7 @@ The particle, such as in <I>passa p
partV : V -&gt; Str -&gt; V ;
</PRE>
<P></P>
<A NAME="toc14"></A>
<A NAME="toc12"></A>
<H3>Deponent verbs.</H3>
<P>
Some words are used in passive forms only, e.g. <I>hoppas</I>, some as
@@ -378,31 +358,31 @@ reflexive e.g. <I>
reflV : V -&gt; V ;
</PRE>
<P></P>
<A NAME="toc15"></A>
<A NAME="toc13"></A>
<H3>Two-place verbs</H3>
<P>
Two-place verbs need a preposition, except the special case with direct object.
(transitive verbs). Notice that a particle comes from the <CODE>V</CODE>.
</P>
<PRE>
mkV2 : V -&gt; Preposition -&gt; V2 ;
mkV2 : V -&gt; Prep -&gt; V2 ;
dirV2 : V -&gt; V2 ;
</PRE>
<P></P>
<A NAME="toc16"></A>
<A NAME="toc14"></A>
<H3>Three-place verbs</H3>
<P>
Three-place (ditransitive) verbs need two prepositions, of which
the first one or both can be absent.
</P>
<PRE>
mkV3 : V -&gt; Preposition -&gt; Preposition -&gt; V3 ; -- tala med om
dirV3 : V -&gt; Preposition -&gt; V3 ; -- ge _ till
mkV3 : V -&gt; Prep -&gt; Prep -&gt; V3 ; -- tala med om
dirV3 : V -&gt; Prep -&gt; V3 ; -- ge _ till
dirdirV3 : V -&gt; V3 ; -- ge _ _
</PRE>
<P></P>
<A NAME="toc17"></A>
<A NAME="toc15"></A>
<H3>Other complement patterns</H3>
<P>
Verbs and adjectives can take complements such as sentences,
@@ -411,18 +391,18 @@ questions, verb phrases, and adjectives.
<PRE>
mkV0 : V -&gt; V0 ;
mkVS : V -&gt; VS ;
mkV2S : V -&gt; Str -&gt; V2S ;
mkV2S : V -&gt; Prep -&gt; V2S ;
mkVV : V -&gt; VV ;
mkV2V : V -&gt; Str -&gt; Str -&gt; V2V ;
mkV2V : V -&gt; Prep -&gt; Prep -&gt; V2V ;
mkVA : V -&gt; VA ;
mkV2A : V -&gt; Str -&gt; V2A ;
mkV2A : V -&gt; Prep -&gt; V2A ;
mkVQ : V -&gt; VQ ;
mkV2Q : V -&gt; Str -&gt; V2Q ;
mkV2Q : V -&gt; Prep -&gt; V2Q ;
mkAS : A -&gt; AS ;
mkA2S : A -&gt; Str -&gt; A2S ;
mkA2S : A -&gt; Prep -&gt; A2S ;
mkAV : A -&gt; AV ;
mkA2V : A -&gt; Str -&gt; A2V ;
mkA2V : A -&gt; Prep -&gt; A2V ;
</PRE>
<P></P>
<P>
@@ -436,7 +416,7 @@ as an adverb. Likewise <CODE>AS, A2S, AV, A2V</CODE> are just <CODE>A</CODE>.
AS, A2S, AV, A2V : Type ;
</PRE>
<P></P>
<A NAME="toc18"></A>
<A NAME="toc16"></A>
<H2>Definitions of the paradigms</H2>
<P>
The definitions should not bother the user of the API. So they are

View File

@@ -2,21 +2,16 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Phrases and utterances</TITLE>
<TITLE> Phrase: Phrases and Utterances</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Phrases and utterances</H1>
<P ALIGN="center"><CENTER><H1> Phrase: Phrases and Utterances</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:40 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Phrases and utterances</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,8 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Phrases and utterances</H1>
<PRE>
abstract Phrase = Cat ** {
</PRE>

View File

@@ -13,8 +13,7 @@
<HR NOSHADE SIZE=1>
<P></P>
<P>
Author:
Last update: Tue Jun 13 11:42:45 2006
Last update: 2005-11-23 09:16:18 CET
</P>
<P>
Produced by
@@ -22,9 +21,6 @@ gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
==
</P>
<P>
operations for precedence-dependent strings.
five levels:
p4 (constants), p3 (applications), p2 (products), p1 (sums), p0 (arrows)

View File

@@ -6,17 +6,12 @@
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Predefined functions for concrete syntax</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:45 2006
<I>Last update: 2006-02-27 09:41:31 CET</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Predefined functions for concrete syntax</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,8 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Predefined functions for concrete syntax</H1>
<P>
The definitions of these constants are hard-coded in GF, and defined
in <A HREF="../src/GF/Grammar/AppPredefined.hs">AppPredefined.hs</A>. Applying

View File

@@ -13,17 +13,13 @@
<HR NOSHADE SIZE=1>
<P></P>
<P>
Author:
Last update: Tue Jun 13 11:42:45 2006
Last update: 2006-06-02 17:49:44 CEST
</P>
<P>
Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
==
</P>
<PRE>
abstract PredefAbs = {
cat Int ; String ; Float ;

View File

@@ -6,24 +6,20 @@
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> A Small Predication Library</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:44 2006
<I>Last update: 2006-02-28 09:26:58 CET</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">A Small Predication Library</A>
<UL>
<LI><A HREF="#toc2">The category of atomic sentences</A>
<LI><A HREF="#toc3">Predication patterns.</A>
<LI><A HREF="#toc4">Imperatives and infinitives.</A>
<LI><A HREF="#toc5">Individual-valued function applications</A>
<LI><A HREF="#toc6">Families of types</A>
<LI><A HREF="#toc7">Type constructor</A>
<LI><A HREF="#toc1">The category of atomic sentences</A>
<LI><A HREF="#toc2">Predication patterns.</A>
<LI><A HREF="#toc3">Imperatives and infinitives.</A>
<LI><A HREF="#toc4">Individual-valued function applications</A>
<LI><A HREF="#toc5">Families of types</A>
<LI><A HREF="#toc6">Type constructor</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
@@ -33,8 +29,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>A Small Predication Library</H1>
<P>
(c) Aarne Ranta 2003-2006 under Gnu GPL.
</P>
@@ -46,7 +40,7 @@ API of resource grammars.
abstract Predication = Cat ** {
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>The category of atomic sentences</H2>
<P>
We want to use sentences in positive and negative forms but do not care about
@@ -58,7 +52,7 @@ tenses.
NegCl : Cl -&gt; S ; -- negative sentence: "x doesn't intersect y"
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Predication patterns.</H2>
<PRE>
predV : V -&gt; NP -&gt; Cl ; -- one-place verb: "x converges"
@@ -76,14 +70,14 @@ tenses.
predPrep : Prep -&gt; NP -&gt; NP -&gt; Cl ; -- preposition: "x is outside y"
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H2>Imperatives and infinitives.</H2>
<PRE>
impV2 : V2 -&gt; NP -&gt; Phr ; -- imperative: "solve the equation E"
infV2 : V2 -&gt; NP -&gt; Phr ; -- infinitive: "to solve the equation E"
</PRE>
<P></P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H2>Individual-valued function applications</H2>
<PRE>
appN2 : N2 -&gt; NP -&gt; NP ; -- one-place function: "the successor of x"
@@ -91,7 +85,7 @@ tenses.
appColl : N2 -&gt; NP -&gt; NP -&gt; NP ; -- collective function: "the sum of x and y"
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H2>Families of types</H2>
<P>
These are expressed by relational nouns applied to arguments.
@@ -102,7 +96,7 @@ These are expressed by relational nouns applied to arguments.
famColl : N2 -&gt; NP -&gt; NP -&gt; CN ; -- collective family: "path between x and y"
</PRE>
<P></P>
<A NAME="toc7"></A>
<A NAME="toc6"></A>
<H2>Type constructor</H2>
<P>
This is similar to a family except that the argument is a type.

View File

@@ -6,25 +6,21 @@
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> The GF Prelude</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:46 2006
<I>Last update: 2006-02-27 09:41:31 CET</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">The GF Prelude</A>
<UL>
<LI><A HREF="#toc2">Strings, records, and tables</A>
<LI><A HREF="#toc3">Optional elements</A>
<LI><A HREF="#toc4">Infixes. prefixes, and postfixes</A>
<LI><A HREF="#toc5">Booleans</A>
<LI><A HREF="#toc6">High-level acces to Predef operations</A>
<LI><A HREF="#toc7">Lexer-related operations</A>
<LI><A HREF="#toc8">Miscellaneous</A>
<LI><A HREF="#toc1">Strings, records, and tables</A>
<LI><A HREF="#toc2">Optional elements</A>
<LI><A HREF="#toc3">Infixes. prefixes, and postfixes</A>
<LI><A HREF="#toc4">Booleans</A>
<LI><A HREF="#toc5">High-level acces to Predef operations</A>
<LI><A HREF="#toc6">Lexer-related operations</A>
<LI><A HREF="#toc7">Miscellaneous</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
@@ -34,8 +30,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>The GF Prelude</H1>
<P>
This file defines some prelude facilities usable in all grammars.
</P>
@@ -45,7 +39,7 @@ This file defines some prelude facilities usable in all grammars.
oper
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Strings, records, and tables</H2>
<PRE>
SS : Type = {s : Str} ;
@@ -74,7 +68,7 @@ Discontinuous constituents.
sd2 : (_,_ : Str) -&gt; SD2 = \x,y -&gt; {s1 = x ; s2 = y} ;
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Optional elements</H2>
<P>
Missing form.
@@ -106,7 +100,7 @@ Parametric order between two strings.
if_then_Str pr (x ++ y) (y ++ x) ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H2>Infixes. prefixes, and postfixes</H2>
<P>
Fixes with precedences are defined in <A HREF="Precedence.html">Precedence</A>.
@@ -118,7 +112,7 @@ Fixes with precedences are defined in <A HREF="Precedence.html">Precedence</A>.
embedSS : Str -&gt; Str -&gt; SS -&gt; SS = \f,g,x -&gt; ss (f ++ x.s ++ g) ;
</PRE>
<P></P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H2>Booleans</H2>
<PRE>
param Bool = True | False ;
@@ -154,7 +148,7 @@ Interface to internal booleans
last : Tok -&gt; Tok = Predef.dp 1 ;
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H2>High-level acces to Predef operations</H2>
<PRE>
isNil : Tok -&gt; Bool = \b -&gt; pbool2bool (Predef.eqStr [] b) ;
@@ -163,7 +157,7 @@ Interface to internal booleans
case Predef.eqStr t u of {Predef.PTrue =&gt; a ; Predef.PFalse =&gt; b} ;
</PRE>
<P></P>
<A NAME="toc7"></A>
<A NAME="toc6"></A>
<H2>Lexer-related operations</H2>
<P>
Bind together two tokens in some lexers, either obligatorily or optionally
@@ -191,7 +185,7 @@ These should be hidden, and never changed since they are hardcoded in (un)lexers
CAPIT : Str = "&amp;|" ;
</PRE>
<P></P>
<A NAME="toc8"></A>
<A NAME="toc7"></A>
<H2>Miscellaneous</H2>
<P>
Identity function

View File

@@ -2,21 +2,16 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Questions and interrogative pronouns</TITLE>
<TITLE> Question: Questions and Interrogative Pronouns</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Questions and interrogative pronouns</H1>
<P ALIGN="center"><CENTER><H1> Question: Questions and Interrogative Pronouns</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:41 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Questions and interrogative pronouns</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,8 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Questions and interrogative pronouns</H1>
<PRE>
abstract Question = Cat ** {
</PRE>

View File

@@ -6,17 +6,12 @@
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Relative clauses and pronouns</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:41 2006
<I>Last update: 2006-01-25 12:10:58 CET</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Relative clauses and pronouns</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,8 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Relative clauses and pronouns</H1>
<PRE>
abstract Relative = Cat ** {

View File

@@ -2,27 +2,23 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Sentences, clauses, imperatives, and sentential complements</TITLE>
<TITLE> Sentence: Sentences, Clauses, and Imperatives</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Sentences, clauses, imperatives, and sentential complements</H1>
<P ALIGN="center"><CENTER><H1> Sentence: Sentences, Clauses, and Imperatives</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:41 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Sentences, clauses, imperatives, and sentential complements</A>
<UL>
<LI><A HREF="#toc2">Clauses</A>
<LI><A HREF="#toc3">Clauses missing object noun phrases</A>
<LI><A HREF="#toc4">Imperatives</A>
<LI><A HREF="#toc5">Embedded sentences</A>
<LI><A HREF="#toc6">Sentences</A>
<LI><A HREF="#toc1">Clauses</A>
<LI><A HREF="#toc2">Clauses missing object noun phrases</A>
<LI><A HREF="#toc3">Imperatives</A>
<LI><A HREF="#toc4">Embedded sentences</A>
<LI><A HREF="#toc5">Sentences</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
@@ -32,13 +28,11 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Sentences, clauses, imperatives, and sentential complements</H1>
<PRE>
abstract Sentence = Cat ** {
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Clauses</H2>
<P>
The <CODE>NP VP</CODE> predication rule form a clause whose linearization
@@ -59,7 +53,7 @@ is only meaningful for some verb phrases.
PredSCVP : SC -&gt; VP -&gt; Cl ; -- that you go makes me happy
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Clauses missing object noun phrases</H2>
<P>
This category is a variant of the 'slash category' <CODE>S/NP</CODE> of
@@ -77,7 +71,7 @@ the style of CCG.
SlashPrep : Cl -&gt; Prep -&gt; Slash ; -- (with whom) he walks
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H2>Imperatives</H2>
<P>
An imperative is straightforwardly formed from a verb phrase.
@@ -88,7 +82,7 @@ To fix these parameters, see <A HREF="Phrase.html">Phrase</A>.
ImpVP : VP -&gt; Imp ; -- go
</PRE>
<P></P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H2>Embedded sentences</H2>
<P>
Sentences, questions, and infinitival phrases can be used as
@@ -100,7 +94,7 @@ subjects and (adverbial) complements.
EmbedVP : VP -&gt; SC ; -- to go
</PRE>
<P></P>
<A NAME="toc6"></A>
<A NAME="toc5"></A>
<H2>Sentences</H2>
<P>
These are the 2 x 4 x 4 = 16 forms generated by different

View File

@@ -2,21 +2,16 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> GF Resource Grammar API for Structural Words</TITLE>
<TITLE> Structural: Structural Words</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> GF Resource Grammar API for Structural Words</H1>
<P ALIGN="center"><CENTER><H1> Structural: Structural Words</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:41 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">GF Resource Grammar API for Structural Words</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,11 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>GF Resource Grammar API for Structural Words</H1>
<P>
AR 21/11/2003 -- 30/11/2005
</P>
<P>
Here we have some words belonging to closed classes and appearing
in all languages we have considered.

View File

@@ -6,21 +6,17 @@
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Symbolic expressions</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:44 2006
<I>Last update: 2006-03-17 14:11:37 CET</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Symbolic expressions</A>
<UL>
<LI><A HREF="#toc2">Noun phrases with symbols and numbers</A>
<LI><A HREF="#toc3">Sentence consisting of a formula</A>
<LI><A HREF="#toc4">Symbol lists</A>
<LI><A HREF="#toc1">Noun phrases with symbols and numbers</A>
<LI><A HREF="#toc2">Sentence consisting of a formula</A>
<LI><A HREF="#toc3">Symbol lists</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
@@ -30,8 +26,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Symbolic expressions</H1>
<P>
<B>Note</B>. This module is not automatically included in the main
grammar <A HREF="Lang.html">Lang</A>.
@@ -40,7 +34,7 @@ grammar <A HREF="Lang.html">Lang</A>.
abstract Symbol = Cat, PredefAbs ** {
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Noun phrases with symbols and numbers</H2>
<PRE>
fun
@@ -52,13 +46,13 @@ grammar <A HREF="Lang.html">Lang</A>.
CNSymbNP : Det -&gt; CN -&gt; [Symb] -&gt; NP ; -- (the) (2) numbers x and y
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Sentence consisting of a formula</H2>
<PRE>
SymbS : Symb -&gt; S ; -- A
</PRE>
<P></P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H2>Symbol lists</H2>
<P>
A symbol list has at least two elements. The last two are separated

View File

@@ -6,17 +6,12 @@
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Tense, Polarity, and Anteriority</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:41 2006
<I>Last update: 2006-02-27 09:41:31 CET</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Tense, Polarity, and Anteriority</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,8 +20,6 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Tense, Polarity, and Anteriority</H1>
<P>
This module defines the abstract parameters of tense, polarity, and
anteriority, which are used in <A HREF="Tensed.html">Tensed</A> to generate different

View File

@@ -2,21 +2,16 @@
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Texts</TITLE>
<TITLE> Text: Texts</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Texts</H1>
<P ALIGN="center"><CENTER><H1> Text: Texts</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:41 2006
<I>Last update: 2006-06-15 09:19:39 CEST</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Texts</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
@@ -25,16 +20,19 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>Texts</H1>
<P>
Texts are built from an empty text by adding <CODE>Phr</CODE>ases,
using as constructors the punctuation marks <I>.</I>, <I>?</I>, and <I>!</I>.
Any punctuation mark can be attached to any kind of phrase.
</P>
<PRE>
abstract Text = Common ** {
fun
TEmpty : Text ;
TFullStop : Phr -&gt; Text -&gt; Text ;
TQuestMark : Phr -&gt; Text -&gt; Text ;
TExclMark : Phr -&gt; Text -&gt; Text ;
TEmpty : Text ; --
TFullStop : Phr -&gt; Text -&gt; Text ; -- John walks. ...
TQuestMark : Phr -&gt; Text -&gt; Text ; -- Are you OK? ...
TExclMark : Phr -&gt; Text -&gt; Text ; -- John walks! ...
}
</PRE>

View File

@@ -6,22 +6,18 @@
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> The construction of verb phrases</H1>
<FONT SIZE="4">
<I>Author: </I><BR>
Last update: Tue Jun 13 11:42:41 2006
<I>Last update: 2006-02-27 09:41:31 CET</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">The construction of verb phrases</A>
<UL>
<LI><A HREF="#toc2">Complementization rules</A>
<LI><A HREF="#toc3">Other ways of forming verb phrases</A>
<LI><A HREF="#toc4">Complements to copula</A>
<LI><A HREF="#toc5">Coercions</A>
<LI><A HREF="#toc1">Complementization rules</A>
<LI><A HREF="#toc2">Other ways of forming verb phrases</A>
<LI><A HREF="#toc3">Complements to copula</A>
<LI><A HREF="#toc4">Coercions</A>
</UL>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
@@ -31,13 +27,11 @@ Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<A NAME="toc1"></A>
<H1>The construction of verb phrases</H1>
<PRE>
abstract Verb = Cat ** {
</PRE>
<P></P>
<A NAME="toc2"></A>
<A NAME="toc1"></A>
<H2>Complementization rules</H2>
<P>
Verb phrases are constructed from verbs by providing their
@@ -57,7 +51,7 @@ complements. There is one rule for each verb category.
ComplV2A : V2A -&gt; NP -&gt; AP -&gt; VP ; -- paint the house red
</PRE>
<P></P>
<A NAME="toc3"></A>
<A NAME="toc2"></A>
<H2>Other ways of forming verb phrases</H2>
<P>
Verb phrases can also be constructed reflexively and from
@@ -98,7 +92,7 @@ vs. next to (or before) the verb.
<B>Agents of passives</B> are constructed as adverbs with the
preposition <A HREF="Structural.html">Structural</A><CODE>.8agent_Prep</CODE>.
</P>
<A NAME="toc4"></A>
<A NAME="toc3"></A>
<H2>Complements to copula</H2>
<P>
Adjectival phrases, noun phrases, and adverbs can be used.
@@ -109,7 +103,7 @@ Adjectival phrases, noun phrases, and adverbs can be used.
CompAdv : Adv -&gt; Comp ; -- (be) here
</PRE>
<P></P>
<A NAME="toc5"></A>
<A NAME="toc4"></A>
<H2>Coercions</H2>
<P>
Verbs can change subcategorization patterns in systematic ways,

View File

@@ -8,18 +8,18 @@ flags
lin
airplane_N = regN "airplane" ;
answer_V2S = mkV2S (regV "answer") "to" ;
answer_V2S = mkV2S (regV "answer") toP ;
apartment_N = regN "apartment" ;
apple_N = regN "apple" ;
art_N = regN "art" ;
ask_V2Q = mkV2Q (regV "ask") [] ;
ask_V2Q = mkV2Q (regV "ask") noPrep ;
baby_N = regN "baby" ;
bad_A = mkADeg "bad" "badly" "worse" "worst" ;
bank_N = regN "bank" ;
beautiful_A = regADeg "beautiful" ;
become_VA = mkVA (irregV "become" "became" "become") ;
beer_N = regN "beer" ;
beg_V2V = mkV2V (regDuplV "beg") [] "to" ;
beg_V2V = mkV2V (regDuplV "beg") noPrep toP ;
big_A = duplADeg "big" ;
bike_N = regN "bike" ;
bird_N = regN "bird" ;
@@ -60,12 +60,12 @@ lin
cow_N = regN "cow" ;
die_V = (regV "die") ;
dirty_A = regADeg "dirty" ;
distance_N3 = mkN3 (regN "distance") "from" "to" ;
distance_N3 = mkN3 (regN "distance") fromP toP ;
doctor_N = regN "doctor" ;
dog_N = regN "dog" ;
door_N = regN "door" ;
drink_V2 = dirV2 (irregV "drink" "drank" "drunk") ;
easy_A2V = mkA2V (regA "easy") "for" ;
easy_A2V = mkA2V (regA "easy") forP ;
eat_V2 = dirV2 (irregV "eat" "ate" "eaten") ;
empty_A = regADeg "empty" ;
enemy_N = regN "enemy" ;
@@ -108,14 +108,14 @@ lin
leather_N = regN "leather" ;
leave_V2 = dirV2 (irregV "leave" "left" "left") ;
like_V2 = dirV2 (regV "like") ;
listen_V2 = mkV2 (regV "listen") "to" ;
listen_V2 = mkV2 (regV "listen") toP ;
live_V = (regV "live") ;
long_A = regADeg "long" ;
lose_V2 = dirV2 (irregV "lose" "lost" "lost") ;
love_N = regN "love" ;
love_V2 = dirV2 (regV "love") ;
man_N = mk2N "man" "men" ;
married_A2 = mkA2 (regA "married") "to" ;
married_A2 = mkA2 (regA "married") toP ;
meat_N = regN "meat" ;
milk_N = regN "milk" ;
moon_N = regN "moon" ;
@@ -128,9 +128,9 @@ lin
oil_N = regN "oil" ;
old_A = regADeg "old" ;
open_V2 = dirV2 (regV "open") ;
paint_V2A = mkV2A (regV "paint") [] ;
paint_V2A = mkV2A (regV "paint") noPrep ;
paper_N = regN "paper" ;
paris_PN = regPN "Paris" nonhuman ;
paris_PN = regPN "Paris" ;
peace_N = regN "peace" ;
pen_N = regN "pen" ;
planet_N = regN "planet" ;
@@ -157,8 +157,8 @@ lin
sea_N = regN "sea" ;
seek_V2 = dirV2 (irregV "seek" "sought" "sought") ;
see_V2 = dirV2 (irregV "see" "saw" "seen") ;
sell_V3 = dirV3 (irregV "sell" "sold" "sold") "to" ;
send_V3 = dirV3 (irregV "send" "sent" "sent") "to" ;
sell_V3 = dirV3 (irregV "sell" "sold" "sold") toP ;
send_V3 = dirV3 (irregV "send" "sent" "sent") toP ;
sheep_N = mk2N "sheep" "sheep" ;
ship_N = regN "ship" ;
shirt_N = regN "shirt" ;
@@ -182,7 +182,7 @@ lin
switch8off_V2 = dirV2 (partV (regV "switch") "off") ;
switch8on_V2 = dirV2 (partV (regV "switch") "on") ;
table_N = regN "table" ;
talk_V3 = mkV3 (regV "talk") "to" "about" ;
talk_V3 = mkV3 (regV "talk") toP aboutP ;
teacher_N = regN "teacher" ;
teach_V2 = dirV2 (irregV "teach" "taught" "taught") ;
television_N = regN "television" ;
@@ -196,7 +196,7 @@ lin
understand_V2 = dirV2 (irregV "understand" "understood" "understood") ;
university_N = regN "university" ;
village_N = regN "village" ;
wait_V2 = mkV2 (regV "wait") "for" ;
wait_V2 = mkV2 (regV "wait") forP ;
walk_V = (regV "walk") ;
warm_A = regADeg "warm" ;
war_N = regN "war" ;
@@ -217,9 +217,9 @@ lin
now_Adv = mkAdv "now" ;
already_Adv = mkAdv "already" ;
song_N = regN "song" ;
add_V3 = dirV3 (regV "add") "to" ;
add_V3 = dirV3 (regV "add") toP ;
number_N = regN "number" ;
put_V2 = mkV2 (irregDuplV "put" "put" "put") [] ;
put_V2 = mkV2 (irregDuplV "put" "put" "put") noPrep ;
stop_V = regDuplV "stop" ;
jump_V = regV "jump" ;
@@ -311,7 +311,7 @@ lin
flow_V = regV "flow" ;
fly_V = fly_V ;
freeze_V = freeze_V ;
give_V3 = dirV3 give_V "to" ;
give_V3 = dirV3 give_V toP ;
laugh_V = regV "laugh" ;
lie_V = lie_V ;
play_V = regV "play" ;
@@ -351,4 +351,13 @@ lin
-- other_A = regA "other" ;
oper
aboutP = mkPrep "about" ;
atP = mkPrep "at" ;
forP = mkPrep "for" ;
fromP = mkPrep "from" ;
inP = mkPrep "in" ;
onP = mkPrep "on" ;
toP = mkPrep "to" ;
} ;

View File

@@ -58,8 +58,8 @@ oper
genitive : Case ;
-- Prepositions are used in many-argument functions for rection.
-- The resource category $Prep$ is used.
Preposition : Type ;
--2 Nouns
@@ -96,19 +96,19 @@ oper
--
-- Relational nouns ("daughter of x") need a preposition.
mkN2 : N -> Preposition -> N2 ;
mkN2 : N -> Prep -> N2 ;
-- The most common preposition is "of", and the following is a
-- shortcut for regular relational nouns with "of".
regN2 : Str -> N2 ;
-- Use the function $mkPreposition$ or see the section on prepositions below to
-- Use the function $mkPrep$ or see the section on prepositions below to
-- form other prepositions.
--
-- Three-place relational nouns ("the connection from x to y") need two prepositions.
mkN3 : N -> Preposition -> Preposition -> N3 ;
mkN3 : N -> Prep -> Prep -> N3 ;
--3 Relational common noun phrases
@@ -116,15 +116,16 @@ oper
-- In some cases, you may want to make a complex $CN$ into a
-- relational noun (e.g. "the old town hall of").
cnN2 : CN -> Preposition -> N2 ;
cnN3 : CN -> Preposition -> Preposition -> N3 ;
cnN2 : CN -> Prep -> N2 ;
cnN3 : CN -> Prep -> Prep -> N3 ;
--
--3 Proper names and noun phrases
--
-- Proper names, with a regular genitive, are formed as follows
regPN : Str -> Gender -> PN ; -- John, John's
regPN : Str -> PN ;
regGenPN : Str -> Gender -> PN ; -- John, John's
-- Sometimes you can reuse a common noun as a proper name, e.g. "Bank".
@@ -151,7 +152,7 @@ oper
--
-- Two-place adjectives need a preposition for their second argument.
mkA2 : A -> Preposition -> A2 ;
mkA2 : A -> Prep -> A2 ;
-- Comparison adjectives may two more forms.
@@ -197,8 +198,8 @@ oper
-- A preposition as used for rection in the lexicon, as well as to
-- build $PP$s in the resource API, just requires a string.
mkPreposition : Str -> Preposition ;
mkPrep : Str -> Prep ;
mkPrep : Str -> Prep ;
noPrep : Prep ;
-- (These two functions are synonyms.)
@@ -247,7 +248,7 @@ oper
-- Two-place verbs need a preposition, except the special case with direct object.
-- (transitive verbs). Notice that a particle comes from the $V$.
mkV2 : V -> Preposition -> V2 ;
mkV2 : V -> Prep -> V2 ;
dirV2 : V -> V2 ;
@@ -256,9 +257,9 @@ oper
-- Three-place (ditransitive) verbs need two prepositions, of which
-- the first one or both can be absent.
mkV3 : V -> Preposition -> Preposition -> V3 ; -- speak, with, about
dirV3 : V -> Preposition -> V3 ; -- give,_,to
dirdirV3 : V -> V3 ; -- give,_,_
mkV3 : V -> Prep -> Prep -> V3 ; -- speak, with, about
dirV3 : V -> Prep -> V3 ; -- give,_,to
dirdirV3 : V -> V3 ; -- give,_,_
--3 Other complement patterns
--
@@ -267,18 +268,18 @@ oper
mkV0 : V -> V0 ;
mkVS : V -> VS ;
mkV2S : V -> Str -> V2S ;
mkV2S : V -> Prep -> V2S ;
mkVV : V -> VV ;
mkV2V : V -> Str -> Str -> V2V ;
mkV2V : V -> Prep -> Prep -> V2V ;
mkVA : V -> VA ;
mkV2A : V -> Str -> V2A ;
mkV2A : V -> Prep -> V2A ;
mkVQ : V -> VQ ;
mkV2Q : V -> Str -> V2Q ;
mkV2Q : V -> Prep -> V2Q ;
mkAS : A -> AS ;
mkA2S : A -> Str -> A2S ;
mkA2S : A -> Prep -> A2S ;
mkAV : A -> AV ;
mkA2V : A -> Str -> A2V ;
mkA2V : A -> Prep -> A2V ;
-- Notice: categories $V2S, V2V, V2A, V2Q$ are in v 1.0 treated
-- just as synonyms of $V2$, and the second argument is given
@@ -288,12 +289,11 @@ oper
V0, V2S, V2V, V2A, V2Q : Type ;
AS, A2S, AV, A2V : Type ;
--.
--2 Definitions of paradigms
--
-- The definitions should not bother the user of the API. So they are
-- hidden from the document.
--.
Gender = MorphoEng.Gender ;
Number = MorphoEng.Number ;
@@ -307,7 +307,7 @@ oper
nominative = Nom ;
genitive = Gen ;
Preposition = Str ;
Preposition : Type = Str ; -- obsolete
regN = \ray ->
let
@@ -345,13 +345,14 @@ oper
compoundN s n = {s = \\x,y => s ++ n.s ! x ! y ; g=n.g ; lock_N = <>} ;
mkN2 = \n,p -> n ** {lock_N2 = <> ; c2 = p} ;
regN2 n = mkN2 (regN n) (mkPreposition "of") ;
mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p ; c3 = q} ;
cnN2 = \n,p -> n ** {lock_N2 = <> ; c2 = p} ;
cnN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p ; c3 = q} ;
mkN2 = \n,p -> n ** {lock_N2 = <> ; c2 = p.s} ;
regN2 n = mkN2 (regN n) (mkPrep "of") ;
mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p.s ; c3 = q.s} ;
cnN2 = \n,p -> n ** {lock_N2 = <> ; c2 = p.s} ;
cnN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p.s ; c3 = q.s} ;
regPN n g = nameReg n g ** {lock_PN = <>} ;
regPN n = regGenPN n human ;
regGenPN n g = nameReg n g ** {lock_PN = <>} ;
nounPN n = {s = n.s ! singular ; g = n.g ; lock_PN = <>} ;
mkNP x y n g = {s = table {Gen => x ; _ => y} ; a = agrP3 n ;
lock_NP = <>} ;
@@ -359,7 +360,7 @@ oper
mkA a b = mkAdjective a a a b ** {lock_A = <>} ;
regA a = regAdjective a ** {lock_A = <>} ;
mkA2 a p = a ** {c2 = p ; lock_A2 = <>} ;
mkA2 a p = a ** {c2 = p.s ; lock_A2 = <>} ;
ADeg = A ; ----
@@ -394,8 +395,8 @@ oper
mkAdV x = ss x ** {lock_AdV = <>} ;
mkAdA x = ss x ** {lock_AdA = <>} ;
mkPreposition p = p ;
mkPrep p = ss p ** {lock_Prep = <>} ;
noPrep = mkPrep [] ;
mkV a b c d e = mkVerb a b c d e ** {s1 = [] ; lock_V = <>} ;
@@ -434,12 +435,12 @@ oper
partV v p = verbPart v p ** {lock_V = <>} ;
reflV v = {s = v.s ; part = v.part ; lock_V = v.lock_V ; isRefl = True} ;
mkV2 v p = v ** {s = v.s ; s1 = v.s1 ; c2 = p ; lock_V2 = <>} ;
dirV2 v = mkV2 v [] ;
mkV2 v p = v ** {s = v.s ; s1 = v.s1 ; c2 = p.s ; lock_V2 = <>} ;
dirV2 v = mkV2 v noPrep ;
mkV3 v p q = v ** {s = v.s ; s1 = v.s1 ; c2 = p ; c3 = q ; lock_V3 = <>} ;
dirV3 v p = mkV3 v [] p ;
dirdirV3 v = dirV3 v [] ;
mkV3 v p q = v ** {s = v.s ; s1 = v.s1 ; c2 = p.s ; c3 = q.s ; lock_V3 = <>} ;
dirV3 v p = mkV3 v noPrep p ;
dirdirV3 v = dirV3 v noPrep ;
mkVS v = v ** {lock_VS = <>} ;
mkVV v = {

View File

@@ -203,6 +203,7 @@ oper
-- Proper names can be formed by using declensions for nouns.
-- The plural forms are filtered away by the compiler.
regPN : Str -> PN ;
mkPN : N -> PN ;
mkNP : N -> Number -> NP ;
@@ -333,9 +334,9 @@ oper
V0, V2S, V2V, V2Q : Type ;
AS, A2S, AV, A2V : Type ;
--.
-- The definitions should not bother the user of the API. So they are
-- hidden from the document.
--.
Case = MorphoFin.Case ;
Number = MorphoFin.Number ;
@@ -472,6 +473,7 @@ reg3N = \vesi,veden,vesi
mkN2 = \n,c -> n ** {c2 = c ; lock_N2 = <>} ;
mkN3 = \n,c,e -> n ** {c2 = c ; c3 = e ; lock_N3 = <>} ;
genN2 = \n -> mkN2 n (casePrep genitive) ;
regPN m = mkPN (regN m) ;
mkPN n = mkProperName n ** {lock_PN = <>} ;
mkNP noun num = {
s = \\c => noun.s ! NCase num (npform2case c) ;

View File

@@ -57,13 +57,11 @@ oper
-- amalgamate with the following word (the 'genitive' "de" and the
-- 'dative' "à").
Preposition : Type ;
accusative : Prep ;
genitive : Prep ;
dative : Prep ;
accusative : Preposition ;
genitive : Preposition ;
dative : Preposition ;
mkPreposition : Str -> Preposition ;
mkPrep : Str -> Prep ;
--2 Nouns
@@ -102,7 +100,7 @@ oper
--
-- Relational nouns ("fille de x") need a case and a preposition.
mkN2 : N -> Preposition -> N2 ;
mkN2 : N -> Prep -> N2 ;
-- The most common cases are the genitive "de" and the dative "à",
-- with the empty preposition.
@@ -112,7 +110,7 @@ oper
-- Three-place relational nouns ("la connection de x à y") need two prepositions.
mkN3 : N -> Preposition -> Preposition -> N3 ;
mkN3 : N -> Prep -> Prep -> N3 ;
--3 Relational common noun phrases
@@ -127,7 +125,10 @@ oper
--
-- Proper names need a string and a gender.
mkPN : Str -> Gender -> PN ; -- Jean
mkPN : Str -> Gender -> PN ; -- Jean
regPN : Str -> PN ; -- masculine
-- To form a noun phrase that can also be plural,
-- you can use the worst-case function.
@@ -160,7 +161,7 @@ oper
--
-- Two-place adjectives need a preposition for their second argument.
mkA2 : A -> Preposition -> A2 ;
mkA2 : A -> Prep -> A2 ;
--3 Comparison adjectives
@@ -227,7 +228,7 @@ oper
-- Two-place verbs need a preposition, except the special case with direct object.
-- (transitive verbs). Notice that a particle comes from the $V$.
mkV2 : V -> Preposition -> V2 ;
mkV2 : V -> Prep -> V2 ;
dirV2 : V -> V2 ;
@@ -240,9 +241,9 @@ oper
-- Three-place (ditransitive) verbs need two prepositions, of which
-- the first one or both can be absent.
mkV3 : V -> Preposition -> Preposition -> V3 ; -- parler, à, de
dirV3 : V -> Preposition -> V3 ; -- donner,_,à
dirdirV3 : V -> V3 ; -- donner,_,_
mkV3 : V -> Prep -> Prep -> V3 ; -- parler, à, de
dirV3 : V -> Prep -> V3 ; -- donner,_,à
dirdirV3 : V -> V3 ; -- donner,_,_
--3 Other complement patterns
--
@@ -251,20 +252,20 @@ oper
mkV0 : V -> V0 ;
mkVS : V -> VS ;
mkV2S : V -> Preposition -> V2S ;
mkV2S : V -> Prep -> V2S ;
mkVV : V -> VV ; -- plain infinitive: "je veux parler"
deVV : V -> VV ; -- "j'essaie de parler"
aVV : V -> VV ; -- "j'arrive à parler"
mkV2V : V -> Preposition -> Preposition -> V2V ;
mkV2V : V -> Prep -> Prep -> V2V ;
mkVA : V -> VA ;
mkV2A : V -> Preposition -> Preposition -> V2A ;
mkV2A : V -> Prep -> Prep -> V2A ;
mkVQ : V -> VQ ;
mkV2Q : V -> Preposition -> V2Q ;
mkV2Q : V -> Prep -> V2Q ;
mkAS : A -> AS ;
mkA2S : A -> Preposition -> A2S ;
mkAV : A -> Preposition -> AV ;
mkA2V : A -> Preposition -> Preposition -> A2V ;
mkA2S : A -> Prep -> A2S ;
mkAV : A -> Prep -> AV ;
mkA2V : A -> Prep -> Prep -> A2V ;
-- Notice: categories $V2S, V2V, V2Q$ are in v 1.0 treated
-- just as synonyms of $V2$, and the second argument is given
@@ -274,11 +275,12 @@ oper
V0, V2S, V2V, V2Q : Type ;
AS, A2S, AV, A2V : Type ;
--.
--2 Definitions of the paradigms
--
-- The definitions should not bother the user of the API. So they are
-- hidden from the document.
--.
Gender = MorphoFre.Gender ;
Number = MorphoFre.Number ;
@@ -291,7 +293,12 @@ oper
accusative = complAcc ;
genitive = complGen ;
dative = complDat ;
mkPreposition p = {s = p ; c = Acc ; isDir = False} ;
mkPrep p = {s = p ; c = Acc ; isDir = False} ;
--- obsolete
Preposition : Type ;
mkPreposition : Str -> Preposition ;
mkPreposition = mkPrep ;
mkN x y g = mkCNomIrreg x y g ** {lock_N = <>} ;
regN x = regGenN x g where {
@@ -308,6 +315,7 @@ oper
aN2 n = mkN2 n dative ;
mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p ; c3 = q} ;
regPN x = mkPN x masculine ;
mkPN x g = {s = x ; g = g} ** {lock_PN = <>} ;
mkNP x g n = {s = (pn2np (mkPN x g)).s; a = agrP3 g n ; hasClit = False} ** {lock_NP = <>} ;

View File

@@ -1,5 +1,5 @@
--# -path=.:../common:../abstract:../../prelude
--
--1 German Lexical Paradigms
--
-- Aarne Ranta & Harald Hammarström 2003--2006
@@ -235,12 +235,13 @@ oper
AS, A2S, AV, A2V : Type ;
--.
--2 Definitions of paradigms
--
-- The definitions should not bother the user of the API. So they are
-- hidden from the document.
--.
Gender = MorphoGer.Gender ;
Case = MorphoGer.Case ;

View File

@@ -0,0 +1,5 @@
concrete ExtraIta of ExtraItaAbs = ExtraRomanceIta **
open CommonRomance, PhonoIta, ParamX, ResIta in {
}

View File

@@ -0,0 +1,6 @@
-- Structures special for Italian. These are not implemented in other
-- Romance languages.
abstract ExtraItaAbs = ExtraRomanceAbs ** {
}

View File

@@ -0,0 +1,2 @@
concrete ExtraRomanceIta of ExtraRomanceAbs = CatIta ** ExtraRomance with
(ResRomance = ResIta) ;

View File

@@ -0,0 +1,7 @@
--# -path=.:../romance:../abstract:../common:prelude
concrete Italian of ItalianAbs =
LangIta,
-- IrregIta,
ExtraIta
** {} ;

View File

@@ -0,0 +1,5 @@
abstract ItalianAbs =
Lang,
-- IrregItaAbs,
ExtraItaAbs
** {} ;

View File

@@ -130,7 +130,7 @@ lin
old_A = prefA (regADeg "vecchio") ;
open_V2 = dirV2 (verboV (aprire_102 "aprire")) ;
paint_V2A =
mkV2A (verboV (cingere_31 "pingere")) accusative (mkPreposition "in") ;
mkV2A (verboV (cingere_31 "pingere")) accusative (mkPrep "in") ; ----
paper_N = regN "carta" ;
paris_PN = mkPN "Parigi" masculine ;
peace_N = femN (regN "pace") ;

View File

@@ -58,13 +58,13 @@ oper
-- amalgamate with the following word (the 'genitive' "de" and the
-- 'dative' "à").
Preposition : Type ;
Prep : Type ;
accusative : Preposition ;
genitive : Preposition ;
dative : Preposition ;
accusative : Prep ;
genitive : Prep ;
dative : Prep ;
mkPreposition : Str -> Preposition ;
mkPrep : Str -> Prep ;
--2 Nouns
@@ -98,7 +98,7 @@ oper
--
-- Relational nouns ("figlio di x") need a case and a preposition.
mkN2 : N -> Preposition -> N2 ;
mkN2 : N -> Prep -> N2 ;
-- The most common cases are the genitive "di" and the dative "a",
-- with the empty preposition.
@@ -108,7 +108,7 @@ oper
-- Three-place relational nouns ("la connessione di x a y") need two prepositions.
mkN3 : N -> Preposition -> Preposition -> N3 ;
mkN3 : N -> Prep -> Prep -> N3 ;
--3 Relational common noun phrases
@@ -123,7 +123,8 @@ oper
--
-- Proper names need a string and a gender.
mkPN : Str -> Gender -> PN ; -- Jean
mkPN : Str -> Gender -> PN ;
regPN : Str -> PN ; -- masculine
-- To form a noun phrase that can also be plural,
-- you can use the worst-case function.
@@ -153,7 +154,7 @@ oper
--
-- Two-place adjectives need a preposition for their second argument.
mkA2 : A -> Preposition -> A2 ;
mkA2 : A -> Prep -> A2 ;
--3 Comparison adjectives
@@ -217,7 +218,7 @@ oper
-- Two-place verbs need a preposition, except the special case with direct object.
-- (transitive verbs). Notice that a particle comes from the $V$.
mkV2 : V -> Preposition -> V2 ;
mkV2 : V -> Prep -> V2 ;
dirV2 : V -> V2 ;
@@ -230,9 +231,9 @@ oper
-- Three-place (ditransitive) verbs need two prepositions, of which
-- the first one or both can be absent.
mkV3 : V -> Preposition -> Preposition -> V3 ; -- parler, à, de
dirV3 : V -> Preposition -> V3 ; -- donner,_,à
dirdirV3 : V -> V3 ; -- donner,_,_
mkV3 : V -> Prep -> Prep -> V3 ; -- parlare, a, di
dirV3 : V -> Prep -> V3 ; -- dare,_,a
dirdirV3 : V -> V3 ; -- dare,_,_
--3 Other complement patterns
@@ -242,20 +243,20 @@ oper
mkV0 : V -> V0 ;
mkVS : V -> VS ;
mkV2S : V -> Preposition -> V2S ;
mkVV : V -> VV ; -- plain infinitive: "je veux parler"
deVV : V -> VV ; -- "j'essaie de parler"
aVV : V -> VV ; -- "j'arrive à parler"
mkV2V : V -> Preposition -> Preposition -> V2V ;
mkV2S : V -> Prep -> V2S ;
mkVV : V -> VV ; -- plain infinitive: "voglio parlare"
deVV : V -> VV ; -- "cerco di parlare"
aVV : V -> VV ; -- "arrivo a parlare"
mkV2V : V -> Prep -> Prep -> V2V ;
mkVA : V -> VA ;
mkV2A : V -> Preposition -> Preposition -> V2A ;
mkV2A : V -> Prep -> Prep -> V2A ;
mkVQ : V -> VQ ;
mkV2Q : V -> Preposition -> V2Q ;
mkV2Q : V -> Prep -> V2Q ;
mkAS : A -> AS ;
mkA2S : A -> Preposition -> A2S ;
mkAV : A -> Preposition -> AV ;
mkA2V : A -> Preposition -> Preposition -> A2V ;
mkA2S : A -> Prep -> A2S ;
mkAV : A -> Prep -> AV ;
mkA2V : A -> Prep -> Prep -> A2V ;
-- Notice: categories $V2S, V2V, V2Q$ are in v 1.0 treated
-- just as synonyms of $V2$, and the second argument is given
@@ -266,11 +267,12 @@ oper
AS, A2S, AV, A2V : Type ;
--.
--2 The definitions of the paradigms
--
-- The definitions should not bother the user of the API. So they are
-- hidden from the document.
--.
Gender = MorphoIta.Gender ;
Number = MorphoIta.Number ;
@@ -279,11 +281,11 @@ oper
singular = Sg ;
plural = Pl ;
Preposition = Compl ;
Prep = Compl ;
accusative = complAcc ;
genitive = complGen ;
dative = complDat ;
mkPreposition p = {s = p ; c = Acc ; isDir = False} ;
mkPrep p = {s = p ; c = Acc ; isDir = False} ;
mkN x y g = mkNounIrreg x y g ** {lock_N = <>} ;
regN x = mkNomReg x ** {lock_N = <>} ;
@@ -298,6 +300,7 @@ oper
mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p ; c3 = q} ;
mkPN x g = {s = x ; g = g} ** {lock_PN = <>} ;
regPN x = mkPN x masculine ;
mkNP x g n = {s = (pn2np (mkPN x g)).s; a = agrP3 g n ; hasClit = False} ** {lock_NP = <>} ;
mkA a b c d e =

View File

@@ -6,7 +6,7 @@ concrete StructuralIta of Structural = CatIta **
lin
above_Prep = {s = ["sopra"] ; c = MorphoIta.genitive ; isDir = False} ;
after_Prep = mkPreposition "dopo" ;
after_Prep = mkPrep "dopo" ;
all_Predet = {
s = \\a,c => prepCase c ++ aagrForms "tutto" "tutta" "tutti" "tutte" ! a ;
c = Nom
@@ -16,16 +16,16 @@ lin
although_Subj = ss "benché" ** {m = Conjunct} ;
and_Conj = ss "e" ** {n = Pl} ;
because_Subj = ss "perché" ** {m = Indic} ;
before_Prep = mkPreposition "prima" ;
behind_Prep = mkPreposition "dietro" ;
between_Prep = mkPreposition "fra" ;
before_Prep = mkPrep "prima" ;
behind_Prep = mkPrep "dietro" ;
between_Prep = mkPrep "fra" ;
both7and_DConj = {s1,s2 = "e" ; n = Pl} ;
but_PConj = ss "ma" ;
by8agent_Prep = {s = [] ; c = CPrep P_da} ;
by8means_Prep = mkPreposition "per" ;
by8agent_Prep = {s = [] ; c = CPrep P_da ; isDir = False} ;
by8means_Prep = mkPrep "per" ;
can8know_VV = mkVV (verboV (sapere_78 "sapere")) ;
can_VV = mkVV (verboV (potere_69 "potere")) ;
during_Prep = mkPreposition "durante" ;
during_Prep = mkPrep "durante" ;
either7or_DConj = {s1,s2 = "o" ; n = Sg} ;
everybody_NP = mkNP ["tutti"] Masc Pl ;
every_Det = {s = \\_,_ => "ogni" ; n = Sg} ;
@@ -44,12 +44,12 @@ lin
how_IAdv = ss "come" ;
how8many_IDet = {s = \\g,c => prepCase c ++ genForms "quanti" "quante" ! g ; n = Pl} ;
if_Subj = ss "se" ** {m = Indic} ;
in8front_Prep = mkPreposition "davanti" ;
in8front_Prep = mkPrep "davanti" ;
i_Pron =
mkPronoun
"io" "mi" "mi" "me" "me" "mio" "mia" "miei" "mie"
Fem Sg P1 ;
in_Prep = {s = [] ; c = CPrep P_in} ;
in_Prep = {s = [] ; c = CPrep P_in ; isDir = False} ;
it_Pron =
mkPronoun
"lui" "lo" "gli" "glie" "lui" "suo" "sua" "suoi" "sue"
@@ -61,7 +61,7 @@ lin
much_Det = {s = \\g,c => prepCase c ++ genForms "molto" "molta" ! g ; n = Sg} ;
must_VV = mkVV (verboV (dovere_47 "dovere")) ;
no_Phr = ss "no" ;
on_Prep = {s = [] ; c = CPrep P_su} ;
on_Prep = {s = [] ; c = CPrep P_su ; isDir = False} ;
one_Quant = {s = \\g,c => prepCase c ++ genForms "uno" "una" ! g} ;
only_Predet = {s = \\_,c => prepCase c ++ "soltanto" ; c = Nom} ; --- solo|a|i|e
or_Conj = {s = "o" ; n = Sg} ;
@@ -103,10 +103,10 @@ lin
} ;
this_NP = pn2np (mkPN ["questo"] Masc) ;
those_NP = mkNP ["quelle"] Fem Pl ;
through_Prep = mkPreposition "per" ;
through_Prep = mkPrep "per" ;
too_AdA = ss "troppo" ;
to_Prep = complDat ;
under_Prep = mkPreposition "sotto" ;
under_Prep = mkPrep "sotto" ;
very_AdA = ss "molto" ;
want_VV = mkVV (verboV (volere_96 "volere")) ;
we_Pron =
@@ -122,8 +122,8 @@ lin
whoPl_IP = {s = \\c => prepCase c ++ "chi" ; a = aagr Fem Pl} ;
whoSg_IP = {s = \\c => prepCase c ++ "chi" ; a = aagr Fem Sg} ;
why_IAdv = ss "perché" ;
without_Prep = mkPreposition "senza" ;
with_Prep = {s = [] ; c = CPrep P_con} ;
without_Prep = mkPrep "senza" ;
with_Prep = {s = [] ; c = CPrep P_con ; isDir = False} ;
yes_Phr = ss "sì" ;
youSg_Pron = mkPronoun
"tu" "ti" "ti" "te" "te" "tuo" "tua" "tuoi" "tue"

View File

@@ -8,18 +8,18 @@ flags startcat=Phr ; lexer=textlit ; unlexer=text ;
lin
airplane_N = mk2N "fly" "flyet" ;
answer_V2S = mkV2S (regV "svare") "til" ;
answer_V2S = mkV2S (regV "svare") (mkPrep "til") ;
apartment_N = mk2N "leilighet" "leiligheten" ;
apple_N = mk2N "eple" "eplet" ;
art_N = mk2N "kunst" "kunsten" ;
ask_V2Q = mkV2Q spørre_V [] ;
ask_V2Q = mkV2Q spørre_V noPrep ;
baby_N = mk2N "baby" "babyen" ;
bad_A = regADeg "dårlig" ; ----
bank_N = mk2N "bank" "banken" ;
beautiful_A = mk3ADeg "vakker" "vakkert" "vakra" ;
become_VA = mkVA (vaereV bli_V) ;
beer_N = regGenN "øl" neutrum ;
beg_V2V = mkV2V be_V [] "at" ;
beg_V2V = mkV2V be_V noPrep (mkPrep "at") ;
big_A = irregADeg "stor" "større" "størst";
bike_N = mkN "sykkel" "sykkelen" "sykler" "syklene" ;
bird_N = mk2N "fugl" "fuglen" ;
@@ -33,7 +33,7 @@ lin
bread_N = regGenN "brød" neutrum ;
break_V2 = dirV2 (mk2V "knuse" "knuste") ;
broad_A = regADeg "bred" ;
brother_N2 = mkN2 ( (mkN "bror" "broren" "brødre" "brødrene")) "til" ;
brother_N2 = mkN2 ( (mkN "bror" "broren" "brødre" "brødrene")) (mkPrep "til") ;
brown_A = regADeg "brun" ;
butter_N = regGenN "smør" neutrum ;
buy_V2 = dirV2 (mk2V "kjøpe" "kjøpte") ;
@@ -60,17 +60,17 @@ lin
cow_N = mkN "ku" "kua" "kyr" "kyrne" ; ----
die_V = vaereV dø_V ;
dirty_A = mk3ADeg "skitten" "skittent" "skitne" ; ----
distance_N3 = mkN3 (regGenN "avstand" masculine) "fra" "til" ;
distance_N3 = mkN3 (regGenN "avstand" masculine) (mkPrep "fra") (mkPrep "til") ;
doctor_N = mk2N "lege" "legen" ;
dog_N = regGenN "hund" masculine ;
door_N = regGenN "dør" feminine ;
drink_V2 = dirV2 drikke_V ;
easy_A2V = mkA2V (regA "grei") "for" ;
easy_A2V = mkA2V (regA "grei") (mkPrep "for") ;
eat_V2 = dirV2 (mk2V "spise" "spiste") ;
empty_A = mkADeg "tom" "tomt" "tomme" "tommere" "tommest" ;
enemy_N = regGenN "fiende" masculine ;
factory_N = mk2N "fabrikk" "fabrikken" ;
father_N2 = mkN2 ( (mkN "far" "faren" "fedre" "fedrene")) "til" ;
father_N2 = mkN2 ( (mkN "far" "faren" "fedre" "fedrene")) (mkPrep "til") ;
fear_VS = mkVS (regV "frykte") ;
find_V2 = dirV2 (irregV "finne" "fann" "funnet") ;
fish_N = mk2N "fisk" "fisken" ;
@@ -115,11 +115,11 @@ lin
love_N = regGenN "kjærlighet" masculine ;
love_V2 = dirV2 (regV "elske") ;
man_N = (mkN "mann" "mannen" "menn" "mennen") ;
married_A2 = mkA2 (mk2A "gift" "gift") "med" ;
married_A2 = mkA2 (mk2A "gift" "gift") (mkPrep "med") ;
meat_N = regGenN "kjøtt" neutrum ;
milk_N = regGenN "melk" masculine ;
moon_N = regGenN "måne" masculine ;
mother_N2 = mkN2 (mkN "mor" "moren" "mødre" "mødrene") "til" ; ---- fem
mother_N2 = mkN2 (mkN "mor" "moren" "mødre" "mødrene") (mkPrep "til") ; ---- fem
mountain_N = regGenN "berg" neutrum ;
music_N = mk2N "musikk" "musikken" ;
narrow_A = regADeg "smal" ;
@@ -128,9 +128,9 @@ lin
oil_N = regGenN "olje" masculine ;
old_A = mkADeg "gammel" "gammelt" "gamle" "eldre" "eldst" ;
open_V2 = dirV2 (regV "åpne") ;
paint_V2A = mkV2A (regV "male") [] ;
paint_V2A = mkV2A (regV "male") noPrep ;
paper_N = regGenN "papir" neutrum ; ----
paris_PN = regPN "Paris" neutrum ;
paris_PN = regGenPN "Paris" neutrum ;
peace_N = regGenN "fred" masculine ;
pen_N = regGenN "penn" masculine ;
planet_N = mk2N "planet" "planeten" ;
@@ -155,10 +155,10 @@ lin
school_N = regGenN "skole" feminine;
science_N = mk2N "vitenskap" "vitenskapen" ;
sea_N = mk2N "sjø" "sjøen" ;
seek_V2 = mkV2 (mk2V "lete" "lette") "etter" ;
seek_V2 = mkV2 (mk2V "lete" "lette") (mkPrep "etter") ;
see_V2 = dirV2 se_V ;
sell_V3 = dirV3 selge_V "til" ;
send_V3 = dirV3 (mk2V "sende" "sendte") "til" ;
sell_V3 = dirV3 selge_V (mkPrep "til") ;
send_V3 = dirV3 (mk2V "sende" "sendte") (mkPrep "til") ;
sheep_N = mk2N "får" "fåret" ;
ship_N = regGenN "skip" neutrum ;
shirt_N = regGenN "skjorte" feminine ;
@@ -182,7 +182,7 @@ lin
switch8off_V2 = dirV2 (partV (irregV "slå" "slo" "slått") "av") ;
switch8on_V2 = dirV2 (partV (irregV "slå" "slo" "slått") "på") ;
table_N = regGenN "bord" neutrum ;
talk_V3 = mkV3 (regV "snakke") "til" "om" ;
talk_V3 = mkV3 (regV "snakke") (mkPrep "til") (mkPrep "om") ;
teacher_N = mkN "lærer" "læreren" "lærere" "lærerne" ;
teach_V2 = dirV2 (mk2V "undervise" "underviste") ;
television_N = mk2N "fjernsyn" "fjernsynet" ;
@@ -196,11 +196,11 @@ lin
understand_V2 = dirV2 (irregV "forstå" "forstod" "forstått") ;
university_N = regGenN "universitet" neutrum ;
village_N = mk2N "grend" "grenda" ;
wait_V2 = mkV2 (regV "vente") "på" ;
wait_V2 = mkV2 (regV "vente") (mkPrep "på") ;
walk_V = vaereV gå_V ;
warm_A = regADeg "varm" ;
war_N = regGenN "krig" masculine ;
watch_V2 = mkV2 se_V "på" ;
watch_V2 = mkV2 se_V (mkPrep "på") ;
water_N = mk2N "vatn" "vatnet" ;
white_A = regADeg "hvit" ;
window_N = mkN "vindu" "vinduet" "vinduer" "vinduene" ; ---- er?
@@ -217,9 +217,9 @@ lin
now_Adv = mkAdv "nå" ;
already_Adv = mkAdv "allerede" ;
song_N = mk2N "sang" "sangen" ;
add_V3 = mkV3 (partV (irregV "legge" "la" "lagt") "til") [] "til" ;
add_V3 = mkV3 (partV (irregV "legge" "la" "lagt") "til") noPrep (mkPrep "til") ;
number_N = mk2N "nummer" "nummeret" ;
put_V2 = mkV2 (irregV "sette" "satte" "satt") [] ;
put_V2 = mkV2 (irregV "sette" "satte" "satt") noPrep ;
stop_V = vaereV (regV "stanse") ;
jump_V = regV "hoppe" ;

View File

@@ -60,7 +60,8 @@ oper
-- Prepositions used in many-argument functions are just strings.
Preposition : Type = Str ;
mkPrep : Str -> Prep ;
noPrep : Prep ; -- empty string
--2 Nouns
@@ -97,19 +98,19 @@ oper
--
-- Relational nouns ("daughter of x") need a preposition.
mkN2 : N -> Preposition -> N2 ;
mkN2 : N -> Prep -> N2 ;
-- The most common preposition is "av", and the following is a
-- shortcut for regular, $nonhuman$ relational nouns with "av".
regN2 : Str -> Gender -> N2 ;
-- Use the function $mkPreposition$ or see the section on prepositions below to
-- Use the function $mkPrep$ or see the section on prepositions below to
-- form other prepositions.
--
-- Three-place relational nouns ("the connection from x to y") need two prepositions.
mkN3 : N -> Preposition -> Preposition -> N3 ;
mkN3 : N -> Prep -> Prep -> N3 ;
--3 Relational common noun phrases
@@ -124,7 +125,8 @@ oper
--
-- Proper names, with a regular genitive, are formed as follows
regPN : Str -> Gender -> PN ; -- John, John's
regPN : Str -> PN ; -- utrum
regGenPN : Str -> Gender -> PN ;
-- Sometimes you can reuse a common noun as a proper name, e.g. "Bank".
@@ -153,7 +155,7 @@ oper
--
-- Two-place adjectives need a preposition for their second argument.
mkA2 : A -> Preposition -> A2 ;
mkA2 : A -> Prep -> A2 ;
-- Comparison adjectives may need as many as five forms.
@@ -191,11 +193,6 @@ oper
mkAdA : Str -> AdA ;
--2 Prepositions
--
-- A preposition is just a string.
mkPreposition : Str -> Preposition ;
--2 Verbs
--
@@ -243,7 +240,7 @@ oper
-- Two-place verbs need a preposition, except the special case with direct object.
-- (transitive verbs). Notice that a particle comes from the $V$.
mkV2 : V -> Preposition -> V2 ;
mkV2 : V -> Prep -> V2 ;
dirV2 : V -> V2 ;
@@ -252,9 +249,9 @@ oper
-- Three-place (ditransitive) verbs need two prepositions, of which
-- the first one or both can be absent.
mkV3 : V -> Str -> Str -> V3 ; -- speak, with, about
dirV3 : V -> Str -> V3 ; -- give,_,to
dirdirV3 : V -> V3 ; -- give,_,_
mkV3 : V -> Prep -> Prep -> V3 ; -- speak, with, about
dirV3 : V -> Prep -> V3 ; -- give,_,to
dirdirV3 : V -> V3 ; -- give,_,_
--3 Other complement patterns
--
@@ -263,18 +260,18 @@ oper
mkV0 : V -> V0 ;
mkVS : V -> VS ;
mkV2S : V -> Str -> V2S ;
mkV2S : V -> Prep -> V2S ;
mkVV : V -> VV ;
mkV2V : V -> Str -> Str -> V2V ;
mkV2V : V -> Prep -> Prep -> V2V ;
mkVA : V -> VA ;
mkV2A : V -> Str -> V2A ;
mkV2A : V -> Prep -> V2A ;
mkVQ : V -> VQ ;
mkV2Q : V -> Str -> V2Q ;
mkV2Q : V -> Prep -> V2Q ;
mkAS : A -> AS ;
mkA2S : A -> Str -> A2S ;
mkA2S : A -> Prep -> A2S ;
mkAV : A -> AV ;
mkA2V : A -> Str -> A2V ;
mkA2V : A -> Prep -> A2V ;
-- Notice: categories $V2S, V2V, V2A, V2Q$ are in v 1.0 treated
-- just as synonyms of $V2$, and the second argument is given
@@ -285,11 +282,11 @@ oper
AS, A2S, AV, A2V : Type ;
--.
--2 Definitions of the paradigms
--
-- The definitions should not bother the user of the API. So they are
-- hidden from the document.
--.
Gender = MorphoNor.Gender ;
Number = MorphoNor.Number ;
@@ -331,11 +328,12 @@ oper
} ;
mkN2 = \n,p -> n ** {lock_N2 = <> ; c2 = p} ;
regN2 n g = mkN2 (regGenN n g) (mkPreposition "av") ;
mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p ; c3 = q} ;
mkN2 = \n,p -> n ** {lock_N2 = <> ; c2 = p.s} ;
regN2 n g = mkN2 (regGenN n g) (mkPrep "av") ;
mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p.s ; c3 = q.s} ;
regPN n g = {s = \\c => mkCase c n ; g = g} ** {lock_PN = <>} ;
regGenPN n g = {s = \\c => mkCase c n ; g = g} ** {lock_PN = <>} ;
regPN n = regGenPN n utrum ;
nounPN n = {s = n.s ! singular ! Indef ; g = n.g ; lock_PN = <>} ;
mkNP x y n g =
{s = table {NPPoss _ => x ; _ => y} ; a = agrP3 g n ;
@@ -345,7 +343,7 @@ oper
mk2A a b = mkA a b (a + "e") ;
regA a = (regADeg a) ** {isComp = False ; lock_A = <>} ;
mkA2 a p = a ** {c2 = p ; lock_A2 = <>} ;
mkA2 a p = a ** {c2 = p.s ; lock_A2 = <>} ;
mkADeg a b c d e = mkAdject a b c d e ** {isComp = False ; lock_A = <>} ;
regADeg a = case Predef.dp 2 a of {
@@ -366,7 +364,8 @@ oper
mkAdV x = ss x ** {lock_AdV = <>} ;
mkAdA x = ss x ** {lock_AdA = <>} ;
mkPreposition p = p ;
mkPrep p = {s = p ; lock_Prep = <>} ;
noPrep = mkPrep [] ;
mkV a b c d e f = mkVerb6 a b c d e f **
{part = [] ; vtype = VAct ; isVaere = False ; lock_V = <>} ;
@@ -404,12 +403,12 @@ oper
depV v = {s = v.s ; part = v.part ; vtype = VPass ; isVaere = False ; lock_V = <>} ;
reflV v = {s = v.s ; part = v.part ; vtype = VRefl ; isVaere = False ; lock_V = <>} ;
mkV2 v p = v ** {c2 = p ; lock_V2 = <>} ;
dirV2 v = mkV2 v [] ;
mkV2 v p = v ** {c2 = p.s ; lock_V2 = <>} ;
dirV2 v = mkV2 v noPrep ;
mkV3 v p q = v ** {c2 = p ; c3 = q ; lock_V3 = <>} ;
dirV3 v p = mkV3 v [] p ;
dirdirV3 v = dirV3 v [] ;
mkV3 v p q = v ** {c2 = p.s ; c3 = q.s ; lock_V3 = <>} ;
dirV3 v p = mkV3 v noPrep p ;
dirdirV3 v = dirV3 v noPrep ;
mkV0 v = v ** {lock_V0 = <>} ;
mkVS v = v ** {lock_VS = <>} ;

View File

@@ -65,7 +65,7 @@ incomplete concrete CatRomance of Cat =
Conj = {s : Str ; n : Number} ;
DConj = {s1,s2 : Str ; n : Number} ;
Subj = {s : Str ; m : Mood} ;
Prep = {s : Str ; c : Case} ;
Prep = {s : Str ; c : Case ; isDir : Bool} ;
-- Open lexical classes, e.g. Lexicon

View File

@@ -143,6 +143,7 @@ nPepel : Str -> N ; -- masculine, inanimate, ending with "-ел"- "пеп-л
-- Proper names.
mkPN : Str -> Gender -> Animacy -> PN ; -- "Иван", "Маша"
regPN : Str -> PN ;
nounPN : N -> PN ;
-- On the top level, it is maybe $CN$ that is used rather than $N$, and
@@ -292,10 +293,11 @@ perfective: Aspect ;
mkV3 : V -> Str -> Str -> Case -> Case -> V3 ; -- "сложить письмо в конверт"
dirV2 : V -> V2 ; -- "видеть", "любить"
tvDirDir : V -> V3 ;
--.
-- The definitions should not bother the user of the API. So they are
-- hidden from the document.
--.
Gender = MorphoRus.Gender ;
Case = MorphoRus.Case ;
Number = MorphoRus.Number ;
@@ -450,6 +452,8 @@ regN = \ray ->
Masc => mkProperNameMasc ivan anim ;
_ => mkProperNameFem ivan anim
} ** {lock_PN =<>};
regPN x = mkPN x masculine animate ;
nounPN n = {s=\\c => n.s! SF Sg c; anim=n.anim; g=n.g; lock_PN=<>};
mkCN = UseN;

View File

@@ -0,0 +1,2 @@
concrete ExtraRomanceSpa of ExtraRomanceAbs = CatSpa ** ExtraRomance with
(ResRomance = ResSpa) ;

View File

@@ -0,0 +1,5 @@
concrete ExtraSpa of ExtraSpaAbs = ExtraRomanceSpa **
open CommonRomance, PhonoSpa, ParamX, ResSpa in {
}

View File

@@ -0,0 +1,6 @@
-- Structures special for Spanish. These are not implemented in other
-- Romance languages.
abstract ExtraSpaAbs = ExtraRomanceAbs ** {
}

View File

@@ -128,7 +128,7 @@ lin
oil_N = regN "aceite" ;
old_A = prefA (regADeg "viejo") ;
open_V2 = dirV2 (special_ppV (regV "abrir") "abierto") ;
paint_V2A = mkV2A (regV "pintar") accusative (mkPreposition "en") ;
paint_V2A = mkV2A (regV "pintar") accusative (mkPrep "en") ;
paper_N = regN "papel" ;
paris_PN = mkPN "Paris" masculine ;
peace_N = femN (regN "paz") ;

View File

@@ -55,13 +55,13 @@ oper
-- amalgamate with the following word (the 'genitive' "de" and the
-- 'dative' "à").
Preposition : Type ;
Prep : Type ;
accusative : Preposition ;
genitive : Preposition ;
dative : Preposition ;
accusative : Prep ;
genitive : Prep ;
dative : Prep ;
mkPreposition : Str -> Preposition ;
mkPrep : Str -> Prep ;
--2 Nouns
@@ -100,7 +100,7 @@ oper
--
-- Relational nouns ("fille de x") need a case and a preposition.
mkN2 : N -> Preposition -> N2 ;
mkN2 : N -> Prep -> N2 ;
-- The most common cases are the genitive "de" and the dative "a",
-- with the empty preposition.
@@ -110,7 +110,7 @@ oper
-- Three-place relational nouns ("la connessione di x a y") need two prepositions.
mkN3 : N -> Preposition -> Preposition -> N3 ;
mkN3 : N -> Prep -> Prep -> N3 ;
--3 Relational common noun phrases
@@ -125,7 +125,9 @@ oper
--
-- Proper names need a string and a gender.
mkPN : Str -> Gender -> PN ; -- Jean
mkPN : Str -> Gender -> PN ; -- Jean
regPN : Str -> PN ; -- masculine
-- To form a noun phrase that can also be plural,
-- you can use the worst-case function.
@@ -156,7 +158,7 @@ oper
--
-- Two-place adjectives need a preposition for their second argument.
mkA2 : A -> Preposition -> A2 ;
mkA2 : A -> Prep -> A2 ;
--3 Comparison adjectives
@@ -221,7 +223,7 @@ oper
-- Two-place verbs need a preposition, except the special case with direct object.
-- (transitive verbs). Notice that a particle comes from the $V$.
mkV2 : V -> Preposition -> V2 ;
mkV2 : V -> Prep -> V2 ;
dirV2 : V -> V2 ;
@@ -234,9 +236,9 @@ oper
-- Three-place (ditransitive) verbs need two prepositions, of which
-- the first one or both can be absent.
mkV3 : V -> Preposition -> Preposition -> V3 ; -- parler, à, de
dirV3 : V -> Preposition -> V3 ; -- donner,_,à
dirdirV3 : V -> V3 ; -- donner,_,_
mkV3 : V -> Prep -> Prep -> V3 ; -- parler, à, de
dirV3 : V -> Prep -> V3 ; -- donner,_,à
dirdirV3 : V -> V3 ; -- donner,_,_
--3 Other complement patterns
--
@@ -245,20 +247,20 @@ oper
mkV0 : V -> V0 ;
mkVS : V -> VS ;
mkV2S : V -> Preposition -> V2S ;
mkV2S : V -> Prep -> V2S ;
mkVV : V -> VV ; -- plain infinitive: "je veux parler"
deVV : V -> VV ; -- "j'essaie de parler"
aVV : V -> VV ; -- "j'arrive à parler"
mkV2V : V -> Preposition -> Preposition -> V2V ;
mkV2V : V -> Prep -> Prep -> V2V ;
mkVA : V -> VA ;
mkV2A : V -> Preposition -> Preposition -> V2A ;
mkV2A : V -> Prep -> Prep -> V2A ;
mkVQ : V -> VQ ;
mkV2Q : V -> Preposition -> V2Q ;
mkV2Q : V -> Prep -> V2Q ;
mkAS : A -> AS ;
mkA2S : A -> Preposition -> A2S ;
mkAV : A -> Preposition -> AV ;
mkA2V : A -> Preposition -> Preposition -> A2V ;
mkA2S : A -> Prep -> A2S ;
mkAV : A -> Prep -> AV ;
mkA2V : A -> Prep -> Prep -> A2V ;
-- Notice: categories $V2S, V2V, V2Q$ are in v 1.0 treated
-- just as synonyms of $V2$, and the second argument is given
@@ -269,11 +271,11 @@ oper
AS, A2S, AV, A2V : Type ;
--.
--2 The definitions of the paradigms
--
-- The definitions should not bother the user of the API. So they are
-- hidden from the document.
--.
Gender = MorphoSpa.Gender ;
Number = MorphoSpa.Number ;
@@ -282,11 +284,11 @@ oper
singular = Sg ;
plural = Pl ;
Preposition = Compl ;
Prep = Compl ;
accusative = complAcc ;
genitive = complGen ;
dative = complDat ;
mkPreposition p = {s = p ; c = Acc ; isDir = False} ;
mkPrep p = {s = p ; c = Acc ; isDir = False} ;
mkN x y g = mkNounIrreg x y g ** {lock_N = <>} ;
@@ -301,6 +303,7 @@ oper
mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p ; c3 = q} ;
mkPN x g = {s = x ; g = g} ** {lock_PN = <>} ;
regPN x = mkPN x masculine ;
mkNP x g n = {s = (pn2np (mkPN x g)).s; a = agrP3 g n ; hasClit = False} ** {lock_NP = <>} ;
mkA a b c d e =

View File

@@ -0,0 +1,7 @@
--# -path=.:../romance:../abstract:../common:prelude
concrete Spanish of SpanishAbs =
LangSpa,
-- IrregSpa,
ExtraSpa
** {} ;

View File

@@ -0,0 +1,5 @@
abstract SpanishAbs =
Lang,
-- IrregSpaAbs,
ExtraSpaAbs
** {} ;

View File

@@ -5,7 +5,7 @@ concrete StructuralSpa of Structural = CatSpa **
lin
above_Prep = mkPreposition "sobre" ;
above_Prep = mkPrep "sobre" ;
after_Prep = {s = ["despues"] ; c = MorphoSpa.genitive ; isDir = False} ;
all_Predet = {
s = \\a,c => prepCase c ++ aagrForms "todo" "toda" "todos" "todas" ! a ;
@@ -18,14 +18,14 @@ lin
because_Subj = ss "porque" ** {m = Indic} ;
before_Prep = {s = "antes" ; c = MorphoSpa.genitive ; isDir = False} ;
behind_Prep = {s = "detrás" ; c = MorphoSpa.genitive ; isDir = False} ;
between_Prep = mkPreposition "entre" ;
between_Prep = mkPrep "entre" ;
both7and_DConj = {s1,s2 = etConj.s ; n = Pl} ;
but_PConj = ss "pero" ;
by8agent_Prep = mkPreposition "por" ;
by8means_Prep = mkPreposition "por" ;
by8agent_Prep = mkPrep "por" ;
by8means_Prep = mkPrep "por" ;
can8know_VV = mkVV (verboV (saber_71 "saber")) ;
can_VV = mkVV (verboV (poder_58 "poder")) ;
during_Prep = mkPreposition "durante" ; ----
during_Prep = mkPrep "durante" ; ----
either7or_DConj = {s1,s2 = "o" ; n = Sg} ;
everybody_NP = mkNP ["todos"] Masc Pl ;
every_Det = {s = \\_,_ => "cada" ; n = Sg} ;
@@ -52,7 +52,7 @@ lin
"yo" "me" "me" "mí"
"mi" "mi" "mis" "mis"
Fem Sg P1 ;
in_Prep = mkPreposition "en" ;
in_Prep = mkPrep "en" ;
it_Pron =
mkPronoun
"el" "lo" "le" "él"
@@ -65,7 +65,7 @@ lin
much_Det = {s = \\g,c => prepCase c ++ genForms "mucho" "mucha" ! g ; n = Sg} ;
must_VV = mkVV (verboV (deber_6 "deber")) ;
no_Phr = ss "no" ;
on_Prep = mkPreposition "sobre" ;
on_Prep = mkPrep "sobre" ;
one_Quant = {s = \\g,c => prepCase c ++ genForms "uno" "una" ! g} ;
only_Predet = {s = \\_,c => prepCase c ++ "solamente" ; c = Nom} ;
or_Conj = {s = "o" ; n = Sg} ;
@@ -109,10 +109,10 @@ lin
} ;
this_NP = pn2np (mkPN ["esto"] Masc) ;
those_NP = mkNP ["esas"] Fem Pl ;
through_Prep = mkPreposition "por" ;
through_Prep = mkPrep "por" ;
too_AdA = ss "demasiado" ;
to_Prep = complDat ;
under_Prep = mkPreposition "bajo" ;
under_Prep = mkPrep "bajo" ;
very_AdA = ss "muy" ;
want_VV = mkVV (verboV (querer_64 "querer")) ;
we_Pron =
@@ -130,8 +130,8 @@ lin
whoPl_IP = {s = \\c => prepCase c ++ "quién" ; a = aagr Fem Pl} ;
whoSg_IP = {s = \\c => prepCase c ++ "quién" ; a = aagr Fem Sg} ;
why_IAdv = ss "porqué" ;
without_Prep = mkPreposition "sin" ;
with_Prep = mkPreposition "con" ;
without_Prep = mkPrep "sin" ;
with_Prep = mkPrep "con" ;
yes_Phr = ss "sí" ;
youSg_Pron = mkPronoun
"tu" "te" "te" "tí"

View File

@@ -0,0 +1,7 @@
-- Structures special for Swedish. These are not implemented in other
-- Scandinavian languages.
abstract ExtraSweAbs = ExtraScandAbs ** {
}

View File

@@ -8,18 +8,18 @@ flags
lin
airplane_N = regGenN "flygplan" neutrum ;
answer_V2S = mkV2S (regV "svarar") "till" ;
answer_V2S = mkV2S (regV "svarar") (mkPrep "till") ;
apartment_N = mk2N "lägenhet" "lägenheter" ;
apple_N = regGenN "äpple" neutrum ;
art_N = mk2N "konst" "konster" ;
ask_V2Q = mkV2Q (regV "frågar") [] ;
ask_V2Q = mkV2Q (regV "frågar") noPrep ;
baby_N = regGenN "bebis" utrum ;
bad_A = irregA "dålig" "sämre" "sämst";
bank_N = mk2N "bank" "banker" ;
beautiful_A = mk3A "vacker" "vackert" "vackra" ;
become_VA = mkVA (mkV "bli" "blir""bli" "blev" "blivit" "bliven") ;
beer_N = regGenN "öl" neutrum ;
beg_V2V = mkV2V (mkV "be" "ber""be" "blad" "bett" "bedd") [] "att" ;
beg_V2V = mkV2V (mkV "be" "ber""be" "blad" "bett" "bedd") noPrep (mkPrep "att") ;
big_A = irregA "stor" "större" "störst";
bike_N = mk2N "cykel" "cyklar" ;
bird_N = mk2N "fågel" "fåglar" ;
@@ -33,7 +33,7 @@ lin
bread_N = regGenN "bröd" neutrum ;
break_V2 = dirV2 (partV (mkV "slå" "slår" "slå" "slog" "slagit" "slagen") "sönder") ;
broad_A = mk2A "bred" "brett" ;
brother_N2 = mkN2 ((mkN "bror" "brodern" "bröder" "bröderna")) "till" ;
brother_N2 = mkN2 ((mkN "bror" "brodern" "bröder" "bröderna")) (mkPrep "till") ;
brown_A = regA "brun" ;
butter_N = regGenN "smör" neutrum ;
buy_V2 = dirV2 (mk2V "köpa" "köpte") ;
@@ -59,18 +59,18 @@ lin
cousin_N = mk2N "kusin" "kusiner" ;
cow_N = mk2N "ko" "kor" ;
die_V = (mkV "dö" "dör" "dö" "dog" "dött" "dödd") ; ----
distance_N3 = mkN3 (mk2N "avstånd" "avstånd") "från" "till" ;
distance_N3 = mkN3 (mk2N "avstånd" "avstånd") (mkPrep "från") (mkPrep "till") ;
dirty_A = regA "smutsig" ;
doctor_N = mk2N "läkare" "läkare" ;
dog_N = regGenN "hund" utrum ;
door_N = regGenN "dörr" utrum ;
drink_V2 = dirV2 (irregV "dricka" "drack" "druckit") ;
easy_A2V = mkA2V (mk2A "lätt" "lätt") "för" ;
easy_A2V = mkA2V (mk2A "lätt" "lätt") (mkPrep "för") ;
eat_V2 = dirV2 (irregV "äta" "åt" "ätit") ;
empty_A = mkA "tom" "tomt" "tomma" "tomma" "tommare" "tommast" "tommaste" ;
enemy_N = regGenN "fiende" neutrum ;
factory_N = mk2N "fabrik" "fabriker" ;
father_N2 = mkN2 ((mkN "far" "fadern" "fäder" "fäderna")) "till" ;
father_N2 = mkN2 ((mkN "far" "fadern" "fäder" "fäderna")) (mkPrep "till") ;
fear_VS = mkVS (regV "fruktar") ;
find_V2 = dirV2 (irregV "finna" "fann" "funnit") ;
fish_N = mk2N "fisk" "fiskar" ;
@@ -108,19 +108,19 @@ lin
learn_V2 = dirV2 (reflV (mkV "lära" "lär" "lär" "lärde" "lärt" "lärd")) ;
leather_N = mkN "läder" "lädret" "läder" "lädren" ;
leave_V2 = dirV2 (regV "lämnar") ;
like_V2 = mkV2 (mk2V "tycka" "tyckte") "om" ;
listen_V2 = mkV2 (regV "lyssnar") "på" ;
like_V2 = mkV2 (mk2V "tycka" "tyckte") (mkPrep "om") ;
listen_V2 = mkV2 (regV "lyssnar") (mkPrep "på") ;
live_V = (irregV "leva" "levde" "levt") ; ---- ?
long_A = irregA "lång" "längre" "längst" ;
lose_V2 = dirV2 (regV "förlora") ;
love_N = regGenN "kärlek" utrum ;
love_V2 = dirV2 (regV "älska") ;
man_N = (mkN "man" "mannen" "män" "männen") ;
married_A2 = mkA2 (mk2A "gift" "gift") "med" ;
married_A2 = mkA2 (mk2A "gift" "gift") (mkPrep "med") ;
meat_N = regGenN "kött" neutrum ;
milk_N = regGenN "mjölk" utrum ; ---- -ar?
moon_N = regGenN "måne" utrum ;
mother_N2 = mkN2 (mkN "mor" "modern" "mödrar" "mödrarna") "till" ;
mother_N2 = mkN2 (mkN "mor" "modern" "mödrar" "mödrarna") (mkPrep "till") ;
mountain_N = regGenN "berg" neutrum ;
music_N = mk2N "musik" "musiker" ; ---- er ?
narrow_A = regA "smal" ;
@@ -129,9 +129,9 @@ lin
oil_N = regGenN "olja" utrum ;
old_A = mkA "gammal" "gammalt" "gamla" "gamla" "äldre" "äldst" "äldsta" ;
open_V2 = dirV2 (regV "öppna") ;
paint_V2A = mkV2A (regV "måla") [] ;
paint_V2A = mkV2A (regV "måla") noPrep ;
paper_N = mkN "papper" "pappret" "papper" "pappren" ;
paris_PN = regPN "Paris" neutrum ;
paris_PN = regGenPN "Paris" neutrum ;
peace_N = regGenN "fred" utrum ; ---- ar?
pen_N = regGenN "penna" utrum ;
planet_N = mk2N "planet" "planeter" ;
@@ -158,8 +158,8 @@ lin
sea_N = mkN "sjö" "sjön" "sjöar" "sjöarna" ;
seek_V2 = dirV2 (mk2V "söka" "sökte") ;
see_V2 = dirV2 (mkV "se" "ser" "se" "såg" "sett" "sedd") ;
sell_V3 = dirV3 (irregV "sälja" "sålde" "sålt") "till" ;
send_V3 = dirV3 (regV "skicka") "till" ;
sell_V3 = dirV3 (irregV "sälja" "sålde" "sålt") (mkPrep "till") ;
send_V3 = dirV3 (regV "skicka") (mkPrep "till") ;
sheep_N = mk2N "får" "får" ;
ship_N = regGenN "skepp" neutrum ;
shirt_N = regGenN "skjorta" utrum ;
@@ -183,7 +183,7 @@ lin
switch8off_V2 = dirV2 (partV (irregV "stänga" "stängde" "stängt") "av") ;
switch8on_V2 = dirV2 (partV (irregV "slå" "slog" "slagit") "på") ;
table_N = regGenN "bord" neutrum ;
talk_V3 = mkV3 (regV "prata") "till" "om" ;
talk_V3 = mkV3 (regV "prata") (mkPrep "till") (mkPrep "om") ;
teacher_N = mk2N "lärare" "lärare" ;
teach_V2 = dirV2 (regV "undervisa") ;
television_N = mk2N "television" "televisioner" ;
@@ -197,11 +197,11 @@ lin
understand_V2 = dirV2 (mkV "förstå" "förstår" "förstå" "förstod" "förstått" "förstådd") ;
university_N = regGenN "universitet" neutrum ;
village_N = mkN "by" "byn" "byar" "byarna" ;
wait_V2 = mkV2 (regV "vänta") "på" ;
wait_V2 = mkV2 (regV "vänta") (mkPrep "på") ;
walk_V = (mkV "gå" "går" "gå" "gick" "gått" "gången") ;
warm_A = regA "varm" ;
war_N = regGenN "krig" neutrum ;
watch_V2 = mkV2 (regV "titta") "på" ;
watch_V2 = mkV2 (regV "titta") (mkPrep "på") ;
water_N = mkN "vatten" "vattnet" "vatten" "vattnen" ;
white_A = regA "vit" ;
window_N = mkN "fönster" "fönstret" "fönster" "fönstren" ;
@@ -218,9 +218,9 @@ lin
now_Adv = mkAdv "nu" ;
already_Adv = mkAdv "redan" ;
song_N = mk2N "sång" "sånger" ;
add_V3 = mkV3 (partV (irregV "lägga" "lade" "lagt") "till") [] "till" ;
add_V3 = mkV3 (partV (irregV "lägga" "lade" "lagt") "till") noPrep (mkPrep "till") ;
number_N = mkN "nummer" "numret" "numren" "numren" ;
put_V2 = mkV2 (mkV "sätta" "sätter" "sätt" "satte" "satt" "satt") [] ;
put_V2 = mkV2 (mkV "sätta" "sätter" "sätt" "satte" "satt" "satt") noPrep ;
stop_V = regV "stanna" ;
jump_V = regV "hoppa" ;
@@ -315,7 +315,7 @@ lin
flow_V = rinna_V ;
fly_V = flyga_V ;
freeze_V = frysa_V ;
give_V3 = dirV3 giva_V "till";
give_V3 = dirV3 giva_V (mkPrep "till");
hit_V2 = dirV2 (slå_V) ;
hold_V2 = dirV2 (hålla_V) ;
hunt_V2 = dirV2 (regV "jaga") ;
@@ -348,6 +348,7 @@ lin
wipe_V2 = dirV2 (regV "torka") ;
breathe_V = depV (regV "anda") ;
fight_V2 = mkV2 (mkV "slåss" "slåss" "slåss" "slogs" "slagits" "slagen") "med" ;
fight_V2 =
mkV2 (mkV "slåss" "slåss" "slåss" "slogs" "slagits" "slagen") (mkPrep "med") ;
} ;

View File

@@ -59,7 +59,8 @@ oper
-- Prepositions used in many-argument functions are just strings.
Preposition : Type = Str ;
mkPrep : Str -> Prep ;
noPrep : Prep ; -- empty string
--2 Nouns
@@ -100,7 +101,7 @@ oper
--
-- Relational nouns ("daughter of x") need a preposition.
mkN2 : N -> Preposition -> N2 ;
mkN2 : N -> Prep -> N2 ;
-- The most common preposition is "av", and the following is a
-- shortcut for regular, $nonhuman$ relational nouns with "av".
@@ -112,7 +113,7 @@ oper
--
-- Three-place relational nouns ("the connection from x to y") need two prepositions.
mkN3 : N -> Preposition -> Preposition -> N3 ;
mkN3 : N -> Prep -> Prep -> N3 ;
--3 Relational common noun phrases
@@ -127,7 +128,8 @@ oper
--
-- Proper names, with a regular genitive, are formed as follows
regPN : Str -> Gender -> PN ; -- John, John's
regGenPN : Str -> Gender -> PN ;
regPN : Str -> PN ; -- utrum
-- Sometimes you can reuse a common noun as a proper name, e.g. "Bank".
@@ -167,7 +169,7 @@ oper
--
-- Two-place adjectives need a preposition for their second argument.
mkA2 : A -> Preposition -> A2 ;
mkA2 : A -> Prep -> A2 ;
--2 Adverbs
@@ -182,12 +184,6 @@ oper
mkAdA : Str -> AdA ;
--2 Prepositions
--
-- A preposition is just a string.
mkPreposition : Str -> Preposition ;
--2 Verbs
--
-- The worst case needs five forms.
@@ -234,7 +230,7 @@ oper
-- Two-place verbs need a preposition, except the special case with direct object.
-- (transitive verbs). Notice that a particle comes from the $V$.
mkV2 : V -> Preposition -> V2 ;
mkV2 : V -> Prep -> V2 ;
dirV2 : V -> V2 ;
@@ -243,8 +239,8 @@ oper
-- Three-place (ditransitive) verbs need two prepositions, of which
-- the first one or both can be absent.
mkV3 : V -> Preposition -> Preposition -> V3 ; -- tala med om
dirV3 : V -> Preposition -> V3 ; -- ge _ till
mkV3 : V -> Prep -> Prep -> V3 ; -- tala med om
dirV3 : V -> Prep -> V3 ; -- ge _ till
dirdirV3 : V -> V3 ; -- ge _ _
--3 Other complement patterns
@@ -254,18 +250,18 @@ oper
mkV0 : V -> V0 ;
mkVS : V -> VS ;
mkV2S : V -> Str -> V2S ;
mkV2S : V -> Prep -> V2S ;
mkVV : V -> VV ;
mkV2V : V -> Str -> Str -> V2V ;
mkV2V : V -> Prep -> Prep -> V2V ;
mkVA : V -> VA ;
mkV2A : V -> Str -> V2A ;
mkV2A : V -> Prep -> V2A ;
mkVQ : V -> VQ ;
mkV2Q : V -> Str -> V2Q ;
mkV2Q : V -> Prep -> V2Q ;
mkAS : A -> AS ;
mkA2S : A -> Str -> A2S ;
mkA2S : A -> Prep -> A2S ;
mkAV : A -> AV ;
mkA2V : A -> Str -> A2V ;
mkA2V : A -> Prep -> A2V ;
-- Notice: categories $V2S, V2V, V2A, V2Q$ are in v 1.0 treated
-- just as synonyms of $V2$, and the second argument is given
@@ -292,6 +288,9 @@ oper
nominative = Nom ;
genitive = Gen ;
mkPrep p = {s = p ; lock_Prep = <>} ;
noPrep = mkPrep [] ;
mkN = \apa,apan,apor,aporna -> {
s = nounForms apa apan apor aporna ;
g = case last apan of {
@@ -381,11 +380,12 @@ oper
} ;
mkN2 = \n,p -> n ** {lock_N2 = <> ; c2 = p} ;
regN2 n g = mkN2 (regGenN n g) (mkPreposition "av") ;
mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p ; c3 = q} ;
mkN2 = \n,p -> n ** {lock_N2 = <> ; c2 = p.s} ;
regN2 n g = mkN2 (regGenN n g) (mkPrep "av") ;
mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p.s ; c3 = q.s} ;
regPN n g = {s = \\c => mkCase c n ; g = g} ** {lock_PN = <>} ;
regPN n = regGenPN n utrum ;
regGenPN n g = {s = \\c => mkCase c n ; g = g} ** {lock_PN = <>} ;
nounPN n = {s = n.s ! singular ! Indef ; g = n.g ; lock_PN = <>} ;
mkNP x y n g =
{s = table {NPPoss _ => y ; _ => x} ; a = agrP3 g n ; p = P3 ;
@@ -413,14 +413,12 @@ oper
compoundA adj = {s = adj.s ; isComp = True ; lock_A = <>} ;
mkA2 a p = a ** {c2 = p ; lock_A2 = <>} ;
mkA2 a p = a ** {c2 = p.s ; lock_A2 = <>} ;
mkAdv x = ss x ** {lock_Adv = <>} ;
mkAdV x = ss x ** {lock_AdV = <>} ;
mkAdA x = ss x ** {lock_AdA = <>} ;
mkPreposition p = p ;
mkV = \finna,finner,finn,fann,funnit,funnen ->
let
funn = ptPretForms funnen ;
@@ -489,12 +487,12 @@ oper
depV v = {s = v.s ; part = v.part ; vtype = VPass ; lock_V = <>} ;
reflV v = {s = v.s ; part = v.part ; vtype = VRefl ; lock_V = <>} ;
mkV2 v p = v ** {c2 = p ; lock_V2 = <>} ;
dirV2 v = mkV2 v [] ;
mkV2 v p = v ** {c2 = p.s ; lock_V2 = <>} ;
dirV2 v = mkV2 v noPrep ;
mkV3 v p q = v ** {c2 = p ; c3 = q ; lock_V3 = <>} ;
dirV3 v p = mkV3 v [] p ;
dirdirV3 v = dirV3 v [] ;
mkV3 v p q = v ** {c2 = p.s ; c3 = q.s ; lock_V3 = <>} ;
dirV3 v p = mkV3 v noPrep p ;
dirdirV3 v = dirV3 v noPrep ;
mkV0 v = v ** {lock_V0 = <>} ;
mkVS v = v ** {lock_VS = <>} ;