<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gf-core.git/src/runtime/haskell/Data/Binary, 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>2025-08-02T14:39:31+00:00</updated>
<entry>
<title>define return in terms of pure, &gt;&gt; as *&gt;, mappend as &lt;&gt;</title>
<updated>2025-08-02T14:39:31+00:00</updated>
<author>
<name>Inari Listenmaa</name>
<email>inari.listenmaa@gmail.com</email>
</author>
<published>2024-09-09T17:43:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=b914a25de326dd937e3a1d05f4eefb46af6da7b4'/>
<id>urn:sha1:b914a25de326dd937e3a1d05f4eefb46af6da7b4</id>
<content type='text'>
In preparation for deprecation, see https://gitlab.haskell.org/ghc/ghc/-/wikis/proposal/semigroup-monoid and https://gitlab.haskell.org/ghc/ghc/-/wikis/proposal/monad-of-no-return
</content>
</entry>
<entry>
<title>support ghc9.4</title>
<updated>2023-11-15T18:04:41+00:00</updated>
<author>
<name>o1lo01ol1o</name>
<email>tim.pierson@gmail.com</email>
</author>
<published>2023-11-15T18:04:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=2c98075a0b68fa92959a1048cd0d1cec9ec20fd1'/>
<id>urn:sha1:2c98075a0b68fa92959a1048cd0d1cec9ec20fd1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add support for ghc-9.2.4</title>
<updated>2022-10-04T15:01:23+00:00</updated>
<author>
<name>Andreas Källberg</name>
<email>anka.213@gmail.com</email>
</author>
<published>2022-10-04T14:46:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=03df25bb7ac2f57a5382cda44dbaef8170543758'/>
<id>urn:sha1:03df25bb7ac2f57a5382cda44dbaef8170543758</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Improve comment</title>
<updated>2022-05-03T05:10:29+00:00</updated>
<author>
<name>Andreas Källberg</name>
<email>anka.213@gmail.com</email>
</author>
<published>2022-05-03T05:10:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=b0b2a06f3b3485e41ebfb66c2d4ebbd5dd8e6119'/>
<id>urn:sha1:b0b2a06f3b3485e41ebfb66c2d4ebbd5dd8e6119</id>
<content type='text'>
</content>
</entry>
<entry>
<title>When profiling, don't add cost centres in Data.Binary.Get</title>
<updated>2022-05-03T05:08:35+00:00</updated>
<author>
<name>Andreas Källberg</name>
<email>anka.213@gmail.com</email>
</author>
<published>2021-10-11T02:33:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=221597bd79054af47d3d5866d74a03ee9d7cd6e6'/>
<id>urn:sha1:221597bd79054af47d3d5866d74a03ee9d7cd6e6</id>
<content type='text'>
This change speeds up profiling by an order of magnitude.
Without it, the &gt;&gt;= function for Get dominates runtime completely during profiling.
</content>
</entry>
<entry>
<title>Replaced inlinePerformIO with accursedUnutterablePerformIO</title>
<updated>2020-11-10T09:01:47+00:00</updated>
<author>
<name>Liyana</name>
<email>nliyanaam@smu.edu.sg</email>
</author>
<published>2020-11-10T09:01:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=dc6dd988bc77bc95bc5a5855e1031f4169c1b4b8'/>
<id>urn:sha1:dc6dd988bc77bc95bc5a5855e1031f4169c1b4b8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>First attempt at fixing incompabilities with newer cabal</title>
<updated>2020-08-05T16:48:24+00:00</updated>
<author>
<name>Andreas Källberg</name>
<email>anka.213@gmail.com</email>
</author>
<published>2020-08-05T14:20:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=251845f83ea52965b5205fd231ffa2c87bb34de6'/>
<id>urn:sha1:251845f83ea52965b5205fd231ffa2c87bb34de6</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>move the custom Binary package back to src/runtime/haskell</title>
<updated>2017-09-04T07:55:17+00:00</updated>
<author>
<name>Krasimir Angelov</name>
<email>kr.angelov@gmail.com</email>
</author>
<published>2017-09-04T07:55:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=4fe9f88128515a75f790c353190f340c4179d464'/>
<id>urn:sha1:4fe9f88128515a75f790c353190f340c4179d464</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add a cabal flag to use the standard binary package</title>
<updated>2013-10-31T15:43:12+00:00</updated>
<author>
<name>hallgren</name>
<email>hallgren@chalmers.se</email>
</author>
<published>2013-10-31T15:43:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=83a10ce25a2c92fec24400773aca640a873fb2e8'/>
<id>urn:sha1:83a10ce25a2c92fec24400773aca640a873fb2e8</id>
<content type='text'>
The standard binary package has improved efficiency and error handling [1], so
in the long run we should consider switching to it. At the moment, using it is
possible but not recommended, since it results in incomatible PGF files.

The modified modules from the binary package have been moved from
src/runtime/haskell to src/binary.

[1] http://lennartkolmodin.blogspot.se/2013/03/binary-07.html
</content>
</entry>
</feed>
