summaryrefslogtreecommitdiff
path: root/old-lib/resource/interlingua/RelativeIna.gf
diff options
context:
space:
mode:
Diffstat (limited to 'old-lib/resource/interlingua/RelativeIna.gf')
-rw-r--r--old-lib/resource/interlingua/RelativeIna.gf53
1 files changed, 53 insertions, 0 deletions
diff --git a/old-lib/resource/interlingua/RelativeIna.gf b/old-lib/resource/interlingua/RelativeIna.gf
new file mode 100644
index 000000000..ebdebcd13
--- /dev/null
+++ b/old-lib/resource/interlingua/RelativeIna.gf
@@ -0,0 +1,53 @@
+concrete RelativeIna of Relative = CatIna ** open ResIna in {
+
+ flags optimize=all_subs ;
+
+ lin
+
+ RelCl cl = {
+ s = \\t,a,p,agr =>
+ (case agr.n of {Sg => "tal"; Pl => "tales"}) ++
+ "que" ++ cl.s ! t ! a ! p ! ODir ;
+ c = Nom
+ } ;
+
+ RelVP rp vp = {
+ s = \\t,a,p,agr => (mkClause (rp.s!Nom) agr vp).s ! t ! a ! p ! ODir;
+ c = Nom
+ } ;
+ -- !!! person agreement is probably bad here; see below.
+
+---- Pied piping: "a que tu invia flores"
+
+ RelSlash rp slash = {
+ s = \\t,a,p,agr => slash.p2 ++ rp.s ! slash.c2 ++ slash.s ! t ! a ! p ! ODir ;
+ c = slash.c2;
+ } ;
+ -- !!! In the above The agreement feature of the RP does not match
+ -- the the (parametric!) agreement of the resulting clause.
+ -- Is it a bug? I believe there is the same behaviour in the english grammar.
+
+ FunRP p np rp = {
+ s = \\c => np.s ! Acc ++ p.s ++ rp.s ! p.c ;
+ a = np.a
+ } ;
+
+
+ IdRP = {
+ -- TODO: variant: "le qual"
+ a = {p = P3; n = variants {Sg; Pl}};
+ s = table {
+ Nom => quique; -- Le ultime traino que pote portar me ibi a tempore parti in cinque minutas
+ Gen => "cuje"; -- Le documentos cuje importantia esseva dubitose incriminava le spia
+ Acc => "que"; -- Le documentos que le spia portava con se esseva multo importante
+ Dat => "a" ++ quique;
+ Abl => "de" ++ quique
+ }} ;
+
+ oper
+ quique = variants {"qui"; -- !!! Only for humans, only after a preposition.
+ -- This is extremely strange, because it does not match any Romance language I know.
+ -- For now just be lax and make it a variant of "que"
+ "que"};
+
+}