diff options
| author | peb <unknown> | 2005-04-11 12:57:45 +0000 |
|---|---|---|
| committer | peb <unknown> | 2005-04-11 12:57:45 +0000 |
| commit | ac00f77dadd4d447803dd7cab5a36f47365325d0 (patch) | |
| tree | 2fd02b19234f8d1fcc20ee67a2367d4d4eebfcd8 /grammars | |
| parent | f6273f7033b85eea9a8d0cc7d31e9697ba95d5b7 (diff) | |
"Committed_by_peb"
Diffstat (limited to 'grammars')
| -rw-r--r-- | grammars/ljung/fin_dep_types/Findep.gf | 36 | ||||
| -rw-r--r-- | grammars/ljung/fin_dep_types/FindepAbs.gf | 43 | ||||
| -rw-r--r-- | grammars/ljung/thesis/FragmentAbstract.gf | 17 | ||||
| -rw-r--r-- | grammars/ljung/thesis/FragmentNumber.gf | 26 | ||||
| -rw-r--r-- | grammars/ljung/thesis/FragmentResource.gf | 10 | ||||
| -rw-r--r-- | grammars/ljung/thesis/FragmentSimple.gf | 17 | ||||
| -rw-r--r-- | grammars/ljung/thesis/FragmentSwedish.gf | 26 | ||||
| -rw-r--r-- | grammars/ljung/timeflies/TimeFlies.gf | 24 | ||||
| -rw-r--r-- | grammars/ljung/timeflies/TimeFliesAbs.gf | 27 | ||||
| -rw-r--r-- | grammars/ljung/timeflies/TimeFliesCnc.gf | 2 | ||||
| -rw-r--r-- | grammars/ljung/variants/TestVars.gf | 14 | ||||
| -rw-r--r-- | grammars/ljung/variants/TestVarsA.gf | 9 | ||||
| -rw-r--r-- | grammars/ljung/variants/TestVarsR.gf | 27 |
13 files changed, 278 insertions, 0 deletions
diff --git a/grammars/ljung/fin_dep_types/Findep.gf b/grammars/ljung/fin_dep_types/Findep.gf new file mode 100644 index 000000000..cd722ec35 --- /dev/null +++ b/grammars/ljung/fin_dep_types/Findep.gf @@ -0,0 +1,36 @@ + +concrete Findep of FindepAbs = { + +lin + +Sg = {s = "SINGULAR"}; +-- Pl = {s = "PLURAL"}; + +s n g b x y = {s = x.s ++ y.s}; +np n g b x y = {s = x.s ++ y.s}; +vp n g b x y = {s = x.s ++ y.s}; + +npBest n g x = {s = x.s}; +npPl g b x = {s = x.s}; + +en = {s = "en"}; +ett = {s = "ett"}; +den = {s = "den"}; +det = {s = "det"}; + +alla g = {s = "alla"}; +de g = {s = "de"}; + +katt = {s = "katt"}; +katter = {s = "katter"}; +katten = {s = "katten"}; +katterna = {s = "katterna"}; + +barn n = {s = "barn"}; +barnet = {s = "barnet"}; +barnen = {s = "barnen"}; + +jagar = {s = "jagar"}; + +} + diff --git a/grammars/ljung/fin_dep_types/FindepAbs.gf b/grammars/ljung/fin_dep_types/FindepAbs.gf new file mode 100644 index 000000000..3f3bad71c --- /dev/null +++ b/grammars/ljung/fin_dep_types/FindepAbs.gf @@ -0,0 +1,43 @@ + +abstract FindepAbs = { + +cat +Num; Gen; Def; +S; V; VP; +D Num Gen Def; N Num Gen Def; NP Num Gen Def; + +fun + +Sg, Pl : Num; +Best, OBest : Def; +Utr, Neu : Gen; + + +s : (n:Num) -> (g:Gen) -> (b:Def) -> NP n g b -> VP -> S; +np : (n:Num) -> (g:Gen) -> (b:Def) -> D n g b -> N n g b -> NP n g b; +vp : (n:Num) -> (g:Gen) -> (b:Def) -> V -> NP n g b -> VP; + +npBest : (n:Num) -> (g:Gen) -> N n g Best -> NP n g Best; +npPl : (g:Gen) -> (b:Def) -> N Pl g b -> NP Pl g b; + +en : D Sg Utr OBest; +ett : D Sg Neu OBest; +den : D Sg Utr Best; +det : D Sg Neu OBest; + +alla : (g:Gen) -> D Pl g OBest; +de : (g:Gen) -> D Pl g Best; + +katt : N Sg Utr OBest; +katten : N Sg Utr Best; +katter : N Pl Utr OBest; +katterna : N Pl Utr Best; + +barn : (n:Num) -> N n Neu OBest; +barnet : N Sg Neu Best; +barnen : N Pl Neu Best; + +jagar : V; + +} + diff --git a/grammars/ljung/thesis/FragmentAbstract.gf b/grammars/ljung/thesis/FragmentAbstract.gf new file mode 100644 index 000000000..9c1f5df57 --- /dev/null +++ b/grammars/ljung/thesis/FragmentAbstract.gf @@ -0,0 +1,17 @@ + +abstract FragmentAbstract = { + +cat S; NP; VP; D; N; V; + +fun + +s_p : NP -> VP -> S; +np_d : D -> N -> NP; +np_p : N -> NP; +vp_t : V -> NP -> VP; +d_a, d_m : D; +n_c, n_f : N; +v_e : V; + +} + diff --git a/grammars/ljung/thesis/FragmentNumber.gf b/grammars/ljung/thesis/FragmentNumber.gf new file mode 100644 index 000000000..9dd05adb2 --- /dev/null +++ b/grammars/ljung/thesis/FragmentNumber.gf @@ -0,0 +1,26 @@ + +concrete FragmentNumber of FragmentAbstract = open FragmentResource in { + +lincat + +N = { s : Num => Str }; +V = { s : Num => Str }; +VP = { s : Num => Str }; + +D = { s : Str; n : Num }; +NP = { s : Str; n : Num }; + +lin + +s_p x y = { s = x.s ++ y.s!x.n }; +np_d x y = { s = x.s ++ y.s!x.n; n = x.n }; +np_p x = { s = x.s!Pl; n = Pl }; +vp_t x y = { s = table { z => x.s!z ++ y.s } }; +d_a = { s = "a"; n = Sg }; +d_m = { s = "many"; n = Pl }; +n_c = { s = table { Sg => "lion"; Pl => "lions" } }; +n_f = { s = table { _ => "fish" } }; +v_e = { s = table { Sg => "eats" ; Pl => "eat" } }; + +} + diff --git a/grammars/ljung/thesis/FragmentResource.gf b/grammars/ljung/thesis/FragmentResource.gf new file mode 100644 index 000000000..154b50a52 --- /dev/null +++ b/grammars/ljung/thesis/FragmentResource.gf @@ -0,0 +1,10 @@ + +resource FragmentResource = { + +param + +Num = Sg | Pl; +Gen = Neu | Utr; +Order = Dir | Indir | Sub | Top; + +} diff --git a/grammars/ljung/thesis/FragmentSimple.gf b/grammars/ljung/thesis/FragmentSimple.gf new file mode 100644 index 000000000..bdf2581d0 --- /dev/null +++ b/grammars/ljung/thesis/FragmentSimple.gf @@ -0,0 +1,17 @@ + +concrete FragmentSimple of FragmentAbstract = { + +lin + +s_p x y = { s = x.s ++ y.s }; +np_d x y = { s = x.s ++ y.s }; +np_p x = { s = x.s }; +vp_t x y = { s = x.s ++ y.s }; +d_a = { s = "a" }; +d_m = { s = "many" }; +n_c = { s = variants { "lion" ; "lions" } }; +n_f = { s = "fish" }; +v_e = { s = variants { "eats" ; "eat" } }; + +} + diff --git a/grammars/ljung/thesis/FragmentSwedish.gf b/grammars/ljung/thesis/FragmentSwedish.gf new file mode 100644 index 000000000..db8396bd1 --- /dev/null +++ b/grammars/ljung/thesis/FragmentSwedish.gf @@ -0,0 +1,26 @@ + +concrete FragmentSwedish of FragmentAbstract = open FragmentResource in { + +lincat + +S = { s : Order => Str }; +VP = { s1 : Str; s2 : Str }; +N = { s : Num => Str; g : Gen }; +D = { s : Gen => Str; n : Num }; + +lin + +s_p x y = { s = table { Indir => y.s1 ++ x.s ++ y.s2; + Top => y.s2 ++ y.s1 ++ x.s; + _ => x.s ++ y.s1 ++ y.s2 } }; +np_d x y = { s = x.s!y.g ++ y.s!x.n }; +np_p x = { s = x.s!Pl }; +vp_t x y = { s1 = x.s; s2 = y.s }; +d_a = { s = table { Utr => "en"; Neu => "ett" }; n = Sg }; +d_m = { s = table { _ => "maanga" }; n = Pl }; +n_c = { s = table { _ => "lejon" }; g = Neu }; +n_f = { s = table { Sg => "fisk"; Pl => "fiskar" }; g = Utr }; +v_e = { s = "aeter" }; + +} + diff --git a/grammars/ljung/timeflies/TimeFlies.gf b/grammars/ljung/timeflies/TimeFlies.gf new file mode 100644 index 000000000..f46592b55 --- /dev/null +++ b/grammars/ljung/timeflies/TimeFlies.gf @@ -0,0 +1,24 @@ + +concrete TimeFlies of TimeFliesAbs = { + +lin +s1 x y = {s = x.s ++ y.s}; +vp1 x = {s = x.s}; +vp2 x y = {s = x.s ++ y.s}; +vp3 x y = {s = x.s ++ y.s}; +np1 x = {s = x.s}; +np2 x y = {s = x.s ++ y.s}; +np3 x y = {s = x.s ++ y.s}; +pp1 x y = {s = x.s ++ y.s}; + +flyV = {s = "flies"}; +timeV = {s = "time"}; +likeV = {s = "like"}; +flyN = {s = "flies"}; +timeN = {s = "time"}; +arrowN = {s = "arrow"}; +anD = {s = "an"}; +timeD = {s = "time"}; +likeP = {s = "like"}; + +} diff --git a/grammars/ljung/timeflies/TimeFliesAbs.gf b/grammars/ljung/timeflies/TimeFliesAbs.gf new file mode 100644 index 000000000..fe52f82b6 --- /dev/null +++ b/grammars/ljung/timeflies/TimeFliesAbs.gf @@ -0,0 +1,27 @@ + +abstract TimeFliesAbs = { + +cat +S; VP; NP; PP; V; N; D; P; + +fun +s1 : NP -> VP -> S; +vp1 : V -> VP; +vp2 : V -> NP -> VP; +vp3 : VP -> PP -> VP; +np1 : N -> NP; +np2 : D -> N -> NP; +np3 : NP -> PP -> NP; +pp1 : P -> NP -> PP; + +flyV : V; +timeV : V; +likeV : V; +flyN : N; +timeN : N; +arrowN : N; +anD : D; +timeD : D; +likeP : P; +} + diff --git a/grammars/ljung/timeflies/TimeFliesCnc.gf b/grammars/ljung/timeflies/TimeFliesCnc.gf new file mode 100644 index 000000000..5952dda49 --- /dev/null +++ b/grammars/ljung/timeflies/TimeFliesCnc.gf @@ -0,0 +1,2 @@ + +resource diff --git a/grammars/ljung/variants/TestVars.gf b/grammars/ljung/variants/TestVars.gf new file mode 100644 index 000000000..5341f12fe --- /dev/null +++ b/grammars/ljung/variants/TestVars.gf @@ -0,0 +1,14 @@ + +concrete TestVars of TestVarsA = open TestVarsR in { + +lincat S = { s : XYZ => Str; p : { s : Str; a : AB } }; + +lin a = { s = table { X _ => variants { "x1" ; "x2" }; + Y => variants { "y1" ; "y2" }; + _ => variants { "z1" ; "z2" } }; + p = variants { { s = "s1" ; a = A } ; + { s = "s2" ; a = B } }; + }; + +} + diff --git a/grammars/ljung/variants/TestVarsA.gf b/grammars/ljung/variants/TestVarsA.gf new file mode 100644 index 000000000..253af1320 --- /dev/null +++ b/grammars/ljung/variants/TestVarsA.gf @@ -0,0 +1,9 @@ + +abstract TestVarsA = { + +cat S; + +fun a : S; + +} + diff --git a/grammars/ljung/variants/TestVarsR.gf b/grammars/ljung/variants/TestVarsR.gf new file mode 100644 index 000000000..c0c02926c --- /dev/null +++ b/grammars/ljung/variants/TestVarsR.gf @@ -0,0 +1,27 @@ + +resource TestVarsR = { + +param AB = A | B; +param XYZ = X AB | Y | Z AB; + +} + + + + + + + + + + + + + + + + + + + + |
