| Age | Commit message (Collapse) | Author |
|
|
|
In particular, the function compileOne has been moved to the new module
GF.CompileOne and its type has been changed from
compileOne :: ... -> CompileEnv -> FilePath -> IOE CompileEnv
to
compileOne :: ... -> SourceGrammar -> FilePath -> IOE OneCompiledModule
making it more suitable for use in a parallel compiler.
|
|
The RGL is now compile with only three calls to GF (prelude, present,
alltenses). This also makes even more parallelism available to GF for speeding
up full builds of the RGL.
|
|
It has been unused since the refresh pass was removed.
This eliminates one obstacle to parallel module compilation.
|
|
|
|
|
|
The def rules are now compiled to byte code by the compiler and then to
native code by the JIT compiler in the runtime. Not all constructions
are implemented yet. The partial implementation is now in the repository
but it is not activated by default since this requires changes in the
PGF format. I will enable it only after it is complete.
|
|
|
|
|
|
This speedup is obtained by instead of generating 211 shell commands to compile the RGL one file at a time, generate 7 shell commands, passing a number of
related files to GF in one go.
In addition to cutting down the zero build time, this opens up for speeding up
full builds of the RGL, by adding more parallelism in GF's grammar compilation
machinery.
(Note: gf.cabal already takes advantage of GHC's parallel build option to
speed up the compilation of GF itself, if GHC>=7.8 is used.)
|
|
All compiler modules now use GF.Text.Pretty instead of Text.PrettyPrint
|
|
|
|
GF.Infra.Location for modularity
GF.Text.Pretty provides the class Pretty and overloaded versions of the pretty
printing combinators in Text.PrettyPrint, allowing pretty printable values to
be used directly instead of first having to convert them to Doc with functions
like text, int, char and ppIdent. Some modules have been converted to use
GF.Text.Pretty, but not all. Precedences could be added to simplify the pretty
printers for terms and patterns.
GF.Infra.Location contains the types Location and L, factored out from
GF.Grammar.Grammar, and the class HasSourcePath. This allowed the import
of GF.Grammar.Grammar to be removed from GF.Infra.CheckM, making it more
like a pure library module.
|
|
Detected when building today:
Building gf-3.6...
Preprocessing library gf-3.6...
src/runtime/haskell/PGF/Internal.hs:17:8:
Could not find module ‘Data.Binary.IEEE754’
It is a member of the hidden package ‘data-binary-ieee754-0.4.4’.
Perhaps you need to add ‘data-binary-ieee754’ to the build-depends in your .cabal file.
|
|
...to keep memory use down on the server.
|
|
|
|
low-quality version and is hence the first Chinese phrasebook version that can claim high quality.
|
|
|
|
|
|
When using full=yes in the web service 'complete' command,
you now get an additional field 'seq' with the longest possible completion.
So, given:
lin
f1 = ss "the" ;
f2 = ss ("the red house" | "the real deal") ;
and trying to complete on input "th", you get:
[
{
"from": "TestCnc",
"brackets": {
"cat": "_",
"fid": 0,
"index": 0,
"fun": "_",
"children": []
},
"text": "th",
"completions": [
{
"token": "the",
"funs": [
{
"fun": "f1",
"hyps": [],
"cat": "C",
"seq": "the"
},
{
"fun": "f2",
"hyps": [],
"cat": "C",
"seq": "the red house"
},
{
"fun": "f2",
"hyps": [],
"cat": "C",
"seq": "the real deal"
}
]
}
]
}
]
|
|
BETA! The 'complete' command now has a new flag 'full' which when set
returns additional info about completions.
Without 'full' flag (default):
[
{
"from": "PhrasebookEng",
"brackets": {
"cat": "_",
"fid": 0,
"index": 0,
"fun": "_",
"children": [
{
"token": "the"
}
]
},
"text": "su",
"completions": [
"supermarket",
"suspect"
]
}
]
With full=true or full=yes:
[
{
"from": "PhrasebookEng",
"brackets": {
"cat": "_",
"fid": 0,
"index": 0,
"fun": "_",
"children": [
{
"token": "the"
}
]
},
"text": "su",
"completions": [
{
"token": "supermarket",
"funs": [
{
"fid": 421,
"fun": "Supermarket",
"hyps": [],
"cat": "PlaceKind"
}
]
},
{
"token": "suspect",
"funs": [
{
"fid": 445,
"fun": "Suspect",
"hyps": [],
"cat": "Property"
}
]
}
]
}
]
|
|
except those that require def rules. The design is consistent with the STG virtual machine
|
|
|
|
the embedded grammars especially pleasing
|
|
|
|
|
|
indirect questions
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
by the "i" button
Also bumped version number in gf.cabal to 3.6-darcs.
Also removed some unecessary use of CPP.
|
|
|
|
+ Describe which features are included in the different binary packages.
+ Describe the new MINGW package.
|
|
|
|
|
|
Sorry.
|
|
|
|
|
|
|
|
as an experiment
|
|
Also added an example use of lookupmorpho to gf-web-api-examples.html.
|
|
|
|
The wide coverage demo apps now shows a "please wait" message while the grammar
is loading, and a red error message if the grammar is not found on the server.
The Simple Translation Tool also show red error messages if the grammar is not
found.
|
|
server error) for missing grammars
|