Files
gf-rgl/src/portuguese/IdiomPor.gf
bruno cuconato 9bd63b9d8d (Por) several minor updates (#49)
* fix linearization of either/or

* (Por) minor updates
- correction in Lexicon
- documentation in Morpho
- rm variants from Structural

* (Por) correct references to extinct opers

* (Por) rm Spa remnants

* (Abs) rm reference to Extra in Structural -- use Extend instead

* (Por) ExtendPor
- use Extend instead of Extra in All
- use Extend funs in Extra whenever possible

* trigger CI

* (Por) Diff
- sort opers
- rm old commented code
- tidy things up
- no semantic changes

* (Por) add IrregBesch module with verbs using Besch paradigms
- Besch :
  - use hack to prevent runtime failure with glue in in vars output
  - rm paradigm numbers
- add IrregBeschPor, verbs that use only bescherelle paradigms
  - use them in Construction, Structural, Idiom, Extra
- Diff and Paradigms had (almost) the same oper (verboV/verbBeschH),
  so combine them into one and use it

* (Por) update functions to use new Irreg suffix and resolve name conflicts
2018-05-24 12:24:39 +01:00

46 lines
1.4 KiB
Plaintext

concrete IdiomPor of Idiom = CatPor **
open (P = ParamX), MorphoPor, ParadigmsPor, BeschPor, (B = IrregBeschPor), Prelude in {
flags optimize=all_subs ;
lin
ImpersCl vp = mkClause [] True False (agrP3 Masc Sg) vp ;
GenericCl vp =
mkClause [] True False (agrP3 Masc Sg) (insertRefl vp) ; ---- just Italian ?
CleftNP np rs = mkClause [] True False (agrP3 Masc Sg)
(insertComplement (\\_ => rs.s ! Indic ! np.a)
(insertComplement (\\_ => (np.s ! rs.c).ton) (predV copula))) ;
CleftAdv ad s = mkClause [] True False (agrP3 Masc Sg)
(insertComplement (\\_ => conjThat ++ s.s ! Indic)
(insertComplement (\\_ => ad.s) (predV copula))) ;
ExistNP np =
mkClause [] True False (agrP3 Masc Sg)
(insertComplement (\\_ => (np.s ! Acc).ton) (predV B.haver_V)) ;
ExistIP ip = {
s = \\t,a,p,_ =>
ip.s ! Nom ++
(mkClause [] True False (agrP3 Masc Sg) (predV B.haver_V)).s ! DDir ! t ! a ! p ! Indic
} ;
ProgrVP vp =
insertComplement
(\\agr =>
let
clpr = <vp.clit1,vp.clit2> ; ----e pronArg agr.n agr.p vp.clAcc vp.clDat ;
obj = clpr.p2 ++ vp.comp ! agr ++ vp.ext ! RPos ---- pol
in
vp.s.s ! VGer ++ clpr.p1 ++ obj
)
(predV B.estar_V) ;
ImpPl1 vp = {s =
mkImperative False P1 vp ! RPos ! Masc ! Pl ; --- fem
} ;
}