summaryrefslogtreecommitdiff
path: root/src/compiler
AgeCommit message (Collapse)Author
2011-11-02merge GF.Infra.Modules and GF.Grammar.Grammar. This is a preparation for the ↵kr.angelov
separate PGF building
2011-11-02Now the compiler maintains more precise information for the source locations ↵kr.angelov
of the different definitions. There is a --tags option which generates a list of all identifiers with their source locations.
2011-11-01gfse: grammar sharing: bug fixes and win32 supporthallgren
win32 support is untested
2011-11-01Remove configuration flag cclazyhallgren
2011-11-01Fixed a typo in the shell online helpNick Frolov
2011-10-25Recording an alternative version of look in Compute/ConcreteLazy.hshallgren
Commented out, causes problems in the greek example.
2011-10-25qualification with real module name accepted, as in GF refmanaarne
2011-10-24use associativity to force more precompilation of pre expressionsaarne
2011-10-20Introduce an explicit error value in the Term typehallgren
This makes it easier to treat run-time errors (e.g. caused by calls to Predef.error) in a way that is more typical for a lazy functional language.
2011-10-20Some experiments with PSeq (left commented out)hallgren
2011-10-20Compute/ConcreteLazy.hs: no need to reverse when looking up labels in recordshallgren
2011-10-20AppPredefined.hs: more readable notation for the types of primitiveshallgren
2011-10-12Show version & configuration info when gf -server startshallgren
2011-10-12Bug fixes for gf -server mode and setuphallgren
2011-10-12Improvements of "gf -server" mode and related setuphallgren
"gf -server" mode now contains everything needed to run the minibar and the grammar editor (including example-based grammar writing). The Setup.hs script installs the required files where gf -server can find them. These files have been moved to a new directory: src/www. The separate server program pgf-http is now obsolete.
2011-10-11More work on support for gfse in "gf -server" modehallgren
2011-10-10Add cloud services needed by gfse to "gf -server" modehallgren
2011-10-10More functionality in "gf -server" modehallgren
"gf -server" mode now includes PGF service and the services to support example-based grammar writing. (But gf -server is not quite ready to replace pgf-http yet...) Also bumped GF version number to 3.2.10-darcs
2011-09-26don't count app nodes in term sizeaarne
2011-09-25generalized show_dependencies to take a list of constants as its argumentaarne
2011-09-25structured examples in help into pairs (command,explanation)aarne
2011-09-24bug fixes in code size analysisaarne
2011-09-22change the precedence for the left argument of ->kr.angelov
2011-09-22the sd -size command now shows the size of all code needed for defining an operaarne
2011-09-22documented the ss commandaarne
2011-09-21statistics on grammar size in terms of constructorsaarne
2011-09-21commands ss to show source, and sd to show the dependencies of a constantaarne
2011-09-20module for analysing source grammarsaarne
2011-09-20command ss to show source (including gfo) in text; to be extendedaarne
2011-09-15Add a command name header to the 'help -t2t' outputhallgren
2011-09-15made ps -from_TRANSLIT symmetric to -to_TRANSLIT in the sense that unknown ↵aarne
characters are returned as themselves and not as question marks
2011-09-14Omit empty sections in gf help outputhallgren
2011-09-14GF shell command 'help -t2t' outputs help in txt2tags formathallgren
2011-09-09Don't make noexpand the default with -fcclazyhallgren
This reverts the previous change. Not preprocessing opers turns out to make a difference in what needs to be mentioned in restricted inheritance/imports.
2011-09-09Make noexpand the default optimization package when configuring with -fcclazyhallgren
2011-09-09Remove unused function computeConcreteRec.hallgren
This also allows the parameter rec to be removed from function computeTermOpt. (The change is made in GF.Compile.Compute.ConcreteLazy, but not in GF.Compile.Compute.ConcreteStrict.)
2011-09-07GF.Grammar.Macros: simplify composOp and composSafeOphallgren
2011-09-05Make the -fcclazy configuration option visible in the build info in the GF ↵hallgren
Shell welcome message
2011-09-01Add lazy version of GF.Compile.Compute.Concretehallgren
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-01GF.Grammar.*: generalized the type of some functions that can not fail from ↵hallgren
the Err monad to arbitrary monads
2011-08-31GF.Compile.Coding: cleaner code hallgren
Refine function codeTerm into codeTerm, codeLTerm and codeLTerms.
2011-08-31GF.Infra.Modules: minor tweakshallgren
Still keeping the modules both in a list and in a finite map. The overhead is smaller than I initially thought.
2011-08-30GF.Infra.Modules: restore module dependency order invarianthallgren
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-30GF.Infra.Modules: keep the modules of a grammar in a finite map instead of a ↵hallgren
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-30GF.Grammar.Lookup: added function lookupQIdentInfohallgren
+ Avoids some code duplication by combinging lookupModule and lookupIdentInfo. + Also removed lookupIdentInfo from export list, since it is not used anywhere else.
2011-08-30PatternMatch.hs: commented out suspicious unused function varsOfPatthallgren
2011-08-30GrammarToPGF.hs: comment out unused importshallgren
2011-08-28import command now gives priority to new abstract syntax, and discards the ↵aarne
old concretes if they are for the old abstract; the new priority is implemented in PGF.Data.unionPGF
2011-08-25reload command in shellaarne
2011-08-22commented Compute/Concrete with explanationsaarne