forked from GitHub/gf-core
basic
This commit is contained in:
10
grammars/basic/README
Normal file
10
grammars/basic/README
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
The naming of the grammars tut1.*.gf comes from their use in the
|
||||||
|
first GF tutorial in 1998. They still make a good starting
|
||||||
|
point to try out translating and editing. Their code is mostly
|
||||||
|
automatic translation from old-GF source.
|
||||||
|
|
||||||
|
The grammars Basic.gf and English.gf follow the module syntax
|
||||||
|
of GF 2. The other grammars can also be used in GF 2, which
|
||||||
|
creates a module structure when compiling them.
|
||||||
|
|
||||||
|
(AR 1998-2004)
|
||||||
12
grammars/basic/tut1.Abs.gf
Normal file
12
grammars/basic/tut1.Abs.gf
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
cat
|
||||||
|
S ; NP ; A1 ; CN ;
|
||||||
|
|
||||||
|
fun
|
||||||
|
PredA1 : NP -> A1 -> S ;
|
||||||
|
CondS : S -> S -> S ;
|
||||||
|
DisjA1 : A1 -> A1 -> A1 ;
|
||||||
|
Every : CN -> NP ;
|
||||||
|
ModA1 : CN -> A1 -> CN ;
|
||||||
|
Number : CN ;
|
||||||
|
Even : A1 ; Odd : A1 ; Prime : A1 ;
|
||||||
|
Zero : NP ;
|
||||||
32
grammars/basic/tut1.Deu.gf
Normal file
32
grammars/basic/tut1.Deu.gf
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
include tut1.Abs.gf ;
|
||||||
|
|
||||||
|
param Ord = dir | indir | sub ;
|
||||||
|
lincat S = {s : Ord => Str} ;
|
||||||
|
lincat NP = {s : Str} ;
|
||||||
|
lincat A1 = {s : Str} ;
|
||||||
|
lincat CN = {s : Str} ;
|
||||||
|
lin PredA1 Q F = {s = table {
|
||||||
|
{dir} => Q.s ++ "ist" ++ F.s ;
|
||||||
|
{indir} => "ist" ++ Q.s ++ F.s ;
|
||||||
|
{sub} => Q.s ++ F.s ++ "ist"}} ;
|
||||||
|
lin CondS A B = {s = table {
|
||||||
|
{dir} => "wenn" ++ (A.s ! sub) ++ "dann" ++ B.s ! indir ;
|
||||||
|
{indir} => (B.s ! indir) ++ "wenn" ++ A.s ! sub ;
|
||||||
|
{sub} => (B.s ! sub) ++ "wenn" ++ A.s ! sub}} ;
|
||||||
|
lin DisjA1 F G =
|
||||||
|
{s = F.s ++ "oder" ++ G.s} ;
|
||||||
|
lin Every A =
|
||||||
|
{s = "jede" ++ A.s} ;
|
||||||
|
lin ModA1 A F =
|
||||||
|
{s = F.s ++ A.s} ;
|
||||||
|
lin Number =
|
||||||
|
{s = "Zahl"} ;
|
||||||
|
lin Even =
|
||||||
|
{s = "gerade"} ;
|
||||||
|
lin Odd =
|
||||||
|
{s = "ungerade"} ;
|
||||||
|
lin Prime =
|
||||||
|
{s = "unteilbar"} ;
|
||||||
|
lin Zero =
|
||||||
|
{s = "Null"} ;
|
||||||
|
|
||||||
26
grammars/basic/tut1.Eng.gf
Normal file
26
grammars/basic/tut1.Eng.gf
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
include tut1.Abs.gf ;
|
||||||
|
|
||||||
|
lincat
|
||||||
|
S = {s : Str} ; NP = {s : Str} ; A1 = {s : Str} ; CN = {s : Str} ;
|
||||||
|
|
||||||
|
lin PredA1 Q F =
|
||||||
|
{s = Q.s ++ "is" ++ F.s} ;
|
||||||
|
lin CondS A B =
|
||||||
|
{s = "if" ++ A.s ++ "then" ++ B.s} ;
|
||||||
|
lin DisjA1 F G =
|
||||||
|
{s = F.s ++ "or" ++ G.s} ;
|
||||||
|
lin Every A =
|
||||||
|
{s = "every" ++ A.s} ;
|
||||||
|
lin ModA1 A F =
|
||||||
|
{s = F.s ++ A.s} ;
|
||||||
|
lin Number =
|
||||||
|
{s = "number"} ;
|
||||||
|
lin Even =
|
||||||
|
{s = "even"} ;
|
||||||
|
lin Odd =
|
||||||
|
{s = "odd"} ;
|
||||||
|
lin Prime =
|
||||||
|
{s = "prime"} ;
|
||||||
|
lin Zero =
|
||||||
|
{s = "zero"} ;
|
||||||
|
|
||||||
26
grammars/basic/tut1.Fin.gf
Normal file
26
grammars/basic/tut1.Fin.gf
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
include tut1.Abs.gf ;
|
||||||
|
|
||||||
|
lincat S = {s : Str} ;
|
||||||
|
lincat NP = {s : Str} ;
|
||||||
|
lincat A1 = {s : Str} ;
|
||||||
|
lincat CN = {s : Str} ;
|
||||||
|
lin PredA1 Q F =
|
||||||
|
{s = Q.s ++ "on" ++ F.s} ;
|
||||||
|
lin CondS A B =
|
||||||
|
{s = "jos" ++ A.s ++ "niin" ++ B.s} ;
|
||||||
|
lin DisjA1 F G =
|
||||||
|
{s = F.s ++ "tai" ++ G.s} ;
|
||||||
|
lin Every A =
|
||||||
|
{s = A.s ++ "kuin" ++ A.s} ;
|
||||||
|
lin ModA1 A F =
|
||||||
|
{s = F.s ++ A.s} ;
|
||||||
|
lin Number =
|
||||||
|
{s = "luku"} ;
|
||||||
|
lin Even =
|
||||||
|
{s = "parillinen"} ;
|
||||||
|
lin Odd =
|
||||||
|
{s = "pariton"} ;
|
||||||
|
lin Prime =
|
||||||
|
{s = "jaoton"} ;
|
||||||
|
lin Zero =
|
||||||
|
{s = "nolla"} ;
|
||||||
26
grammars/basic/tut1.Fra.gf
Normal file
26
grammars/basic/tut1.Fra.gf
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
include tut1.Abs.gf ;
|
||||||
|
|
||||||
|
lincat S = {s : Str} ;
|
||||||
|
lincat NP = {s : Str} ;
|
||||||
|
lincat A1 = {s : Str} ;
|
||||||
|
lincat CN = {s : Str} ;
|
||||||
|
lin PredA1 Q F =
|
||||||
|
{s = Q.s ++ "est" ++ F.s} ;
|
||||||
|
lin CondS A B =
|
||||||
|
{s = "si" ++ A.s ++ "alors" ++ B.s} ;
|
||||||
|
lin DisjA1 F G =
|
||||||
|
{s = F.s ++ "ou" ++ G.s} ;
|
||||||
|
lin Every A =
|
||||||
|
{s = "tout" ++ A.s} ;
|
||||||
|
lin ModA1 A F =
|
||||||
|
{s = A.s ++ F.s} ;
|
||||||
|
lin Number =
|
||||||
|
{s = "nombre"} ;
|
||||||
|
lin Even =
|
||||||
|
{s = "pair"} ;
|
||||||
|
lin Odd =
|
||||||
|
{s = "impair"} ;
|
||||||
|
lin Prime =
|
||||||
|
{s = "premier"} ;
|
||||||
|
lin Zero =
|
||||||
|
{s = "zéro"} ;
|
||||||
26
grammars/basic/tut1.Ita.gf
Normal file
26
grammars/basic/tut1.Ita.gf
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
include tut1.Abs.gf ;
|
||||||
|
|
||||||
|
lincat S = {s : Str} ;
|
||||||
|
lincat NP = {s : Str} ;
|
||||||
|
lincat A1 = {s : Str} ;
|
||||||
|
lincat CN = {s : Str} ;
|
||||||
|
lin PredA1 Q F =
|
||||||
|
{s = Q.s ++ "è" ++ F.s} ;
|
||||||
|
lin CondS A B =
|
||||||
|
{s = "se" ++ A.s ++ "allora" ++ B.s} ;
|
||||||
|
lin DisjA1 F G =
|
||||||
|
{s = F.s ++ "o" ++ G.s} ;
|
||||||
|
lin Every A =
|
||||||
|
{s = "ogni" ++ A.s} ;
|
||||||
|
lin ModA1 A F =
|
||||||
|
{s = A.s ++ F.s} ;
|
||||||
|
lin Number =
|
||||||
|
{s = "numero"} ;
|
||||||
|
lin Even =
|
||||||
|
{s = "pari"} ;
|
||||||
|
lin Odd =
|
||||||
|
{s = "dispari"} ;
|
||||||
|
lin Prime =
|
||||||
|
{s = "primo"} ;
|
||||||
|
lin Zero =
|
||||||
|
{s = "zero"} ;
|
||||||
32
grammars/basic/tut1.Sve.gf
Normal file
32
grammars/basic/tut1.Sve.gf
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
include tut1.Abs.gf ;
|
||||||
|
|
||||||
|
param Ord = dir | indir | sub ;
|
||||||
|
lincat S = {s : Ord => Str} ;
|
||||||
|
lincat NP = {s : Str} ;
|
||||||
|
lincat A1 = {s : Str} ;
|
||||||
|
lincat CN = {s : Str} ;
|
||||||
|
lin PredA1 Q F = {s = table {
|
||||||
|
dir => Q.s ++ "är" ++ F.s ;
|
||||||
|
indir => "är" ++ Q.s ++ F.s ;
|
||||||
|
sub => Q.s ++ "är" ++ F.s}} ;
|
||||||
|
lin CondS A B = {s = table {
|
||||||
|
dir => "om" ++ A.s ! sub ++ "så" ++ B.s ! indir ;
|
||||||
|
indir => B.s ! indir ++ "om" ++ A.s ! sub ;
|
||||||
|
sub => B.s ! sub ++ "om" ++ A.s ! sub}} ;
|
||||||
|
lin DisjA1 F G =
|
||||||
|
{s = F.s ++ "eller" ++ G.s} ;
|
||||||
|
lin Every A =
|
||||||
|
{s = "varje" ++ A.s} ;
|
||||||
|
lin ModA1 A F =
|
||||||
|
{s = F.s ++ A.s} ;
|
||||||
|
lin Number =
|
||||||
|
{s = "tal"} ;
|
||||||
|
lin Even =
|
||||||
|
{s = "jämnt"} ;
|
||||||
|
lin Odd =
|
||||||
|
{s = "udda"} ;
|
||||||
|
lin Prime =
|
||||||
|
{s = "primt"} ;
|
||||||
|
lin Zero =
|
||||||
|
{s = "noll"} ;
|
||||||
|
|
||||||
@@ -1,62 +1,67 @@
|
|||||||
rm -rf gf-grammars
|
rm -rf grammars
|
||||||
mkdir -pv gf-grammars
|
mkdir -pv grammars
|
||||||
mkdir -pv gf-grammars/letter
|
mkdir -pv grammars/letter
|
||||||
# mkdir -pv gf-grammars/logic
|
# mkdir -pv grammars/logic
|
||||||
mkdir -pv gf-grammars/numerals
|
mkdir -pv grammars/basic
|
||||||
mkdir -pv gf-grammars/prelude
|
mkdir -pv grammars/numerals
|
||||||
mkdir -pv gf-grammars/resource
|
mkdir -pv grammars/prelude
|
||||||
mkdir -pv gf-grammars/resource/abstract
|
mkdir -pv grammars/resource
|
||||||
mkdir -pv gf-grammars/resource/english
|
mkdir -pv grammars/resource/abstract
|
||||||
mkdir -pv gf-grammars/resource/finnish
|
mkdir -pv grammars/resource/english
|
||||||
mkdir -pv gf-grammars/resource/french
|
mkdir -pv grammars/resource/finnish
|
||||||
mkdir -pv gf-grammars/resource/german
|
mkdir -pv grammars/resource/french
|
||||||
mkdir -pv gf-grammars/resource/italian
|
mkdir -pv grammars/resource/german
|
||||||
mkdir -pv gf-grammars/resource/romance
|
mkdir -pv grammars/resource/italian
|
||||||
mkdir -pv gf-grammars/resource/russian
|
mkdir -pv grammars/resource/romance
|
||||||
mkdir -pv gf-grammars/resource/swedish
|
mkdir -pv grammars/resource/russian
|
||||||
mkdir -pv gf-grammars/database
|
mkdir -pv grammars/resource/swedish
|
||||||
mkdir -pv gf-grammars/imperative
|
mkdir -pv grammars/database
|
||||||
mkdir -pv gf-grammars/imperative/compiler
|
mkdir -pv grammars/imperative
|
||||||
|
mkdir -pv grammars/imperative/compiler
|
||||||
|
|
||||||
cp -pv letter/README gf-grammars/letter/
|
cp -pv letter/README grammars/letter/
|
||||||
cp -pv letter/mkLetter.gfs gf-grammars/letter/
|
cp -pv letter/mkLetter.gfs grammars/letter/
|
||||||
cp -pv letter/*.gf gf-grammars/letter/
|
cp -pv letter/*.gf grammars/letter/
|
||||||
|
|
||||||
# cp -pv logic/*.gf gf-grammars/logic/
|
# cp -pv logic/*.gf grammars/logic/
|
||||||
|
|
||||||
cp -pv newnumerals/README gf-grammars/numerals/
|
cp -pv newnumerals/README grammars/numerals/
|
||||||
cp -pv newnumerals/*.gf gf-grammars/numerals/
|
cp -pv newnumerals/*.gf grammars/numerals/
|
||||||
cp -pv newnumerals/mkNumerals.gfs gf-grammars/numerals/
|
cp -pv newnumerals/mkNumerals.gfs grammars/numerals/
|
||||||
|
|
||||||
cp -pv prelude/README gf-grammars/prelude/
|
cp -pv basic/README grammars/basic/
|
||||||
cp -pv prelude/*.gf gf-grammars/prelude/
|
cp -pv basic/*.gf grammars/basic/
|
||||||
|
|
||||||
cp -pv newresource/mkTest.gfs gf-grammars/resource/
|
cp -pv prelude/README grammars/prelude/
|
||||||
cp -pv newresource/mkParadigms.gfs gf-grammars/resource/
|
cp -pv prelude/*.gf grammars/prelude/
|
||||||
cp -pv newresource/README gf-grammars/resource/
|
|
||||||
cp -pv newresource/abstract/*.gf gf-grammars/resource/abstract/
|
|
||||||
cp -pv newresource/english/*.gf gf-grammars/resource/english/
|
|
||||||
rm -f gf-grammars/resource/english/ResLex*
|
|
||||||
cp -pv newresource/finnish/*.gf gf-grammars/resource/finnish/
|
|
||||||
cp -pv newresource/french/*.gf gf-grammars/resource/french/
|
|
||||||
cp -pv newresource/german/*.gf gf-grammars/resource/german/
|
|
||||||
cp -pv newresource/italian/*.gf gf-grammars/resource/italian/
|
|
||||||
cp -pv newresource/romance/*.gf gf-grammars/resource/romance/
|
|
||||||
cp -pv newresource/russian/*.gf gf-grammars/resource/russian/
|
|
||||||
cp -pv newresource/swedish/*.gf gf-grammars/resource/swedish/
|
|
||||||
|
|
||||||
cp -pv database/README gf-grammars/database/
|
cp -pv newresource/mkTest.gfs grammars/resource/
|
||||||
cp -pv database/*.gf gf-grammars/database/
|
cp -pv newresource/mkParadigms.gfs grammars/resource/
|
||||||
|
cp -pv newresource/README grammars/resource/
|
||||||
|
cp -pv newresource/abstract/*.gf grammars/resource/abstract/
|
||||||
|
cp -pv newresource/english/*.gf grammars/resource/english/
|
||||||
|
rm -f grammars/resource/english/ResLex*
|
||||||
|
cp -pv newresource/finnish/*.gf grammars/resource/finnish/
|
||||||
|
cp -pv newresource/french/*.gf grammars/resource/french/
|
||||||
|
cp -pv newresource/german/*.gf grammars/resource/german/
|
||||||
|
cp -pv newresource/italian/*.gf grammars/resource/italian/
|
||||||
|
cp -pv newresource/romance/*.gf grammars/resource/romance/
|
||||||
|
cp -pv newresource/russian/*.gf grammars/resource/russian/
|
||||||
|
cp -pv newresource/swedish/*.gf grammars/resource/swedish/
|
||||||
|
|
||||||
cp -pv imperative/*.gf gf-grammars/imperative/
|
cp -pv database/README grammars/database/
|
||||||
cp -pv imperative/compiler/*.hs gf-grammars/imperative/compiler/
|
cp -pv database/*.gf grammars/database/
|
||||||
cp -pv imperative/compiler/README gf-grammars/imperative/compiler/
|
|
||||||
cp -pv imperative/compiler/FILES gf-grammars/imperative/compiler/
|
cp -pv imperative/*.gf grammars/imperative/
|
||||||
cp -pv imperative/compiler/gfcc gf-grammars/imperative/compiler/
|
cp -pv imperative/compiler/*.hs grammars/imperative/compiler/
|
||||||
cp -pv imperative/compiler/makefile gf-grammars/imperative/compiler/
|
cp -pv imperative/compiler/README grammars/imperative/compiler/
|
||||||
cp -pv imperative/compiler/*.c gf-grammars/imperative/compiler/
|
cp -pv imperative/compiler/FILES grammars/imperative/compiler/
|
||||||
cp -pv imperative/compiler/*.gfs gf-grammars/imperative/compiler/
|
cp -pv imperative/compiler/gfcc grammars/imperative/compiler/
|
||||||
cp -pv imperative/compiler/runtime.j gf-grammars/imperative/compiler/
|
cp -pv imperative/compiler/makefile grammars/imperative/compiler/
|
||||||
|
cp -pv imperative/compiler/*.c grammars/imperative/compiler/
|
||||||
|
cp -pv imperative/compiler/*.gfs grammars/imperative/compiler/
|
||||||
|
cp -pv imperative/compiler/runtime.j grammars/imperative/compiler/
|
||||||
|
|
||||||
|
|
||||||
tar cvfz gf-grammars.tgz gf-grammars
|
tar cvfz grammars.tgz grammars
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user