diff --git a/lib/resource-1.0/french/ExtraFre.gf b/lib/resource-1.0/french/ExtraFre.gf new file mode 100644 index 000000000..23177ee03 --- /dev/null +++ b/lib/resource-1.0/french/ExtraFre.gf @@ -0,0 +1,33 @@ +concrete ExtraFre of ExtraFreAbs = ExtraRomanceFre ** + open CommonRomance, PhonoFre, ParamX, ResFre in { + + lin + EstcequeS qs = {s = "est-ce" ++ elisQue ++ qs.s ! Indic} ; + EstcequeIAdvS idet qs = {s = idet.s ++ "est-ce" ++ elisQue ++ qs.s ! Indic} ; + + QueestcequeIP = { + s = table { + c => prepQue c ++ "est-ce" ++ caseQue c + } ; + a = aagr Fem Pl + } ; + + QuiestcequeIP = { + s = table { + c => prepQue c ++ "qui" ++ "est-ce" ++ caseQue c + } ; + a = aagr Fem Pl + } ; + + oper + prepQue : Case -> Str = \c -> case c of { + Nom | Acc => elisQue ; + _ => prepCase c ++ "qui" --- + } ; + caseQue : Case -> Str = \c -> case c of { + Nom => "qui" ; + _ => elisQue + } ; + + +} diff --git a/lib/resource-1.0/french/ExtraFreAbs.gf b/lib/resource-1.0/french/ExtraFreAbs.gf new file mode 100644 index 000000000..737074225 --- /dev/null +++ b/lib/resource-1.0/french/ExtraFreAbs.gf @@ -0,0 +1,17 @@ +-- Structures special for French. These are not implemented in other +-- Romance languages. + +abstract ExtraFreAbs = ExtraRomanceAbs ** { + +-- Notice: only direct (main-clause) questions are generated, and needed. + + fun + EstcequeS : S -> Utt ; -- est-ce qu'il pleut + EstcequeIAdvS : IAdv -> S -> Utt ; -- oł est-ce qu'il pleut + +-- These also generate indirect (subordinate) questions. + + QueestcequeIP : IP ; -- qu'est-ce (que/qui) + QuiestcequeIP : IP ; -- qu'est-ce (que/qui) + +} diff --git a/lib/resource-1.0/french/ExtraRomanceFre.gf b/lib/resource-1.0/french/ExtraRomanceFre.gf new file mode 100644 index 000000000..ba7d7b160 --- /dev/null +++ b/lib/resource-1.0/french/ExtraRomanceFre.gf @@ -0,0 +1,2 @@ +concrete ExtraRomanceFre of ExtraRomanceAbs = CatFre ** ExtraRomance with + (ResRomance = ResFre) ; diff --git a/lib/resource-1.0/french/French.gf b/lib/resource-1.0/french/French.gf new file mode 100644 index 000000000..0440e7a7e --- /dev/null +++ b/lib/resource-1.0/french/French.gf @@ -0,0 +1,7 @@ +--# -path=.:../romance:../abstract:../common:prelude + +concrete French of FrenchAbs = + LangFre, +-- IrregFre, + ExtraFre + ** {} ; diff --git a/lib/resource-1.0/french/FrenchAbs.gf b/lib/resource-1.0/french/FrenchAbs.gf new file mode 100644 index 000000000..f6d9e6905 --- /dev/null +++ b/lib/resource-1.0/french/FrenchAbs.gf @@ -0,0 +1,5 @@ +abstract FrenchAbs = + Lang, +--- IrregFreAbs, + ExtraFreAbs + ** {} ; diff --git a/lib/resource-1.0/romance/ExtraRomance.gf b/lib/resource-1.0/romance/ExtraRomance.gf new file mode 100644 index 000000000..eb71331db --- /dev/null +++ b/lib/resource-1.0/romance/ExtraRomance.gf @@ -0,0 +1,7 @@ +incomplete concrete ExtraRomance of ExtraRomanceAbs = CatRomance ** + open + CommonRomance, + ResRomance in { + + +} diff --git a/lib/resource-1.0/romance/ExtraRomanceAbs.gf b/lib/resource-1.0/romance/ExtraRomanceAbs.gf new file mode 100644 index 000000000..b3a9de9d4 --- /dev/null +++ b/lib/resource-1.0/romance/ExtraRomanceAbs.gf @@ -0,0 +1,3 @@ +abstract ExtraRomanceAbs = Extra ** { + +}