1
0
forked from GitHub/gf-core
Commit Graph

6197 Commits

Author SHA1 Message Date
hallgren
4e4d2a77e1 gf.cabal: increase idle time before full GC to 5 seconds
The builtin GHC RTS default is 0.3 seconds, which results in very bad
interactive behaviour when working with a large grammar in the GF shell.
2015-03-05 15:30:41 +00:00
krasimir
0238579610 remove some more old code 2015-03-05 14:47:36 +00:00
krasimir
7539809461 removed some operations in GeneratePMCFG. They didn't work well with variants and are now obsolete with the new partial evaluator 2015-03-05 13:58:18 +00:00
hallgren
854fec6d3a GF.Compile.Compute.ConcreteNew: add dynamic table conversion
If the enumaration of table parameter values fails during the static
traversal phase, try again in the dynamic computation phase, when the values
of bound variables are known.

This is necessary to properly deal with generic table construction in opers,
like the ones found in prelude/Coordination.gf, e.g.

  consTable : (P : PType) -> ... = \P ... -> {s1 = table P {...} ; ... }
2015-03-04 18:20:16 +00:00
hallgren
814c80124b GF.Compile.Compute.ConcreteNew: some refactoring for readability 2015-03-04 13:30:11 +00:00
hallgren
6480620e1d Fix to avoid "error (no reason given) OCCURRED IN optimizing <cat>"
GF.Compile.Optimize.mkLinReference can fail and cause this error because
the helper function inside it applies msum to a list that might be empty
(if there is a record type that does not contain a field of type Str).
This means that it can return mzero::Err, i.e.

   Bad "error (no reason given)"

which can slip through the top level test that only catches Bad "no string".
2015-03-02 14:27:36 +00:00
hallgren
632aab83c3 GF shell: fixed problems with previous change of the -retain flag
Because the prompt included the name of the abstract syntax, the loading
of the PGF was forced even if -retain was used. Even worse,
if an error occured while loading the PGF, it was repeated and caught
every time the prompt was printed, creating an infite loop. The solution
is to not print the name of the abstract syntax when the grammar is
imported with -retain, which is the way things were before anyway.
2015-02-27 16:42:09 +00:00
hallgren
e0bc6308e0 GF shell: create a PGF also when the -retain flag is used
The commands available in the shell after import -retain are now a superset
of the commands available after import without -retain.

The PGF is created lazily, so there should be no performance penalty if
the PGF isn't needed. If there are errors, they won't be reported until a
command that uses the PGF is entered.
2015-02-27 13:49:13 +00:00
hallgren
d3f6b9851f gf.cabal: adjust version constrains on the network, cgi and httpd-shed packages 2015-02-25 18:41:57 +00:00
hallgren
9c6b5df741 PGFService: make the restriction on parallelism more effective
Restrict the entire request handler instead of just the call to the C parser.
2015-02-25 16:08:21 +00:00
krasimir
a5817ff492 fix some out-of-date code for the PGF_RESULT_DEBUG mode in the parser 2015-02-26 13:31:26 +00:00
krasimir
9c83b2e27d use the same trick for comparison of doubles in cmp_expr_state 2015-02-26 13:10:01 +00:00
krasimir
532647c978 bugfix in the parser which caused some items to be poped in the wrong order if their probability differ with less that 0.5 2015-02-26 12:17:59 +00:00
hallgren
52212d5a76 Wide Coverage Translation Demo: better resizing behavior on startup and when pasting text 2015-02-25 15:36:25 +00:00
hallgren
e68370e463 PGFService.hs: text lexer: slightly smarter decapitalization of the first word of a sentence
Keep the first letter in upper case if it is followed by more upper case
letters.

(Also remove some left over debugging output.)
2015-02-24 15:04:06 +00:00
krasimir
715ac1ca62 remove three more uses of meta productions that were left in debugging mode 2015-02-24 10:59:18 +00:00
krasimir
da11a7127f implemented escape characters when reading/printing an abstract expression with string literals 2015-02-24 09:35:12 +00:00
krasimir
218c6be0a7 fix in thai_page2.xml 2015-02-20 15:31:32 +00:00
hallgren
2c617e6cf9 gftransate.js: increase sentence length limit for "fast" language to 500
Currently Bul, Chi, Eng and Swe are marked as "fast" in the documentation.
2015-02-20 14:34:37 +00:00
krasimir
70a71a6f0e set the keyboard pages for Thai in Translator.java 2015-02-20 14:26:30 +00:00
krasimir
b864601cb9 experimental Thai keyboard (still not tested) 2015-02-20 14:08:12 +00:00
joel.hinz
2394763daa translation app for iOS, replicating some of the functionality of the Android app. Compiles and works on iPad retina but may crash and has known issues. 2015-02-20 07:47:43 +00:00
krasimir
f848857519 added option -plus-as-bind which treats (+) as a bind when used with runtime variables 2015-02-20 13:26:12 +00:00
krasimir
8fae104957 remove the meta prob flags 2015-02-20 13:00:51 +00:00
hallgren
9f70eaa13c gftranslate.js: reduce sentense length limit to 200 (URL encoded) characters
This limit might still be to high to avoid excessive time/space use in the
parser for certain languages in the wide coverage translation grammar.
2015-02-20 12:31:41 +00:00
hallgren
f6cb6d172e PGF Service: limit the number of parallel calls to the C run-time parse function to 4 by default
The limit can be changed with the -j flag
2015-02-20 12:29:44 +00:00
krasimir
e893d41393 silence some warnings in GNU Lightning for i386_64 2015-02-19 12:53:52 +00:00
krasimir
b92bbcfc37 parsing with meta rules is now removed since we don't use them anymore and I would gladly remove some code. 2015-02-19 11:59:51 +00:00
krasimir
39bbe68adf fix the missmatch between Int and CInt in the Haskell binding to the word alignment API. This was causing problems on 64-bit machines 2015-02-18 17:05:35 +00:00
krasimir
f3797bb313 fix the callback for unknown words as well 2015-02-18 16:47:33 +00:00
krasimir
a97dee067a fix in the callback for names in the Haskell binding 2015-02-18 16:41:13 +00:00
krasimir
e3a87c657b fix in the parser for callbacks in the middle of a word 2015-02-18 16:14:29 +00:00
hallgren
24232004f0 Wide Coverage Translation Demo: use App14.pgf, remove spaces from Chi, Jpn and Tha output 2015-02-18 13:58:49 +00:00
aarne
4ea4d035dd removing spaces from App output of Chi,Jpn,Tha to get nicer speech output (and of course follow the target lang conventions) 2015-02-17 18:11:20 +00:00
aarne
818a119a5b App14 with Tha up and running! 2015-02-17 17:18:51 +00:00
hallgren
956b721048 Restore compatibility with ghc-7.4
With ghc-7.4 'import M hiding (x)' causes an error if M does not export x...
2015-02-16 15:41:38 +00:00
hallgren
54ae70a81e Changes for compatibility with ghc-7.10-rc2
2 modules: Name clashes caused by Applicative-Monad change in Prelude
2 modules: Ambiguities caused by Foldable/Traversable in Prelude
2 modules: Backwards incompatible changes in time-1.5 for defaultTimeLocale
9 modules: {-# LANGUAGE FlexibleContexts #-} (because GHC checks inferred types
           now, in addition to explicitly given type signatures)

Also silenced warnings about tab characters in source files.
2015-02-16 15:05:06 +00:00
hallgren
2b8fe8ea7a PGF.Haskell: adding operators for selections from tables 2015-02-12 16:09:33 +00:00
hallgren
efb1b540f4 Translating linearization functions to Haskell: more simplifications
+ Some additional simplifying rewrites.
+ Use an intermediate representation for Haskell types, for separation of
  concerns and cleaner code.
+ Pretty printer layout tuning
+ Code cleanup.
2015-02-12 16:05:48 +00:00
hallgren
63f79fb250 Translating linearization functions to Haskell: simplify the generated Haskell code
Introduced an intermediate representation for the generated Haskell expressions.
This allows pretty printing concerns to be separated from conversion concerns,
and makes it easy to apply some simplifying rewrites to the generated
expressions, e.g.

	[x] ++ [y]    ==> [x,y]
	pure f <*> x  ==> f <$> x
	f <$> pure x  ==> pure (f x)
	join (pure x) ==> x
2015-02-11 23:50:19 +00:00
kr.angelov
d361b7f5d2 fix in the JIT compiler that would hopefully make it work on iOS 2015-02-11 13:07:06 +00:00
hallgren
8e4e8da105 Translating linearization functions to Haskell: support for variants
By adding the flag -haskell=variants to the command line, GF will now generate
linearization functions in Haskell that support variants. Variants are
represented as lists in Haskell.

Variants inside pre { ... } expressions are still ignored.

TODO: apply some monad laws to generate more compact code (using an
intermediate representation of the generated Haskell code, instead of
pretty printing directly from the GF code).
2015-02-09 16:24:33 +00:00
aarne
3509ee650d news on Summer School on the main page 2015-02-09 09:35:51 +00:00
kr.angelov
68a2f09590 added hasLinearization in the Haskell binding 2015-01-30 13:05:57 +00:00
aarne
340328b8a1 Phrasebook compiled for Japanese; weather_N in DictionaryGer 2015-01-27 13:18:44 +00:00
aarne
0d8e73847c added Japanese to Android app. Had to change target=android-20 to 21. 2015-01-21 22:20:25 +00:00
hallgren
c398b1e794 Wide Coverage Translation Demo: use App13.pgf, adding support for Japanese
Japanese uses the same lexer as Chinese, i.e. every character is a separate
token.
2015-01-21 16:02:37 +00:00
hallgren
6b55ad88d4 PGF2: fixes for named entity callback function 2015-01-21 13:54:48 +00:00
hallgren
6ddef21dea examples/phrasebook/Makefile: include Jpn in 'make forApp' 2015-01-21 12:16:57 +00:00
hallgren
ffe1f74584 PGF2 & PGFService: enable callbacks for named entities and chunks in the c-parse & c-translate web requests 2015-01-21 10:41:12 +00:00