summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoraarne <aarne@chalmers.se>2013-11-28 08:03:50 +0000
committeraarne <aarne@chalmers.se>2013-11-28 08:03:50 +0000
commit63e338cb8059bd24565afef6a568c5b515381006 (patch)
tree7b38c664914551e47cb6f5fe8ba8a0cc07f97a54
parentf5ec987c5d1fe5b05a84d1f9b20bc70f26a385f0 (diff)
Translate grammar for Ger and Hin added. Some functions in Ger phrasebook need to be commented out to compile. Now a system for 7 languages can be built, but including Fre as well is too heavy on my laptop although it can be compiled separately.
-rw-r--r--examples/translator/Makefile19
-rw-r--r--examples/translator/Translate.gf2
-rw-r--r--examples/translator/TranslateChi.gf1
-rw-r--r--examples/translator/TranslateEng.gf1
-rw-r--r--examples/translator/TranslateFin.gf1
-rw-r--r--examples/translator/TranslateGer.gf27
-rw-r--r--examples/translator/TranslateHin.gf26
-rw-r--r--examples/translator/TranslateSwe.gf1
8 files changed, 74 insertions, 4 deletions
diff --git a/examples/translator/Makefile b/examples/translator/Makefile
index 68534bb89..bbd84b59f 100644
--- a/examples/translator/Makefile
+++ b/examples/translator/Makefile
@@ -4,24 +4,33 @@ GF=gf +RTS -K200M -RTS -make
all: TranslateEng TranslateBul TranslateFre TranslateBulEngFre
-TranslateEng:
- $(GF) -literal=Symb -probs=$(PROBSFILE) -name=TranslateEng TranslateEng.gf
-
TranslateBul:
$(GF) -literal=Symb -probs=$(PROBSFILE) -name=TranslateBul TranslateBul.gf
TranslateChi:
$(GF) -s -literal=Symb -probs=$(PROBSFILE) -name=TranslateChi TranslateChi.gf
+TranslateEng:
+ $(GF) -literal=Symb -probs=$(PROBSFILE) -name=TranslateEng TranslateEng.gf
+
TranslateFin:
$(GF) -s -literal=Symb -probs=$(PROBSFILE) -name=TranslateFin TranslateFin.gf
TranslateFre:
$(GF) -literal=Symb -probs=$(PROBSFILE) -name=TranslateFre TranslateFre.gf
+TranslateGer:
+ $(GF) -literal=Symb -probs=$(PROBSFILE) -name=TranslateGer TranslateGer.gf
+
+TranslateHin:
+ $(GF) -literal=Symb -probs=$(PROBSFILE) -name=TranslateHin TranslateHin.gf
+
TranslateSwe:
$(GF) -literal=Symb -probs=$(PROBSFILE) -name=TranslateSwe TranslateSwe.gf
+
+
+
TranslateEngBul:
$(GF) -literal=Symb -probs=$(PROBSFILE) -name=TranslateEngBul TranslateEng.pgf TranslateBul.pgf
@@ -40,3 +49,7 @@ TranslateEngSwe:
TranslateBulEngFre:
$(GF) -literal=Symb -probs=$(PROBSFILE) -name=TranslateBulEngFre TranslateBul.pgf TranslateEng.pgf TranslateFre.pgf
+Translate7:
+ $(GF) -literal=Symb -probs=$(PROBSFILE) -name=Translate7 TranslateEng.pgf TranslateChi.pgf TranslateFin.pgf TranslateSwe.pgf TranslateBul.pgf TranslateGer.pgf TranslateHin.pgf
+# adding TranslateFre too heavy so far
+
diff --git a/examples/translator/Translate.gf b/examples/translator/Translate.gf
index 1495000b7..6efff161f 100644
--- a/examples/translator/Translate.gf
+++ b/examples/translator/Translate.gf
@@ -12,5 +12,5 @@ fun
NP_Object : NP -> Object ;
NP_Item : NP -> Item ;
NP_Place : NP -> Place ;
-
+ NP_Name : NP -> Name ;
} \ No newline at end of file
diff --git a/examples/translator/TranslateChi.gf b/examples/translator/TranslateChi.gf
index 407aef798..4ef480232 100644
--- a/examples/translator/TranslateChi.gf
+++ b/examples/translator/TranslateChi.gf
@@ -15,6 +15,7 @@ lin
NP_Item np = lin NP np ;
NP_Place np0 = let np = lin NP np0 in
{name = np ; at = SyntaxChi.mkAdv in_Prep np ; to = SyntaxChi.mkAdv to_Prep np} ;
+ NP_Name np = lin NP np ;
--- to remove Phrasebook punctuation, which makes the output in Translate heterogeneous
diff --git a/examples/translator/TranslateEng.gf b/examples/translator/TranslateEng.gf
index 0c02c6263..f35c7b835 100644
--- a/examples/translator/TranslateEng.gf
+++ b/examples/translator/TranslateEng.gf
@@ -14,6 +14,7 @@ lin
NP_Item np = lin NP np ;
NP_Place np0 = let np = lin NP np0 in
{name = np ; at = SyntaxEng.mkAdv in_Prep np ; to = SyntaxEng.mkAdv to_Prep np} ;
+ NP_Name np = lin NP np ;
--- to remove Phrasebook punctuation, which makes the output in Translate heterogeneous
diff --git a/examples/translator/TranslateFin.gf b/examples/translator/TranslateFin.gf
index 0dab81f29..5b5ada2fe 100644
--- a/examples/translator/TranslateFin.gf
+++ b/examples/translator/TranslateFin.gf
@@ -17,6 +17,7 @@ lin
NP_Place np0 = let np = lin NP np0 in
{name = np ; at = SyntaxFin.mkAdv in_Prep np ;
to = SyntaxFin.mkAdv to_Prep np ; from = SyntaxFin.mkAdv from_Prep np} ;
+ NP_Name np = lin NP np ;
--- to remove Phrasebook punctuation, which makes the output in Translate heterogeneous
diff --git a/examples/translator/TranslateGer.gf b/examples/translator/TranslateGer.gf
new file mode 100644
index 000000000..3af3ace4d
--- /dev/null
+++ b/examples/translator/TranslateGer.gf
@@ -0,0 +1,27 @@
+--# -path=.:alltenses:../phrasebook:../../lib/src/english:../../lib/src/german
+
+concrete TranslateGer of Translate =
+ ParseGer - [open_A],
+ PhrasebookGer - [PSentence, PQuestion, PGreetingMale, PGreetingFemale, GObjectPlease]
+ ** open SyntaxGer, ParadigmsGer, (E = ExtraGer), Prelude in {
+
+flags
+ literal = Symb ;
+
+lin
+ PPhr p = lin Text p ;
+ NP_Person np = {name = lin NP np ; isPron = False ; poss = mkQuant he_Pron} ;
+ NP_Object np = lin NP np ;
+ NP_Item np = lin NP np ;
+ NP_Place np0 = let np = lin NP np0 in
+ {name = np ; at = SyntaxGer.mkAdv in_Prep np ; to = SyntaxGer.mkAdv to_Prep np} ;
+ NP_Name np = lin NP np ;
+
+--- to remove Phrasebook punctuation, which makes the output in Translate heterogeneous
+
+ PSentence s = lin Text (mkUtt s) ;
+ PQuestion s = lin Text (mkUtt s) ;
+ PGreetingMale, PGreetingFemale = \g -> lin Text g ;
+ GObjectPlease o = lin Text (mkUtt o) ;
+
+} \ No newline at end of file
diff --git a/examples/translator/TranslateHin.gf b/examples/translator/TranslateHin.gf
new file mode 100644
index 000000000..cf8de4ebb
--- /dev/null
+++ b/examples/translator/TranslateHin.gf
@@ -0,0 +1,26 @@
+--# -path=.:../phrasebook:../../lib/src/english:../../lib/src/abstract:../../lib/src/hindi:../../lib/src/hindustani
+
+concrete TranslateHin of Translate =
+ ParseHin,
+ PhrasebookHin - [PSentence, PQuestion, PGreetingMale, PGreetingFemale, GObjectPlease]
+ ** open SyntaxHin, (E = ExtraHin), Prelude in {
+
+flags
+ literal = Symb ;
+lin
+ PPhr p = lin Text p ;
+ NP_Person np = {name = lin NP np ; isPron = False ; poss = E.GenNP np} ;
+ NP_Object np = lin NP np ;
+ NP_Item np = lin NP np ;
+ NP_Place np0 = let np = lin NP np0 in
+ {name = np ; at = SyntaxHin.mkAdv in_Prep np ; to = SyntaxHin.mkAdv to_Prep np} ;
+ NP_Name np = lin NP np ;
+
+--- to remove Phrasebook punctuation, which makes the output in Translate heterogeneous
+
+ PSentence s = lin Text (mkUtt s) ;
+ PQuestion s = lin Text (mkUtt s) ;
+ PGreetingMale, PGreetingFemale = \g -> lin Text g ;
+ GObjectPlease o = lin Text (mkUtt o) ;
+
+} \ No newline at end of file
diff --git a/examples/translator/TranslateSwe.gf b/examples/translator/TranslateSwe.gf
index 3d8f5d8fd..b81460bde 100644
--- a/examples/translator/TranslateSwe.gf
+++ b/examples/translator/TranslateSwe.gf
@@ -15,6 +15,7 @@ lin
NP_Item np = lin NP np ;
NP_Place np0 = let np = lin NP np0 in
{name = np ; at = SyntaxSwe.mkAdv in_Prep np ; to = SyntaxSwe.mkAdv to_Prep np} ;
+ NP_Name np = lin NP np ;
--- to remove Phrasebook punctuation, which makes the output in Translate heterogeneous