Maltese RG: first proper release

Of course some bugs remain and more testing is needed,
but all functions are complete and Maltese now builds as part
of the normal GF install.
This commit is contained in:
john
2013-06-10 21:37:10 +00:00
parent 7ea9ed83cb
commit 84beb227da
18 changed files with 925 additions and 716 deletions
+13 -16
View File
@@ -17,21 +17,14 @@ concrete SentenceMlt of Sentence = CatMlt ** open
lin
-- NP -> VP -> Cl
-- John walks
PredVP np vp = {
s = \\tense,ant,pol,ord =>
case ord of {
ODir => (s ++ v ++ o) ; -- ĠANNI JIEKOL ĦUT
OQuest => (v ++ o ++ s) -- JIEKOL ĦUT ĠANNI ?
}
where {
s : Str = case np.isPron of {
True => [] ; -- omit subject pronouns
False => np.s ! NPNom
} ;
v : Str = joinVP vp (VPIndicat tense (toVAgr np.a)) ant pol ;
o : Str = vp.s2 ! np.a ;
} ;
} ;
PredVP np vp =
let
subj : Str = case np.isPron of {
True => [] ; -- omit subject pronouns
False => np.s ! NPNom
} ;
in
mkClause subj np.a vp ;
-- SC -> VP -> Cl
-- that she goes is good
@@ -39,7 +32,11 @@ concrete SentenceMlt of Sentence = CatMlt ** open
-- VP -> Imp
ImpVP vp = {
s = \\pol,n => joinVP vp (VPImperat n) Simul pol
-- s = \\pol,n => joinVP vp (VPImperat n) Simul pol ;
s = \\pol,n => case pol of {
Pos => (vp.v.s ! VImp n).s1 ++ vp.s2 ! agrP3 n Masc ;
Neg => (vp.v.s ! VImp n).s2 ++ BIND ++ "x" ++ vp.s2 ! agrP3 n Masc
} ;
} ;
-- NP -> VPSlash -> ClSlash