Commit Graph

1282 Commits

Author SHA1 Message Date
aarne
7de283f322 fixed a Compute bug due to failure to match typed record values with untyped record patterns 2008-12-04 17:02:24 +00:00
bjorn
5ce5a3403b Remove more unused stuff from GF.Data.Operations. 2008-12-01 21:33:53 +00:00
bjorn
acea90a252 Remove lots of old unused stuff from GF.Data.Operations. 2008-11-27 10:55:24 +00:00
bjorn
f6cf10e655 More efficient implementation of topological sort.
Profiling the compilation of the OALD lexicon showed that 90-95% of the time was spent in topoSort. The old implementation was quadratic. Replaced this with O(E + V) implementation, in GF.Data.Relation. This gave a 10x speed-up (~ 25 sec instead of ~270 sec) for compiling ParseEng and OaldEng.
2008-11-27 10:29:29 +00:00
bjorn
210089b6c8 Move Graph, Relation and Graphviz modules from GF.Speech to GF.Data. 2008-11-27 08:43:08 +00:00
bjorn
0619824fa3 Remove ununsed GF.Source.SharedString module. 2008-11-27 08:36:18 +00:00
bjorn
832f25fc2a Don't use string sharing in LexGF.
Profiling showed that when loading a large .gfo file, shareString was responsible for
15-18% of the CPU time, and a lot of the allocation. Since we already use ByteStrings for 
reading the source files, shareString mostly has the effect of creating lots 
of small ByteStrings instead of one large one. Since the plain size of the .gfo is seldom
a problem (unlike when it was read as a String), it is ok to keep the whole file 
as one ByteString in RAM, and have all tokens point into that.
Profiling after the change showed 15-20% reduction in CPU time and in total allocation.
2008-11-26 16:19:54 +00:00
bjorn
499d6ade49 My profiling showed that the BinTree operations were responsible for about 60% of the CPU time when reading a large .gfo file. Replacing BinTree by Data.Map reduced this to about 6%, which meant about 50% reduction in total CPU time. 2008-11-26 15:44:22 +00:00
aarne
cad49a225d restored "?" as system pipe command 2008-11-18 15:31:30 +00:00
aarne
65aefea2d6 fixed a bug with type checking function types 2008-11-18 10:58:50 +00:00
peb
fae330f733 Fix in Prolog output of the atom "'" 2008-11-17 13:33:53 +00:00
aarne
0d6b1081ff print "no trees found" in GF shell if an empty tree list is returned by p or pt 2008-11-10 16:23:09 +00:00
aarne
79ef938590 lexer documentation in help and tutorial updated 2008-11-10 15:53:38 +00:00
aarne
87c6bebf29 updated tutorial up to lexers ; fixed lexcode in GF (was wrong due to a typo) 2008-11-10 10:59:13 +00:00
bjorn
eedd209458 SRG generation: renameCats now gives new names to all cates used in the grammar, on RHS or LHS. This avoids a crash in non-recursive SRGS generation. The crash happend becase the bottom-up filter has not yet been done when renameCats is called. 2008-11-09 14:27:34 +00:00
bjorn
6ebd80ba97 Include .gf file name in source parsing syntax error message. 2008-10-30 10:49:23 +00:00
krasimir
a35919542f remove some redundant imports of GF.Text.UTF8 2008-10-28 15:47:04 +00:00
krasimir
e44448bad0 binary serialization for PGF 2008-10-28 13:57:10 +00:00
aarne
cbb38747f8 missing case in PGF generation 2008-10-27 09:24:33 +00:00
krasimir
799c915170 fix typo 2008-10-25 20:44:04 +00:00
krasimir
96e39ced12 add cp1252. usefull for Swedish and German 2008-10-25 20:25:09 +00:00
krasimir
4fe931c67f extend the cp1251 coding to cover all cyrillic letters 2008-10-25 20:22:06 +00:00
krasimir
c72ee23d85 efficient and nicer implementation for literal categories 2008-10-21 14:30:36 +00:00
bjorn
5b5b91eb0a Added --parser=ondemand flag. 2008-10-20 14:52:50 +00:00
bjorn
aed72e7653 Added PGF.Macros.mapConcretes 2008-10-20 14:51:42 +00:00
bjorn
335a8d6977 Added Read and Show instances for CId. Also added readCId :: String -> Maybe CId, and use that for readLanguage. 2008-10-20 11:59:31 +00:00
bjorn
29ca3b692b Replace Category with Type in the PGF API. Added readLanguage and showLanguage. 2008-10-20 11:35:05 +00:00
krasimir
1ddb738459 preparation for dep. types. The -cat option can take any type instead of just a category. The PGF API is generalized as well. 2008-10-20 08:42:39 +00:00
krasimir
d27b017c7f move the literal category names to PGF.Macros 2008-10-19 14:21:58 +00:00
krasimir
286be2e4d9 move PGF.Quiz to GF.Quiz. It is not part of the PGF API 2008-10-19 16:38:56 +00:00
bjorn
d67d44993b Export list in GF.Compile.GetGrammar 2008-10-16 12:59:40 +00:00
bjorn
b9a9fb2f40 Copy command-line flags to in-memory module when reading from a .gfo file. This maeans that command-line flags get put in the .pgf file. 2008-10-16 11:58:18 +00:00
bjorn
67fabb0e0d In shell "p" command, only try languages that have a parser. 2008-10-16 11:33:09 +00:00
bjorn
e75ccc2542 A bit more verbosity when combining PGF files. Use putPointE when writing output files. 2008-10-16 10:12:57 +00:00
bjorn
21e3858442 Honor --erasing flag from command-line also when compiling existing .gfo to PGF. 2008-10-16 08:27:43 +00:00
aarne
65bafe2a3b restored the possibility to compile .cf files to gf 2008-10-15 15:08:38 +00:00
krasimir
bb6623f6e7 high-order syntax in PMCFG 2008-10-15 14:58:00 +00:00
krasimir
063b82cf6c rename some variable names 2008-10-15 09:43:15 +00:00
bjorn
f898c7543d Copy command-line options to module flags when compiling to .gfo. 2008-10-15 14:24:23 +00:00
bjorn
58381a95a4 Merge ModuleOptions and Options. 2008-10-15 11:55:18 +00:00
bjorn
50ed99e9b1 Added OPTIONS class to make options handling somewhat nicer. Next, I will merge Flags and ModuleFlags. 2008-10-15 11:38:34 +00:00
krasimir
cdff4db5c4 rename emptyFRulesEnv to emptyGrammarEnv 2008-10-15 09:26:01 +00:00
krasimir
8386c8b939 threat category _Var as a literal category 2008-10-15 08:38:34 +00:00
krasimir
ebef7ecb7b store the total number of PMCFG categories in the PGF file 2008-10-15 07:47:57 +00:00
krasimir
50fc82d4db literal categories in the incremental parser 2008-10-14 15:29:50 +00:00
aarne
b6666624a0 rudimentary abstract syntax type checker and solver in PGF 2008-10-14 14:34:08 +00:00
aarne
df08e52d5c paraphrase works a little better now ; added examples/paraphrase for testing 2008-10-14 11:19:30 +00:00
krasimir
e94f1cf2c7 remove trace in the PMCFG compilation 2008-10-14 09:40:55 +00:00
krasimir
1fc909c101 the new optimized incremental parser and the common subexpression elimination optimization in PMCFG 2008-10-14 08:00:50 +00:00
aarne
8abf7f5c8a added a paraphrase method applying def's in both directions, in subtrees, and step by step; doesn't work properly yet 2008-10-13 16:41:21 +00:00