forked from GitHub/gf-rgl
fix symbollat
This commit is contained in:
@@ -2,50 +2,57 @@
|
|||||||
|
|
||||||
concrete SymbolLat of Symbol = CatLat ** open Prelude, ResLat, ParadigmsLat, TenseX in {
|
concrete SymbolLat of Symbol = CatLat ** open Prelude, ResLat, ParadigmsLat, TenseX in {
|
||||||
|
|
||||||
lin
|
lin
|
||||||
|
-- SymbPN : Symb -> PN ;
|
||||||
SymbPN i = {s = \\c => i.s ; g = Neutr ; n = Sg } ; --- c
|
SymbPN i = {s = \\c => i.s ; g = Neutr ; n = Sg } ; --- c
|
||||||
|
-- IntPN : Int -> PN ;
|
||||||
IntPN i = {s = \\c => i.s ; g = Neutr ; n = Sg } ; --- c
|
IntPN i = {s = \\c => i.s ; g = Neutr ; n = Sg } ; --- c
|
||||||
|
-- FloatPN : Float -> PN ;
|
||||||
FloatPN i = {s = \\c => i.s ; g = Neutr ; n = Sg } ; --- c
|
FloatPN i = {s = \\c => i.s ; g = Neutr ; n = Sg } ; --- c
|
||||||
|
-- NumPN : Num -> PN ;
|
||||||
NumPN i = {s = \\c => i.s ! Neutr ! c; g = Neutr ; n = Pl } ; --- c
|
NumPN i = {s = \\c => i.s ! Neutr ! c; g = Neutr ; n = Pl } ; --- c
|
||||||
|
-- CNIntNP : CN -> Int -> NP ;
|
||||||
CNIntNP cn i = {
|
CNIntNP cn i = {
|
||||||
s = \\_,c => (cn.s ! Sg ! Nom ++ i.s) ;
|
s = \\_,c => (cn.s ! Sg ! Nom ++ i.s) ;
|
||||||
g = cn.g ;
|
g = cn.g ;
|
||||||
n = Sg ;
|
n = Sg ;
|
||||||
adv = [] ;
|
adv = [] ;
|
||||||
det = { s = \\_,_ => [] ; n = Sg ; sp = \\_,_ => [] } ;
|
det = { s , sp = \\_ => [] ; n = Sg } ;
|
||||||
p = P3 ;
|
p = P3 ;
|
||||||
postap = { s = \\_ => [] } ;
|
preap , postap = { s = \\_ => [] } ;
|
||||||
preap = { s = \\_ => [] } ;
|
|
||||||
} ;
|
} ;
|
||||||
|
--CNSymbNP : CN -> Symb -> NP ;
|
||||||
CNSymbNP det cn xs = {
|
CNSymbNP det cn xs = {
|
||||||
s = \\_,c => (cn.s ! Sg ! Nom ++ xs.s ) ;
|
s = \\_,c => (cn.s ! Sg ! Nom ++ xs.s ) ;
|
||||||
g = cn.g ;
|
g = cn.g ;
|
||||||
n = det.n ;
|
n = det.n ;
|
||||||
adv = [] ;
|
adv = [] ;
|
||||||
det = det ;
|
det = { s = det.s ! cn.g ; sp = det.sp ! cn.g } ;
|
||||||
p = P3 ;
|
p = P3 ;
|
||||||
postap = { s = \\_ => [] } ;
|
preap , postap = { s = \\_ => [] } ;
|
||||||
preap = { s = \\_ => [] } ;
|
|
||||||
} ;
|
} ;
|
||||||
-- s = \\c => det.s ++ cn.s ! det.n ! c ++ xs.s ;
|
-- s = \\c => det.s ++ cn.s ! det.n ! c ++ xs.s ;
|
||||||
-- a = agrgP3 det.n cn.g
|
-- a = agrgP3 det.n cn.g
|
||||||
-- } ;
|
-- } ;
|
||||||
-- } ;
|
-- } ;
|
||||||
|
|
||||||
|
-- CNNumNP : CN -> Num -> NP ;
|
||||||
CNNumNP cn i = {
|
CNNumNP cn i = {
|
||||||
s = \\_,c => (cn.s ! Sg ! Nom ++ i.s ! cn.g ! Nom ) ;
|
s = \\_,c => (cn.s ! Sg ! Nom ++ i.s ! cn.g ! Nom ) ;
|
||||||
g = cn.g ;
|
g = cn.g ;
|
||||||
n = Sg ;
|
n = Sg ;
|
||||||
adv = [] ;
|
adv = [] ;
|
||||||
det = { s = \\_,_ => [] ; n = Sg ; sp = \\_,_ => [] } ;
|
det = { s , sp = \\_ => [] ; n = Sg };
|
||||||
p = P3 ;
|
p = P3 ;
|
||||||
postap = { s = \\_ => [] } ;
|
preap , postap = { s = \\_ => [] } ;
|
||||||
preap = { s = \\_ => [] } ;
|
|
||||||
} ;
|
} ;
|
||||||
--
|
--
|
||||||
|
-- SymbS : Symb -> S ;
|
||||||
|
SymbS sy = { s = \\_ => sy.s ; o , neg = \\_ => "" ; p = PPos ; sadv = "" ; t = TPres ; v = \\_ => "" ; compl = "" ; det = { s , sp = \\_ => [] ; n = Sg } } ;
|
||||||
|
|
||||||
SymbS sy = { s = \\_ => sy.s ; neg = \\_ => "" ; o = \\_ => "" ; p = PPos ; sadv = "" ; t = TPres ; v = \\_,_ => "" } ;
|
-- SymbNum : Symb -> Num
|
||||||
--
|
|
||||||
SymbNum sy = {s = \\_,_ => sy.s ; n = Pl } ;
|
SymbNum sy = {s = \\_,_ => sy.s ; n = Pl } ;
|
||||||
|
-- SymbOrd : Symb -> Ord
|
||||||
SymbOrd sy = { s = \\g,n,c => sy.s } ; -- does not inflect properly
|
SymbOrd sy = { s = \\g,n,c => sy.s } ; -- does not inflect properly
|
||||||
|
|
||||||
lincat
|
lincat
|
||||||
|
|||||||
Reference in New Issue
Block a user