<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gf-core.git/src/compiler/GF/CompileOne.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>2026-05-17T18:37:48+00:00</updated>
<entry>
<title>Benchmarks, initial sketches</title>
<updated>2026-05-17T18:37:48+00:00</updated>
<author>
<name>adelon</name>
<email>22380201+adelon@users.noreply.github.com</email>
</author>
<published>2026-05-17T18:37:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=3cc01b9d311c7a9f86fbf2fa8c2d66921f9ba030'/>
<id>urn:sha1:3cc01b9d311c7a9f86fbf2fa8c2d66921f9ba030</id>
<content type='text'>
</content>
</entry>
<entry>
<title>MonadFail: Make backwards-compatible</title>
<updated>2020-09-05T18:23:07+00:00</updated>
<author>
<name>Andreas Källberg</name>
<email>anka.213@gmail.com</email>
</author>
<published>2020-09-05T18:23:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=7268253f5ae4b4883d28faa87b3e63295f04abfd'/>
<id>urn:sha1:7268253f5ae4b4883d28faa87b3e63295f04abfd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix most build errors</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-05T15:29:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=0581d6827ea2e4aac371eb05f3bf5508f3f40edc'/>
<id>urn:sha1:0581d6827ea2e4aac371eb05f3bf5508f3f40edc</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>GF.CompileOne: use random numbers to avoid temporary file name clashes</title>
<updated>2015-05-05T13:51:35+00:00</updated>
<author>
<name>hallgren</name>
<email>hallgren@chalmers.se</email>
</author>
<published>2015-05-05T13:51:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=b0e8a49b9aa0764a83bfe88afc55fd29eb915f9e'/>
<id>urn:sha1:b0e8a49b9aa0764a83bfe88afc55fd29eb915f9e</id>
<content type='text'>
When using make -j to compile examples/app or examples/phrasebook, since
the dependencies are not completely specified in the Makefiles, it can
happen that the same file is compiled at the same by more than one process,
resulting in an error when they try to write the same .gfo.tmp file. Adding a
random number to the temporary file name avoids this problem.
</content>
</entry>
<entry>
<title>Haddock documentation: expose exportPGF, some other small improvements</title>
<updated>2014-12-08T14:48:14+00:00</updated>
<author>
<name>hallgren</name>
<email>hallgren@chalmers.se</email>
</author>
<published>2014-12-08T14:48:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=676b0d6e8192c3cab92ca4cb8247cba00533402d'/>
<id>urn:sha1:676b0d6e8192c3cab92ca4cb8247cba00533402d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use terminfo to highlight warnings and errors in blue and red</title>
<updated>2014-10-28T19:04:48+00:00</updated>
<author>
<name>hallgren</name>
<email>hallgren@chalmers.se</email>
</author>
<published>2014-10-28T19:04:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=0519493ca936c8e555cfdf9178195418e342ff05'/>
<id>urn:sha1:0519493ca936c8e555cfdf9178195418e342ff05</id>
<content type='text'>
This replaces the hardwired ANSI escape codes that were accidentally included
in a previous patch.

This adds a dependency on terminfo, but this should be unproblematic, since
haskeline already depends on the same underlying C library.

The color highlighting is omitted on Windows.
</content>
</entry>
<entry>
<title>Show paths relative to the current directory in progress reports</title>
<updated>2014-10-28T15:02:29+00:00</updated>
<author>
<name>hallgren</name>
<email>hallgren@chalmers.se</email>
</author>
<published>2014-10-28T15:02:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=e41d9e34bbb93a594b09fa390140149897a9112f'/>
<id>urn:sha1:e41d9e34bbb93a594b09fa390140149897a9112f</id>
<content type='text'>
It is much nicer to see something like

- compiling FoodsSwe.gf...   write file FoodsSwe.gfo
- compiling FoodsTha.gf...   write file FoodsTha.gfo
- compiling FoodsTsn.gf...   write file FoodsTsn.gfo
- compiling FoodsTur.gf...   write file FoodsTur.gfo
- compiling FoodsUrd.gf...   write file FoodsUrd.gfo
linking ... OK
Writing Foods.pgf...

instead of

- compiling /Users/hallgren/src/GF/gf/examples/foods/FoodsSwe.gf...   write file /Users/hallgren/src/GF/gf/examples/foods/FoodsSwe.gfo
- compiling /Users/hallgren/src/GF/gf/examples/foods/FoodsTha.gf...   write file /Users/hallgren/src/GF/gf/examples/foods/FoodsTha.gfo
- compiling /Users/hallgren/src/GF/gf/examples/foods/FoodsTsn.gf...   write file /Users/hallgren/src/GF/gf/examples/foods/FoodsTsn.gfo
- compiling /Users/hallgren/src/GF/gf/examples/foods/FoodsTur.gf...   write file /Users/hallgren/src/GF/gf/examples/foods/FoodsTur.gfo
- compiling /Users/hallgren/src/GF/gf/examples/foods/FoodsUrd.gf...   write file /Users/hallgren/src/GF/gf/examples/foods/FoodsUrd.gfo
linking ... OK
Writing Foods.pgf...

</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>Remove some dead code</title>
<updated>2014-10-20T15:05:43+00:00</updated>
<author>
<name>hallgren</name>
<email>hallgren@chalmers.se</email>
</author>
<published>2014-10-20T15:05:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adelon.net/gf-core.git/commit/?id=55aebadd5a64eb3f6a566168bbeeeb7cbb4ccb44'/>
<id>urn:sha1:55aebadd5a64eb3f6a566168bbeeeb7cbb4ccb44</id>
<content type='text'>
* The following modules are no longer used and have been removed completely:

	GF.Compile.Compute.ConcreteLazy
	GF.Compile.Compute.ConcreteStrict
	GF.Compile.Refresh

* The STM monad has been commented out. It was only used in
  GF.Compile.SubExpOpt, where could be replaced with a plain State monad,
  since no error handling was needed. One of the functions was hardwired to
  the Err monad, but did in fact not use error handling, so it was turned
  into a pure function.

* The function errVal has been renamed to fromErr (since it is analogous to
  fromMaybe).

* Replaced 'fail' with 'raise' and 'return ()' with 'done' in a few places.

* Some additional old code that was already commented out has been removed.
</content>
</entry>
</feed>
