summaryrefslogtreecommitdiff
path: root/src/compiler/GF/Infra
AgeCommit message (Collapse)Author
2012-06-25checkMapRecover: find undefined idents in all jments in Renameaarne
2012-05-30More detailed version info in the startup messagehallgren
The Setup.hs script now queries darcs to create more detailed version info to include in the startup message. Note thought that with distributed version control systems like darcs, the only way to uniquely identify a version is by the set of patches included. Since the patches are not totally ordered, just looking at the last patch is not enough. For official releases, we tag the current set of patches so we can refer to it by name (e.g. RELEASE-3.3.3).
2012-02-20GF.Inra.UseIO: add instance Functor IOE, add method fail to instance Monad IOEhallgren
2011-12-14gf -server[=port]hallgren
You can now specify which port the HTTP server should run on in server mode. The default is 41296.
2011-11-30more stuff in the new type checkerkr.angelov
2011-11-29Sketch of the new type checker for the concrete syntax. Enabled only with ↵kr.angelov
-new-comp
2011-11-15more structured format for errors and warnings from the compilerkr.angelov
2011-11-14remove the -output-file optionkr.angelov
2011-11-14the new design for -tagskr.angelov
2011-11-10Now PMCFG is compiled per module and at the end we only link it. The new ↵kr.angelov
compilation schema is few times faster.
2011-11-10remove few obsolete options from GF.Infra.Optionskr.angelov
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-01Remove configuration flag cclazyhallgren
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-05Make the -fcclazy configuration option visible in the build info in the GF ↵hallgren
Shell welcome message
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-04-13Added a preliminary "gf -server" mode.hallgren
The command "gf -server" now starts a simple HTTP server on port 41295, providing a simple web API to the GF compiler. It currently support the follwing operations: * creating new temporary directories for grammar uploads, * uploading grammars files for use in the GF shell, * executing GF shell commands, and * accessing static files. This means that GF now depends on some additional networking related packages, but they should be available and easy to install on all platforms. There is also a new configuration flag "server" in gf.cabal, so GF will be compiled without support for server mode if the extra packages are unavailable. Note that running gf -server while connected to the internet can be a security risk. To prevent unauthorized access to the rest of the system, it is advisable to run the server in GF_RESTRICTED mode and as a user with suitably restricted file permissions.
2011-04-13Show configuration options as part of build infohallgren
The GF shell welcome message will now include something like This is GF version 3.2.1-darcs. Built on darwin/i386 with ghc-7.0, flags: interrupt where a list of enabled configuration flags are included on the last line. This is implemented in GF.Infra.BuildInfo by consulting the CPP macros defined by the respective option in gf.cabal. For this to work, GF.Infra.BuildInfo obviously has to be updated when new flags are added to gf.cabal or if the CPP macros are renamed. (Also, I suspect that if you reconfigure with different flags and rebuild GF without cleaning first, the BuildInfo module will not be recompiled, resulting in a misleading welcome message...)
2011-04-13GF.Infra.UseIO: add functions readBinaryFile & writeBinaryFilehallgren
2011-04-04Add build info to the GF shell welcome messagehallgren
2010-12-11Adding an option to the gf compiler to add an index to pgf filesgdetrez
This is gonna be used by the android library to skip unused part of a pgf file
2011-03-12make it possible to override opers defined in an interface by syntax ↵aarne
'instance Foo of Bar - [f,g,h]'
2011-03-03GF shell restricted modehallgren
By setting the environment variable GF_RESTRICTED before starting GF, the shell will be run in restricted mode. This will prevent the GF shell from starting arbitrary system commands (most uses of System.Cmd.system are blocked) and writing arbitrary files (most commands that use writeFile et al are blocked). Restricted mode is intended minimize the potential security risks involved in allowing public access to the GF shell over the internet. It should be used in conjuction with system level protection mechanisms (e.g. file permissions) to make sure that a publicly acessible GF shell does not give access to parts of the system that should not be publicly accessible.
2010-12-14updated documentation of pg -printer formatsaarne
2010-12-14documented the pgf -printer values for helpaarne
2010-10-02refactor the API for random generation again. Now PGF contains probabilities ↵krasimir
in the abstract syntax
2010-08-09native representation for HOAS in PMCFG and incremental type checking of the ↵krasimir
parse forest
2010-07-01redesign the open-literals APIkrasimir
2010-06-09dead code elimination for PGF. Note: the produced grammars will not work ↵krasimir
well with metavariables and high-order abstract syntax
2010-04-28wf,vt,vp,vd,aw should store files in utf8krasimir
2010-04-19use the native unicode support from GHC 6.12krasimir
2010-04-06dependency graph can be restricted to some modules; added help dgaarne
2010-03-23added codepage for Turkishkrasimir
2010-03-22store and propagate the exact source location for all judgements in the ↵krasimir
grammar. It may not be used accurately in the error messages yet
2010-03-20added experimental generation of Lambda Prolog code. Could be used for ↵krasimir
exhaustive generation with dependent types. Doesn't support def rules yet but supports high-order syntax and lambda expressions.
2010-01-31refactor GF.Infra.Modules for better error messageskrasimir
2010-01-17PGF is now real synchronous PMCFGkrasimir
2009-12-14remove the old parsing code and the -erasing=on flagkrasimir
2009-12-13reorganize the directories under src, and rescue the JavaScript interpreter ↵krasimir
from deprecated