<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gf-core.git/src/compiler/GF/Compile/CheckGrammar.hs, branch optimize</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://git.adelon.net/gf-core.git/atom?h=optimize</id>
<link rel='self' href='https://git.adelon.net/gf-core.git/atom?h=optimize'/>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/'/>
<updated>2021-07-07T07:40:41+00:00</updated>
<entry>
<title>Replace tabs for whitespace in source code</title>
<updated>2021-07-07T07:40:41+00:00</updated>
<author>
<name>John J. Camilleri</name>
<email>john@digitalgrammars.com</email>
</author>
<published>2021-07-07T07:40:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=f2e52d6f2c2bc90febceebdea0268b40ea37476c'/>
<id>urn:sha1:f2e52d6f2c2bc90febceebdea0268b40ea37476c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Make imports in CheckGrammar a little more explicit</title>
<updated>2021-07-01T12:32:39+00:00</updated>
<author>
<name>John J. Camilleri</name>
<email>john@digitalgrammars.com</email>
</author>
<published>2021-07-01T12:32:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=5d7c687cb77ba10fd8a0ae70a605bb02f1ba59cf'/>
<id>urn:sha1:5d7c687cb77ba10fd8a0ae70a605bb02f1ba59cf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rename GF.Compile.TypeCheck.RConcrete to GF.Compile.TypeCheck.Concrete</title>
<updated>2021-07-01T12:27:11+00:00</updated>
<author>
<name>John J. Camilleri</name>
<email>john@digitalgrammars.com</email>
</author>
<published>2021-07-01T12:27:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=376b1234a2cb510aab62fefb59821557595c6ecb'/>
<id>urn:sha1:376b1234a2cb510aab62fefb59821557595c6ecb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rename GF.Compile.Compute.ConcreteNew to GF.Compile.Compute.Concrete</title>
<updated>2021-07-01T12:21:29+00:00</updated>
<author>
<name>John J. Camilleri</name>
<email>john@digitalgrammars.com</email>
</author>
<published>2021-07-01T12:21:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=71d99b9ecb2f59a5591bfdd9ab4695b00acbfd1c'/>
<id>urn:sha1:71d99b9ecb2f59a5591bfdd9ab4695b00acbfd1c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>more dead code</title>
<updated>2019-09-20T14:15:28+00:00</updated>
<author>
<name>krangelov</name>
<email>kr.angelov@gmail.com</email>
</author>
<published>2019-09-20T14:15:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=30eef61f0a400d6b9ec77721620e13b8132a9c2c'/>
<id>urn:sha1:30eef61f0a400d6b9ec77721620e13b8132a9c2c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>remove obsolete code</title>
<updated>2019-09-20T08:37:50+00:00</updated>
<author>
<name>krangelov</name>
<email>kr.angelov@gmail.com</email>
</author>
<published>2019-09-20T08:37:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=4d79aa8b198f411d0ab6d66d76d9f77dfd3f922f'/>
<id>urn:sha1:4d79aa8b198f411d0ab6d66d76d9f77dfd3f922f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>GF.Compile.CheckGrammar: discard bad 'lincat C = …' with a warning</title>
<updated>2019-04-25T15:02:42+00:00</updated>
<author>
<name>Thomas Hallgren</name>
<email>th-github@altocumulus.org</email>
</author>
<published>2019-04-25T15:02:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=bea6aa1d2d10669d62c1c5125dedac4cac0f8cfa'/>
<id>urn:sha1:bea6aa1d2d10669d62c1c5125dedac4cac0f8cfa</id>
<content type='text'>
e.g. if C is a fun and not a cat in the abstract syntax.
Discarding bad lincats prevents GF from generating malformed PGFs that
are rejected by the C run-time system.
I also added code to reject bad lincats with an error, but I left it
commented out since it seems a bit pedantic compared to GF's otherwise
rather sloppy grammar checking.
</content>
</entry>
<entry>
<title>Fixes for GHC 8.4.1 compatibility</title>
<updated>2018-04-18T17:18:10+00:00</updated>
<author>
<name>Thomas Hallgren</name>
<email>th-github@altocumulus.org</email>
</author>
<published>2018-04-18T17:18:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=820d2d503fde7b29634262fd07db2a4744cf813d'/>
<id>urn:sha1:820d2d503fde7b29634262fd07db2a4744cf813d</id>
<content type='text'>
* In GHC 8.4.1, the operator &lt;&gt; has become a method of the Semigroup class
  and is exported from the Prelude. This is unfortunate, since &lt;&gt; is also
  exported from the standard library module Text.PrettyPrint, so in any
  module that defines a pretty printer, there is likely to be an ambiguity.

  This affects ~18 modules in GF. Solution:

    import Prelude hiding (&lt;&gt;)

  This works also in older versions of GHC, since GHC does't complain if
  you hide something that doesn't exists.

* In GHC 8.4.1, Semigroup has become a superclass of Monoid. This means
  that anywhere you define an instance of the Monoid class you also have to
  define an instance in the Semigroup class.

  This affects Data.Binary.Builder in GF. Solution: conditionally define
  a Semigroup instance if compiling with base&gt;=4.11 (ghc&gt;=8.4.1)
</content>
</entry>
<entry>
<title>the experimental type checker in GF.Compile.TypeCheck.ConcreteNew is now rewriten to use the complete evaluator in GF.Compile.Compute.ConcreteNew. The old sketchy implementation in GF.Compile.Compute.ConcreteNew1 is now removed.</title>
<updated>2016-03-02T13:38:02+00:00</updated>
<author>
<name>krasimir</name>
<email>krasimir@chalmers.se</email>
</author>
<published>2016-03-02T13:38:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=47eb774cdf297b21b226a5699f954aadd9aa47e5'/>
<id>urn:sha1:47eb774cdf297b21b226a5699f954aadd9aa47e5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>added option -plus-as-bind which treats (+) as a bind when used with runtime variables</title>
<updated>2015-02-20T13:26:12+00:00</updated>
<author>
<name>krasimir</name>
<email>krasimir@chalmers.se</email>
</author>
<published>2015-02-20T13:26:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=f848857519bfb093310503108ff62297ea9f8a24'/>
<id>urn:sha1:f848857519bfb093310503108ff62297ea9f8a24</id>
<content type='text'>
</content>
</entry>
</feed>
