mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-16 08:19:31 -06:00
big DictionaryDut from Wiktionary - very noisy for common words, but works
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
concrete ChunkDut of Chunk = CatDut
|
||||
---- , ExtensionsDut
|
||||
concrete ChunkDut of Chunk = CatDut, ExtensionsDut [VPS,VPI]
|
||||
**
|
||||
ChunkFunctor - [UseVC, VPS_Chunk, emptyNP, VPI_Chunk]
|
||||
ChunkFunctor - [emptyNP]
|
||||
with (Syntax = SyntaxDut), (Extensions = ExtensionsDut)
|
||||
**
|
||||
open
|
||||
@@ -11,9 +10,9 @@ concrete ChunkDut of Chunk = CatDut
|
||||
oper
|
||||
emptyNP = SyntaxDut.mkNP (P.mkPN []) ;
|
||||
|
||||
----lin
|
||||
---- NP_Acc_Chunk np = ss (np.s ! NPC Acc) ;
|
||||
---- NP_Gen_Chunk np = ss (np.s ! NPC Gen) ;
|
||||
lin
|
||||
NP_Acc_Chunk np = ss (np.s ! NPAcc) ;
|
||||
NP_Gen_Chunk np = ss ("van" ++ np.s ! NPAcc) ; ----
|
||||
|
||||
---- VPI_Chunk vpi = {s = vpi.s ! (True | False)} ;
|
||||
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
--# -coding=latin1
|
||||
concrete ExtraDut of ExtraDutAbs = CatDut **
|
||||
open ResDut, MorphoDut, Coordination, Prelude, IrregDut in
|
||||
open ResDut, MorphoDut, Coordination, Prelude, IrregDut, (P = ParadigmsDut) in
|
||||
{
|
||||
--{
|
||||
--
|
||||
-- lincat
|
||||
-- VPI = {s : Bool => Str} ;
|
||||
-- [VPI] = {s1,s2 : Bool => Str} ;
|
||||
-- lin
|
||||
-- BaseVPI = twoTable Bool ;
|
||||
-- ConsVPI = consrTable Bool comma ;
|
||||
--
|
||||
-- MkVPI vp = {s = \\b => useInfVP b vp} ;
|
||||
|
||||
|
||||
lincat
|
||||
VPI = {s : Bool => Str} ;
|
||||
[VPI] = {s1,s2 : Bool => Str} ;
|
||||
lin
|
||||
BaseVPI = twoTable Bool ;
|
||||
ConsVPI = consrTable Bool comma ;
|
||||
|
||||
MkVPI vp = {s = \\b => useInfVP b vp} ;
|
||||
-- ConjVPI = conjunctDistrTable Bool ;
|
||||
--
|
||||
-- ComplVPIVV v vpi =
|
||||
@@ -114,6 +114,11 @@ lin
|
||||
|
||||
ConjVPS = conjunctDistrTable2 Order Agr ;
|
||||
|
||||
PassVPSlash vps =
|
||||
insertInf (vps.s.s ! VPerf) (predV ResDut.worden_V) ;
|
||||
PassAgentVPSlash vps np =
|
||||
insertAdv (appPrep "door" np.s) (insertInf (vps.s.s ! VPerf) (predV ResDut.worden_V)) ;
|
||||
|
||||
lin
|
||||
NominalizeVPSlashNP vpslash np =
|
||||
let vp : ResDut.VP = insertObjNP np.isPron (\\_ => appPrep vpslash.c2 np.s) vpslash ;
|
||||
|
||||
@@ -3,7 +3,8 @@ abstract ExtraDutAbs = Extra [
|
||||
VPS,ListVPS,BaseVPS,ConsVPS,ConjVPS,MkVPS,PredVPS,
|
||||
Temp,Pol,S,NP,
|
||||
VV,VP,Conj,IComp,ICompAP,IAdvAdv,Adv,AP,IAdv,
|
||||
VPSlash, NominalizeVPSlashNP] **
|
||||
VPSlash, NominalizeVPSlashNP,
|
||||
PassVPSlash, PassAgentVPSlash] **
|
||||
{
|
||||
flags coding=utf8;
|
||||
--{
|
||||
|
||||
@@ -164,13 +164,27 @@ oper
|
||||
|
||||
mkV0 : V -> V0 ; --%
|
||||
mkVS : V -> VS ;
|
||||
mkV2S : V -> Prep -> V2S ;
|
||||
mkVV : V -> VV ;
|
||||
mkV2V : V -> Prep -> V2V ;
|
||||
|
||||
mkV2V : overload {
|
||||
mkV2V : V -> Prep -> V2V ;
|
||||
mkV2V : V -> V2V ;
|
||||
} ;
|
||||
mkV2S : overload {
|
||||
mkV2S : V -> Prep -> V2S ;
|
||||
mkV2S : V -> V2S ;
|
||||
} ;
|
||||
mkV2A : overload {
|
||||
mkV2A : V -> Prep -> V2A ;
|
||||
mkV2A : V -> V2A ;
|
||||
} ;
|
||||
mkV2Q : overload {
|
||||
mkV2Q : V -> Prep -> V2Q ;
|
||||
mkV2Q : V -> V2Q ;
|
||||
} ;
|
||||
|
||||
mkVA : V -> VA ;
|
||||
mkV2A : V -> Prep -> V2A ;
|
||||
mkVQ : V -> VQ ;
|
||||
mkV2Q : V -> Prep -> V2Q ;
|
||||
|
||||
--
|
||||
-- mkAS : A -> AS ;
|
||||
@@ -197,6 +211,8 @@ oper
|
||||
= \a -> lin N (regNoun a) ;
|
||||
mkN : (bit : Str) -> Gender -> N
|
||||
= \a,b -> lin N (regNounG a b) ;
|
||||
mkN : (bit : Str) -> Gender -> Gender -> N
|
||||
= \a,g1,g2 -> lin N (regNounG a g1) | lin N (regNounG a g2) ; -- there are many nouns with variant genders
|
||||
mkN : (gat,gaten : Str) -> Gender -> N
|
||||
= \a,b,c -> lin N (mkNoun a b c) ;
|
||||
mkN : (huis,boot : N) -> N
|
||||
@@ -245,6 +261,7 @@ oper
|
||||
mkV : (aai,aait,aaien,aaide,aaiden,geaaid : Str) -> V =
|
||||
\a,b,c,d,f,g -> lin V (v2vv (mkVerb a b c d d f g)) ;
|
||||
mkV : Str -> V -> V = \v,s ->lin V (prefixV v s) ;
|
||||
mkV : V -> Str -> V = \s,v ->lin V (prefixV v s) ; ---- the same, in order matching Wiktionary-generated lexicon
|
||||
} ;
|
||||
zijnV v = lin V (v2vvAux v VZijn) ;
|
||||
reflV v = lin V {s = v.s ; aux = v.aux ; prefix = v.prefix ; vtype = VRefl} ;
|
||||
@@ -467,11 +484,26 @@ oper
|
||||
-- A2V : Type = A2 ;
|
||||
|
||||
mkV0 v = v ;
|
||||
mkV2S v p = lin V2S (prepV2 v p) ;
|
||||
mkV2V v p = lin V2V (prepV2 v p ** {isAux = False}) ;
|
||||
|
||||
mkV2V = overload {
|
||||
mkV2V : V -> Prep -> V2V = \v,p -> lin V2V (prepV2 v p ** {isAux = False}) ;
|
||||
mkV2V : V -> V2V = \v -> lin V2V (prepV2 v (mkPrep []) ** {isAux = False}) ;
|
||||
} ;
|
||||
mkV2S = overload {
|
||||
mkV2S : V -> Prep -> V2S = \v,p -> lin V2S (prepV2 v p) ;
|
||||
mkV2S : V -> V2S = \v -> lin V2S (prepV2 v (mkPrep [])) ;
|
||||
} ;
|
||||
mkV2A = overload {
|
||||
mkV2A : V -> Prep -> V2A = \v,p -> lin V2A (prepV2 v p) ;
|
||||
mkV2A : V -> V2A = \v -> lin V2A (prepV2 v (mkPrep [])) ;
|
||||
} ;
|
||||
mkV2Q = overload {
|
||||
mkV2Q : V -> Prep -> V2Q = \v,p -> lin V2Q (prepV2 v p) ;
|
||||
mkV2Q : V -> V2Q = \v -> lin V2Q (prepV2 v (mkPrep [])) ;
|
||||
} ;
|
||||
|
||||
|
||||
mkVA v = lin VA v ;
|
||||
mkV2A v p = lin V2A (prepV2 v p) ;
|
||||
mkV2Q v p = lin V2Q (prepV2 v p) ;
|
||||
--
|
||||
-- mkAS v = v ** {lock_A = <>} ;
|
||||
-- mkA2S v p = mkA2 v p ** {lock_A = <>} ;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -5,20 +5,20 @@ concrete ExtensionsDut of Extensions =
|
||||
|
||||
flags literal=Symb ; coding = utf8 ;
|
||||
|
||||
----lincat
|
||||
---- VPI = E.VPI ;
|
||||
---- ListVPI = E.ListVPI ;
|
||||
---- VPS = E.VPS ;
|
||||
---- ListVPS = E.ListVPS ;
|
||||
lincat
|
||||
VPI = E.VPI ;
|
||||
ListVPI = E.ListVPI ;
|
||||
VPS = E.VPS ;
|
||||
ListVPS = E.ListVPS ;
|
||||
|
||||
--- lin
|
||||
---- MkVPI = E.MkVPI ;
|
||||
lin
|
||||
MkVPI = E.MkVPI ;
|
||||
---- ConjVPI = E.ConjVPI ;
|
||||
---- ComplVPIVV = E.ComplVPIVV ;
|
||||
|
||||
---- MkVPS = E.MkVPS ;
|
||||
MkVPS = E.MkVPS ;
|
||||
---- ConjVPS = E.ConjVPS ;
|
||||
---- PredVPS = E.PredVPS ;
|
||||
PredVPS = E.PredVPS ;
|
||||
|
||||
---- BaseVPI = E.BaseVPI ;
|
||||
---- ConsVPI = E.ConsVPI ;
|
||||
@@ -29,8 +29,8 @@ flags literal=Symb ; coding = utf8 ;
|
||||
---- GenIP = E.GenIP ;
|
||||
---- GenRP = E.GenRP ;
|
||||
|
||||
---- PassVPSlash = E.PassVPSlash ;
|
||||
---- PassAgentVPSlash = E.PassAgentVPSlash ;
|
||||
PassVPSlash = E.PassVPSlash ;
|
||||
PassAgentVPSlash = E.PassAgentVPSlash ;
|
||||
|
||||
---- EmptyRelSlash = E.EmptyRelSlash ;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user