<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gf-core.git/src/compiler/GF/Grammar/Printer.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>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>bugfix in the pretty printer</title>
<updated>2019-03-26T11:21:35+00:00</updated>
<author>
<name>krangelov</name>
<email>kr.angelov@gmail.com</email>
</author>
<published>2019-03-26T11:21:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=1e9188ea6093cdaf3593703a596ebf840a539f02'/>
<id>urn:sha1:1e9188ea6093cdaf3593703a596ebf840a539f02</id>
<content type='text'>
</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>GF.Grammar.Printer now has a Terse mode which prints record types with lock fields with their corresponding abstract categories</title>
<updated>2017-03-07T08:24:00+00:00</updated>
<author>
<name>krasimir</name>
<email>krasimir@chalmers.se</email>
</author>
<published>2017-03-07T08:24:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=5ec43f2f75e8b62bcb650f75099b83f282878901'/>
<id>urn:sha1:5ec43f2f75e8b62bcb650f75099b83f282878901</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Changes for compatibility with ghc-7.10-rc2</title>
<updated>2015-02-16T15:05:06+00:00</updated>
<author>
<name>hallgren</name>
<email>hallgren@chalmers.se</email>
</author>
<published>2015-02-16T15:05:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=54ae70a81e338fd05397ab22890b3ca36284be54'/>
<id>urn:sha1:54ae70a81e338fd05397ab22890b3ca36284be54</id>
<content type='text'>
2 modules: Name clashes caused by Applicative-Monad change in Prelude
2 modules: Ambiguities caused by Foldable/Traversable in Prelude
2 modules: Backwards incompatible changes in time-1.5 for defaultTimeLocale
9 modules: {-# LANGUAGE FlexibleContexts #-} (because GHC checks inferred types
           now, in addition to explicitly given type signatures)

Also silenced warnings about tab characters in source files.

</content>
</entry>
<entry>
<title>Renaming SourceGrammar to Grammar and similarly for some related types</title>
<updated>2014-10-21T14:42:31+00:00</updated>
<author>
<name>hallgren</name>
<email>hallgren@chalmers.se</email>
</author>
<published>2014-10-21T14:42:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=3bfcfa157dc291e03bfb4db3baed8b0098d76f50'/>
<id>urn:sha1:3bfcfa157dc291e03bfb4db3baed8b0098d76f50</id>
<content type='text'>
Included renamings:

	SourceGrammar -&gt; Grammar
	SourceModule -&gt; Module
	SourceModInfo -&gt; ModuleInfo
	emptySourceGrammar -&gt; emptyGrammar

Also introduces a type synonym (which might be good to turn into a newtype):

	type ModuleName = Ident

The reason is to make types like the following more self documenting:

	type Module = (ModuleName,ModuleInfo)
	type QIdent = (ModuleName,Ident)
</content>
</entry>
<entry>
<title>More haddock documentation improvements</title>
<updated>2014-10-16T14:03:57+00:00</updated>
<author>
<name>hallgren</name>
<email>hallgren@chalmers.se</email>
</author>
<published>2014-10-16T14:03:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=c924491289259fa8a5a259ed97f2d9e817e3338c'/>
<id>urn:sha1:c924491289259fa8a5a259ed97f2d9e817e3338c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Introducing GF.Text.Pretty for more concise pretty printers and GF.Infra.Location for modularity</title>
<updated>2014-07-27T22:06:23+00:00</updated>
<author>
<name>hallgren</name>
<email>hallgren@chalmers.se</email>
</author>
<published>2014-07-27T22:06:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=30cda5151651e712803527b6ab4e5abc07536f2c'/>
<id>urn:sha1:30cda5151651e712803527b6ab4e5abc07536f2c</id>
<content type='text'>
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.

</content>
</entry>
<entry>
<title>PGF library: expose only PGF and PGF.Internal instead of all modules</title>
<updated>2014-06-12T14:43:18+00:00</updated>
<author>
<name>hallgren</name>
<email>hallgren@chalmers.se</email>
</author>
<published>2014-06-12T14:43:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=d6252d1c16d59ad26db0d08a531cddf39864d9db'/>
<id>urn:sha1:d6252d1c16d59ad26db0d08a531cddf39864d9db</id>
<content type='text'>
PGF exports the public, stable API.
PGF.Internal exports additional things needed in the GF compiler &amp; shell,
including the nonstardard version of Data.Binary.
</content>
</entry>
<entry>
<title>new overload resolution, taking care of ad hoc overloading.</title>
<updated>2014-02-01T13:17:52+00:00</updated>
<author>
<name>aarne</name>
<email>aarne@chalmers.se</email>
</author>
<published>2014-02-01T13:17:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=2aa8ad7e762d6fc5296770e0edff5909dc134a4e'/>
<id>urn:sha1:2aa8ad7e762d6fc5296770e0edff5909dc134a4e</id>
<content type='text'>
</content>
</entry>
</feed>
