Commit Graph

5486 Commits

Author SHA1 Message Date
hallgren
ce714fa723 Add lazy version of GF.Compile.Compute.Concrete
This patch adds GF.Compile.Compute.ConcreteLazy, which replaces the Err monad
with the Identity monad. While the Err monad makes the interpreter
(hyper)strict, the Identity monad let's the interpreter inherit Haskell's
laziness.  This can give big speedups: from 50s to 1s in one example,
from ~4 minutes to ~2 minutes for the RGL.

This is still experimental and might be buggy, so it is off by default.
You can turn it on by configuring with the -fcclazy flag, e.g.

	cabal configure -fcclazy

Let me know if anything breaks.
2011-09-01 16:39:41 +00:00
hallgren
539c49c23b GF.Grammar.*: generalized the type of some functions that can not fail from the Err monad to arbitrary monads 2011-09-01 16:35:53 +00:00
hallgren
117fe7ad70 GF.Compile.Coding: cleaner code
Refine function codeTerm into codeTerm, codeLTerm and codeLTerms.
2011-08-31 13:55:49 +00:00
aarne
03b8c43bc8 variant e of Spanish and_Conj 2011-09-01 13:53:35 +00:00
aarne
c053e1f904 ExtAdvS in Pol 2011-09-01 08:14:27 +00:00
aarne
938662db44 ExtAdvS added to more languages 2011-09-01 07:56:29 +00:00
aarne
40022d7af9 restored the use of conjunctCase in romance 2011-08-31 11:56:09 +00:00
hallgren
38db834a65 GF.Infra.Modules: minor tweaks
Still keeping the modules both in a list and in a finite map. The overhead is
smaller than I initially thought.
2011-08-31 11:18:16 +00:00
hallgren
42e2c68d8e GF.Infra.Modules: restore module dependency order invariant
It is needed by greatestResource (and similar functions, presumably).
So keep both the list and the finite map of modules. This slows down some
things, but the compilation of PhrasebookFin.pgf benefits from it.
To be continued...
2011-08-30 20:20:45 +00:00
hallgren
0325f7264d GF.Infra.Modules: keep the modules of a grammar in a finite map instead of a list
This speeds up the compilation of PhrasebookFin.pgf by 12%, mosly by speeding
up calls to lookupModule in calls from lookupParamValues, in calls
from allParamValues.

The invariant "modules are stored in dependency order" is no longer respected!
But the type MGrammar is now abstract, making it easier to maintain this or
other invariants in the future.
2011-08-30 18:54:50 +00:00
kr.angelov
f7f6953050 few more fixes in the NLG grammar 2011-08-30 17:29:13 +00:00
hallgren
109c55e2fb GF.Grammar.Lookup: added function lookupQIdentInfo
+ Avoids some code duplication by combinging lookupModule and lookupIdentInfo.
+ Also removed lookupIdentInfo from export list, since it is not used anywhere
  else.
2011-08-30 14:53:11 +00:00
hallgren
9a4f3cec9c PatternMatch.hs: commented out suspicious unused function varsOfPatt 2011-08-30 12:13:50 +00:00
hallgren
3c848ad0b5 GrammarToPGF.hs: comment out unused imports 2011-08-30 12:02:32 +00:00
kr.angelov
7fe2b6fd04 added quantifier ambiguity in the NLG example 2011-08-30 15:23:59 +00:00
kr.angelov
399d4a60a4 added example for NLG from logical formula. See examples/nlg 2011-08-30 14:58:16 +00:00
kr.angelov
dbe00fd0eb bugfixes in the typechecker and the tree generator 2011-08-30 11:24:59 +00:00
kr.angelov
9a899edb0b bugfix: allow higher-order variables in the linearization 2011-08-30 09:22:44 +00:00
aarne
7bf4683c02 skip spaces before closing parenthesis in PGF.Expr.pFactor 2011-08-29 12:03:45 +00:00
aarne
250c9f8d82 import command now gives priority to new abstract syntax, and discards the old concretes if they are for the old abstract; the new priority is implemented in PGF.Data.unionPGF 2011-08-28 10:35:55 +00:00
kr.angelov
1593c7249d fix SUMO after the update in DictEng 2011-08-23 15:05:04 +00:00
kr.angelov
829f648774 batch of changes in DictEng(Abs) that improve the coverage and add valency frames for many verbs. 2011-08-23 14:58:11 +00:00
hallgren
be1830479f pgf-http: fix a bug that caused "+" to be treaded as " " in PGF service requests URLs.
This was a bug in my workaround for a bug in the httpd-shed package. It
made it impossible to use the glue token "&+" for Turkish input in the minibar,
for example.
2011-08-25 16:58:17 +00:00
aarne
b5d04181ba reload command in shell 2011-08-25 15:58:38 +00:00
hallgren
249ce61701 pgf-service: apply the OpenMath LaTeX function only when linearizing to a
concrete language whose name ends with LaTeX.
This change also avoids duplicating output and, in addition to the linearize
command, applies the transfer also when using the linearizeAll command.
2011-08-24 09:37:55 +00:00
hallgren
42ccbf2d8e pgf-service: add Jordis transfer function for OpenMath LaTeX output 2011-08-23 16:25:00 +00:00
hallgren
9f9a2c7a4a Someone added a link to the Android page 2011-08-22 21:01:59 +00:00
hallgren
6667e5faf9 minibar: documentation update 2011-08-22 17:55:47 +00:00
hallgren
0079c49a78 minibar: quick fix to allow literals to be entered.
If you press Enter, the current word will be accepted, even if there are no
matching completions.
(You can now use names of people when constructing sentences in the Letter
grammar, for example.)
2011-08-22 17:03:47 +00:00
aarne
22a079e8f1 commented Compute/Concrete with explanations 2011-08-22 17:08:07 +00:00
hallgren
51994104de pgf service: external service hook: always format the output as a JSON string 2011-08-22 16:10:56 +00:00
hallgren
3e2f768072 pgf service: added a hook for external services
This is really reinventing CGI, people should learn how to write CGI scripts
instead...
TODO: better handling of temporary files
2011-08-22 15:34:44 +00:00
aarne
3d20737e95 some adjective fixes in FoodsGle 2011-08-22 14:43:58 +00:00
aarne
6ae6d665d7 the from preposition in various Phrasebooks 2011-08-22 14:40:57 +00:00
jordi.saludes
8bfb809a69 Correct 'Hotel' in Cat Phrasebook 2011-08-22 13:07:34 +00:00
jordi.saludes
29bdca7596 "Simplified regA for Cat" 2011-08-18 16:20:37 +00:00
hallgren
d0dad690e4 minibar: documentation fixes 2011-08-21 21:35:14 +00:00
hallgren
2dc037fc72 minibar: bug fix for "Try Google Translate" button 2011-08-19 13:56:12 +00:00
aarne
f33736d092 FoodsGle by Michal Mechura 2011-08-18 19:53:04 +00:00
aarne
41012a0c43 FoodsCze by Katerina Bohmova 2011-08-18 19:51:28 +00:00
hallgren
1b386e01ba gfse: fix an issue with Webkit browers
For lin and lincats with empty RHSs, there was nothing to point to to make the
edit button (the "%" button) appear in browsers based on Webkit
(Safari, Chrome).
2011-08-17 15:41:57 +00:00
hallgren
3eab4e3ae1 minibar: adding pgf_offline.js
This file exports the same PGF runtime interface as pgf_online.js but calls
the hs2js translation of the PGF runtime library (which is not included
in darcs).
2011-08-16 16:29:51 +00:00
hallgren
d68e11dbae demos: just recording some recent changes to the index page 2011-08-16 15:41:31 +00:00
aarne
8729f43a15 updated RGL status with Heb and Lav 2011-08-14 16:57:09 +00:00
aarne
86ab6c4c6e Latvian resource started by Normunds Gruzitis 2011-08-14 16:52:15 +00:00
aarne
726b3cc199 Hebrew mini resource by Dana Dannells 2011-08-14 16:49:19 +00:00
hallgren
ab774d3964 gf.cabal: bump version to 3.2.8-darcs
This is just to make it easier to tell who has the latest version at the 
summer school. There has been some bug fixes in gf itself and some significant
additions to the RGL since 3.2 was released.

Also explicitly require Alex 2.x. The recently released Alex 3.0 has backwards
incompatible changes and does not work. GF/Grammar/Lexer.x should probably
be modified to support both Alex 2.x and Alex 3.0...
2011-08-12 14:02:24 +00:00
hallgren
9820b2640b minibar: documentation and API work 2011-08-11 16:28:49 +00:00
hallgren
dabeddb3ca minibar: some functions were in the wrong file 2011-08-11 14:56:34 +00:00
hallgren
b4c0509f77 minibar: more documentation (in minibar-api.html) 2011-08-09 15:57:40 +00:00