--# -path=.:RGLExt:alltenses concrete BasicRon of Basic = CatRon - [Text] ** open DictLangRon,ResRon, Prelude, ParamBasic,Coordination, ParadigmsRon in { flags coding=utf8 ; lincat Class = CN ; El = NP ; Ind = NP ; Var = PN ; SubClass = {} ; Inherits = {} ; Desc = CN ; Formula = PolSentence; Stmt = StmtS ; [El] = {s1,s2 : NCase => Str ; a : Agr; nForm : NForm}; [Class] = {s1,s2 : Number => Species => ACase => Str; g : NGender; a : Animacy ; isComp : Bool; needsRefForm : Bool}; lin BaseClass = {s1,s2 = \\_,_,_ => ""; needsRefForm = False ; g = NNeut; a = Inanimate; isComp = False} ; ConsClass xs x = consrTable3 Number Species ACase comma xs x ** {g = x.g; a = x.a; needsRefForm = False; isComp = x.isComp} ; BaseEl c = {s1,s2 = \\_ => ""; a = agrP3 Masc Sg; nForm = HasRef False}; ConsEl cl x xs = { s1 = \\c => (x.s ! c).comp ++ comma ++ xs.s1 ! c ; s2 = \\c => xs.s2 ! c ; a = conjAgr x.a xs.a ; nForm = case x.nForm of {HasClit => xs.nForm ; _ => HasRef False} } ; and f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "şi" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>}; or f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "sau" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>}; not f1 = {s = \\f,c => case c of {Pos => f1.s ! Indep ! Neg ; _ => f1.s ! Indep ! Pos }; flag = NothingS; lock_PolSentence = <>}; impl f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "implică" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>}; equiv f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "este" ++ "echivalent" ++ "cu" ++ f2.s ! Indep ! c; flag = NothingS; lock_PolSentence = <>}; el c1 c2 i e = e ; var c1 c2 i e = let np = UsePN e in {s = np.s; a = agrP3 (agrGender c1.g Sg) Sg; indForm = np.indForm ; isPol = False; nForm = np.nForm; ss = np.ss; isComp = np.isComp ; isPronoun = False; lock_NP = <>}; exists C f = let np = DetCN (DetQuant IndefArt NumSg) C in {s = \\form,c => case