towards completing French API

This commit is contained in:
aarne
2005-02-21 16:26:01 +00:00
parent 6dc5c19c9e
commit 6ff1cfc233
3 changed files with 41 additions and 6 deletions

View File

@@ -81,7 +81,7 @@ oper
-- The determiner determines the number of the argument noun.
Determiner : Type = {s : Gender => Str ; n : Number} ;
NumDeterminer : Type = {s : Gender => Str} ;
DeterminerNum : Type = {s : Gender => Str} ;
detNounPhrase : Determiner -> CommNoun -> NounPhrase = \tout, homme ->
normalNounPhrase
@@ -89,6 +89,23 @@ oper
homme.g
tout.n ;
numDetNounPhrase : DeterminerNum -> Numeral -> CommNounPhrase -> NounPhrase =
\tous, six, homme ->
normalNounPhrase
(\\c => prepCase c ++ tous.s ! homme.g ++ six.s ! homme.g ++ homme.s ! Pl)
homme.g
Pl ;
--- Here one would like to provide a feminine variant as well.
justNumDetNounPhrase : DeterminerNum -> Numeral -> NounPhrase =
\tous, six ->
normalNounPhrase
(\\c => prepCase c ++ tous.s ! Masc ++ six.s ! Masc)
Masc
Pl ;
-- The following macros are sufficient to define most determiners,
-- as shown by the examples that follow.
@@ -98,7 +115,7 @@ oper
mkDeterminer1 : Number -> Str -> Determiner = \n,chaque ->
mkDeterminer n chaque chaque ;
mkDeterminerNum : Str -> Str -> NumDeterminer =
mkDeterminerNum : Str -> Str -> DeterminerNum =
\tous,toutes ->
{s = \\g => genForms tous toutes ! g} ;