<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gf-core.git/src/compiler/GF/Compiler.hs, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://git.adelon.net/gf-core.git/atom?h=master</id>
<link rel='self' href='https://git.adelon.net/gf-core.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/'/>
<updated>2019-04-12T09:04:40+00:00</updated>
<entry>
<title>respect the probs option also when merging PGFs</title>
<updated>2019-04-12T09:04:40+00:00</updated>
<author>
<name>krangelov</name>
<email>kr.angelov@gmail.com</email>
</author>
<published>2019-04-12T09:04:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=c628e11c01c3c8c642c540a94ea927be42d6d2f3'/>
<id>urn:sha1:c628e11c01c3c8c642c540a94ea927be42d6d2f3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rename module GF.Compile.ConcreteToCanonical to GF.Compile.GrammarToCanonical</title>
<updated>2019-03-07T13:47:37+00:00</updated>
<author>
<name>Thomas Hallgren</name>
<email>th-github@altocumulus.org</email>
</author>
<published>2019-03-07T13:47:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=b783299b73b5c8a8229a45a830cf9b6be0be4f8c'/>
<id>urn:sha1:b783299b73b5c8a8229a45a830cf9b6be0be4f8c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>replace aeson with json</title>
<updated>2019-02-26T18:27:36+00:00</updated>
<author>
<name>krangelov</name>
<email>kr.angelov@gmail.com</email>
</author>
<published>2019-02-26T18:27:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=25dc9348713ce1142c7ea2c8f0b5a9cfdac4c5ec'/>
<id>urn:sha1:25dc9348713ce1142c7ea2c8f0b5a9cfdac4c5ec</id>
<content type='text'>
</content>
</entry>
<entry>
<title>enable export of canonical grammars to JSON and YAML</title>
<updated>2019-02-08T08:10:48+00:00</updated>
<author>
<name>Peter Ljunglöf</name>
<email>peter.ljunglof@heatherleaf.se</email>
</author>
<published>2019-02-08T08:10:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=47ac01e4b9502ed573e4847ff563ada2670bd4ba'/>
<id>urn:sha1:47ac01e4b9502ed573e4847ff563ada2670bd4ba</id>
<content type='text'>
</content>
</entry>
<entry>
<title>More work on the canonica_gf export</title>
<updated>2019-01-22T16:16:32+00:00</updated>
<author>
<name>Thomas Hallgren</name>
<email>th-github@altocumulus.org</email>
</author>
<published>2019-01-22T16:16:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=e4abff772556ebee68a7e3b2cbe4fd413a5e845e'/>
<id>urn:sha1:e4abff772556ebee68a7e3b2cbe4fd413a5e845e</id>
<content type='text'>
+ Abstract syntax now is converted directly from the Grammar and not via PGF,
  so you can use `gf -batch -no-pmcfg -f canonical_gf ...`, to export to
  canonical_gf while skipping PMCFG and PGF file generation completely.
+ Flags that are normally copied to PGF files are now included in the
  caninical_gf output as well (in particular the startcat flag).
</content>
</entry>
<entry>
<title>Adding -output-format canonical_gf</title>
<updated>2019-01-17T20:04:08+00:00</updated>
<author>
<name>Thomas Hallgren</name>
<email>th-github@altocumulus.org</email>
</author>
<published>2019-01-17T20:04:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=fc1b51aa95ec9e1a628b1255722202472484ee37'/>
<id>urn:sha1:fc1b51aa95ec9e1a628b1255722202472484ee37</id>
<content type='text'>
This output format converts a GF grammar to a "canonical" GF grammar. A
canonical GF grammar consists of

 - one self-contained module for the abstract syntax
 - one self-contained module per concrete syntax

The concrete syntax modules contain param, lincat and lin definitions,
everything else has been eliminated by the partial evaluator, including
references to resource library modules and functors. Record types
and tables are retained.

The -output-format canonical_gf option writes canonical GF grammars to a
subdirectory "canonical/". The canonical GF grammars are written as
normal GF ".gf" source files, which can be compiled with GF in the normal way.

The translation to canonical form goes via an AST for canonical GF grammars,
defined in GF.Grammar.Canonical. This is a simple, self-contained format that
doesn't cover everyting in GF (e.g. omitting dependent types and HOAS), but it
is complete enough to translate the Foods and Phrasebook grammars found in
gf-contrib. The AST is based on the GF grammar "GFCanonical" presented here:

  https://github.com/GrammaticalFramework/gf-core/issues/30#issuecomment-453556553

The translation of concrete syntax to canonical form is based on the
previously existing translation of concrete syntax to Haskell, implemented
in module GF.Compile.ConcreteToHaskell. This module could now be reimplemented
and simplified significantly by going via the canonical format. Perhaps exports
to other output formats could benefit by going via the canonical format too.

There is also the possibility of completing the GFCanonical grammar
mentioned above and using GF itself to convert canonical GF grammars to
other formats...
</content>
</entry>
<entry>
<title>the experimental export to Lambda Prolog is now obsolete and is removed</title>
<updated>2017-09-07T12:01:46+00:00</updated>
<author>
<name>Krasimir Angelov</name>
<email>kr.angelov@gmail.com</email>
</author>
<published>2017-09-07T12:01:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=60bd12a952dae70e23f8f79077ce41dd86043d34'/>
<id>urn:sha1:60bd12a952dae70e23f8f79077ce41dd86043d34</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix the handling of separators in BNFC which are not nonempty</title>
<updated>2016-03-22T13:13:35+00:00</updated>
<author>
<name>krasimir</name>
<email>krasimir@chalmers.se</email>
</author>
<published>2016-03-22T13:13:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=a393c1a246bb946e53f26b7b91a173c2ba1a0fa7'/>
<id>urn:sha1:a393c1a246bb946e53f26b7b91a173c2ba1a0fa7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>CFGtoPGF is now extended to support context-free grammars with primitive parameters </title>
<updated>2016-03-22T10:28:15+00:00</updated>
<author>
<name>krasimir</name>
<email>krasimir@chalmers.se</email>
</author>
<published>2016-03-22T10:28:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=ce7072085947f4981c8d6d49b571e3cf5683fbb6'/>
<id>urn:sha1:ce7072085947f4981c8d6d49b571e3cf5683fbb6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>initial support for BNFC syntax in context-free grammars for GF. Not all features are supported yet. Based on contribution from Gleb Lobanov</title>
<updated>2016-03-21T13:27:44+00:00</updated>
<author>
<name>krasimir</name>
<email>krasimir@chalmers.se</email>
</author>
<published>2016-03-21T13:27:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=c8ebe093150509d9f01d82f0d698ef5df09bd985'/>
<id>urn:sha1:c8ebe093150509d9f01d82f0d698ef5df09bd985</id>
<content type='text'>
</content>
</entry>
</feed>
