forked from GitHub/gf-rgl
Merge pull request #88 from kitukb/master
The error is only on Mac, and doesn't seem to be due to the contents of the pull request.
This commit is contained in:
@@ -21,7 +21,9 @@ incomplete concrete AdjectiveBantu of Adjective =
|
||||
} ;
|
||||
|
||||
ComplA2 a np = {
|
||||
s = \\g,n => a.s !AComp g n ++ a.c2 ++ np.s ! NPAcc;
|
||||
|
||||
s = \\g,n => a.s !AComp g n ++ a.c2 ++ np.s ! NCase Nom;
|
||||
|
||||
isPre = False
|
||||
} ;
|
||||
ReflA2 a ={
|
||||
|
||||
@@ -13,9 +13,10 @@ incomplete concrete AdverbBantu of Adverb =
|
||||
} ;
|
||||
|
||||
PrepNP prep np = let agr = complAgr np.a
|
||||
in {s = prep.s!agr.n!agr.g ++ (np.s ! NPAcc) } ; --s = preOrPost prep.isPre prep.s (np.s ! NPAcc)
|
||||
|
||||
in {s = prep.s!agr.n!agr.g ++ (np.s ! NCase Loc ) } ;
|
||||
AdAdv = cc2 ;
|
||||
|
||||
PositAdAAdj a = {s = a.s !AAdj G1 Sg } ;
|
||||
|
||||
|
||||
|
||||
@@ -12,7 +12,9 @@ resource CommonBantu = ParamX ** open Prelude in {
|
||||
|
||||
param
|
||||
Case = Nom | Loc ;
|
||||
NPCase = NCase Case | NPAcc | NPNomPoss ;
|
||||
|
||||
NPCase = NCase Case | NPoss ;
|
||||
|
||||
CardOrd = NCard | NOrd ;
|
||||
|
||||
oper
|
||||
|
||||
@@ -3,11 +3,11 @@
|
||||
interface DiffBantu = open CommonBantu, Prelude in {
|
||||
flags coding=utf8 ;
|
||||
|
||||
-- HL: everything depending on Gender is not common, so it must not
|
||||
-- be in CommonBantu, but here in DiffBantu.
|
||||
|
||||
|
||||
oper
|
||||
Gender : PType ;
|
||||
firstGender : Gender ; -- G1
|
||||
firstGender : Gender ;
|
||||
secondGender : Gender ; -- G2
|
||||
|
||||
Noun : Type = {s : Number => Case => Str ; g : Gender};
|
||||
@@ -38,7 +38,9 @@ oper
|
||||
} ;
|
||||
verbAgr : Agr -> {g : Gender ; n : Number ; p : Person} = \a -> case a of {
|
||||
Ag g n p => {g = g ; n = n ; p = p}
|
||||
} ; -- verbAgr = agrFeatures, why both? HL
|
||||
|
||||
} ; --
|
||||
|
||||
|
||||
detAgr : Agr -> {g : Gender ; p : Person} = \a -> case a of {
|
||||
Ag g _ p => {g = g; p = p}
|
||||
@@ -70,7 +72,7 @@ param
|
||||
PronForm= Pers | Poss Number Gender;
|
||||
DetForm = Sub | Obj Gender ;
|
||||
|
||||
-- HL: the above is material removed from CommonBantu and adapted --
|
||||
|
||||
|
||||
oper
|
||||
conjThan : Str ; --one of them in bantu
|
||||
@@ -84,8 +86,10 @@ param
|
||||
DForm ;
|
||||
AForm;
|
||||
oper
|
||||
ProunSgprefix : Gender -> Str ; -- added, HL
|
||||
ProunPlprefix : Gender -> Str ; -- added, HL
|
||||
|
||||
ProunSgprefix : Gender -> Str ;
|
||||
ProunPlprefix : Gender -> Str ;
|
||||
|
||||
Cardoneprefix : Gender -> Str;
|
||||
Cardtwoprefix : Gender -> Str;
|
||||
Allpredetprefix : Gender -> Str;
|
||||
|
||||
@@ -23,8 +23,9 @@ lin
|
||||
n=agr.n; g=agr.g
|
||||
in {s = table {
|
||||
NCase c => pron.s!Pers ;
|
||||
NPAcc => pron.s!Pers ;
|
||||
NPNomPoss => pron.s!Poss n g };
|
||||
|
||||
NPoss => pron.s!Poss n g };
|
||||
|
||||
a = Ag agr.g agr.n agr.p;
|
||||
} ;
|
||||
-- Predet -> NP -> NP
|
||||
@@ -141,11 +142,13 @@ lin
|
||||
-- PossNP : CN -> NP -> CN
|
||||
-- e.g. 'house of Paris', 'house of mine'
|
||||
PossNP cn np =let agr = detAgr np.a in
|
||||
{s = \\n,c => cn.s ! n ! Nom ++ possess_Prep.s! n!cn.g ++ np.s ! NPNomPoss;
|
||||
|
||||
{s = \\n,c => cn.s ! n ! Nom ++ possess_Prep.s! n!cn.g ++ np.s ! NPoss;
|
||||
s2 =\\n => []; g = cn.g} ;
|
||||
-- PartNP : CN -> NP -> CN
|
||||
-- e.g. 'glass of wine'
|
||||
PartNP cn np = {s = \\n,c => cn.s ! n ! Nom ++ part_Prep.s! n!cn.g ++ np.s ! NPAcc ; s2 =\\n => []; g = cn.g} ;
|
||||
PartNP cn np = {s = \\n,c => cn.s ! n ! Nom ++ part_Prep.s! n!cn.g ++ np.s ! NCase Nom ; s2 =\\n => []; g = cn.g} ;
|
||||
|
||||
|
||||
-- CountNP : Det -> NP -> NP
|
||||
-- e.g. 'three of them', 'some of the boys'
|
||||
@@ -162,8 +165,10 @@ lin
|
||||
|
||||
DetDAP d = { s=d.s; n=d.n };
|
||||
|
||||
ApposCN cn np = let agr = complAgr np.a in
|
||||
{s = \\n,c => np.s ! NCase Nom --++ possess_Prep.s!n!agr.g
|
||||
++ cn.s !n ! Nom ; s2 =\\n => ""; g = cn.g} ;
|
||||
|
||||
-- ApposCN cn np = let agr = complAgr np.a in
|
||||
-- {s = \\n,c => np.s ! NCase Nom --++ possess_Prep.s!n!agr.g
|
||||
-- ++ cn.s !n ! Nom ; s2 =\\n => ""; g = cn.g} ;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -18,8 +18,9 @@ oper
|
||||
{s : NPCase => Str ; a : Agr} = \i,my,g,n,p ->
|
||||
{ s = table {
|
||||
NCase Nom => i ;
|
||||
NPAcc => my ;
|
||||
NCase Loc | NPNomPoss => my -- works for normal genitives, "whose", etc.
|
||||
|
||||
NCase Loc | NPoss => my -- works for normal genitives, "whose", etc.
|
||||
|
||||
} ;
|
||||
a = Ag g n p ;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user