
New patches:

[update documentation
John Meacham <john@repetae.net>**20100710060720
 Ignore-this: c8d8dfb0370e612d87e1e498056f93dc
] addfile ./docs/announce-0.7.4.txt
addfile ./docs/dependency_format.mkd
hunk ./docs/announce-0.7.4.txt 1
+Announcing jhc 0.7.4! There have been a few major changes, the main one being
+that there is now support for a garbage collector. This drastically increases
+the number of programs which are feasable to compile with jhc.
+
+  http://repetae.net/computer/jhc/
+
+Any testing people can do with -fjgc would be greatly appreciated! My gameplan
+is to fix any issues that come up with the new gc and release a 0.7.5 that
+will have the GC enabled by default. This will probably be the first version
+of jhc I can recommend to non-developers with a good concience :). Once that is
+done I can implement a good strategy for library compatibility with other
+compilers and the standards. As it is, jhc has a mix of haskell 98 and haskell
+2010 and the ghc base as its distributed libraries, basically whatever I found I
+needed in practice I added as I went along. This won't work in the long run.
+
+Major changes
+
+ * a garbage colletor which can be enabled with '-fjgc' is available.
+   after some more testing, I will make it the default in the 0.7.5 release.
+ * A new memory allocator based on Jeff Bonwick's slab memory allocator for
+   kernels. This means that in many cases, memory can be pulled off a slab
+   and immediately used with no initialization, in addition, it allowed a
+   rearrangement of the GC meta-data to optimizally use the cache.
+ * packed representation of algebraic types, 'Maybe Foo' is actually
+   represented in memory as a NULL pointer or just a 'Foo' with no tag bits.
+   Combined with the slab allocator, this can double the number of some common
+   values that can be put in a cache line.
+ * some intense profiling of generated code and modification of the rts and
+   code generator. Signifigant speed-ups in compiled programs are the result.
+
+Some other changes since 0.7.3 are
+ * documentation updates, especially when it comes to the runtime.
+ * ghc 6.12 support (it is in fact required now.)
+ * no more monolithic 'Main'. the core pass moved to E.Main and the grin pass
+   moved to Grin.Main.
+ * generated C code is more compact and easier to debug.
+ * more use of bytestring internally, improved performance
+ * JHC_RTS_INCLUDE flag allows including the rts from an
+   external file. useful for debugging/developing the RTS.
+ * explicit register support in grin, for alternate back ends such as a NCG
+ * Removed all compiler magic dealing with Eq,Bounded,Ord, and Bits. instances
+   for these are specified in haskell code even for built in types now.
+ * cleaned out some obsolete flags and options on command line.
+ * updated applicative and support for newest version of 'containers' library.
+ * bug updates
+ * various bug fixes
hunk ./docs/dependency_format.mkd 1
+{-#Using
+
+# Dependency Information
+
+Jhc can output dependency information describing how source files and libraries
+depend on each other while compiling code. The dependency information is
+generated when the --deps name.yaml option is passed to jhc. It is presented in the
+standard YAML format and its fields are as described below.
+
+  - LibraryDeps: the libraries that are dependend on. It is a hash of library ids to the specific filename of the library used.
+  - LibraryDesc: if building a library, this field contains the name of the library description file used.
+  - ModuleDeps:  a hash of module names to the list of modules that are directly dependend on by said module.
+  - ModuleSouce: a hash of module name to the haskell source file used.
[release 0.7.4
John Meacham <john@repetae.net>**20100710060855
 Ignore-this: 88f12833e0f29567f53bc28f47f187a2
] hunk ./bugs/project.yaml 64
     - ""
 - !ditz.rubyforge.org,2008-03-06/release 
   name: 0.7.4
-  status: :unreleased
-  release_time: 
+  status: :released
+  release_time: 2010-07-10 06:08:44.421060 Z
   log_events: 
   - - 2010-07-09 21:58:43.629236 Z
     - John Meacham <john@repetae.net>
hunk ./bugs/project.yaml 71
     - created
     - ""
+  - - 2010-07-10 06:08:44.421060 Z
+    - John Meacham <john@repetae.net>
+    - released
+    - ""
[TAG 0.7.4
John Meacham <john@repetae.net>**20100710061110
 Ignore-this: 926c66cef573bba900fa521e6f874a54
] 
<
[release 0.7.4
John Meacham <john@repetae.net>**20100710060855
 Ignore-this: 88f12833e0f29567f53bc28f47f187a2
] 
[update documentation
John Meacham <john@repetae.net>**20100710060720
 Ignore-this: c8d8dfb0370e612d87e1e498056f93dc
] 
[update bugs
John Meacham <john@repetae.net>**20100709230220
 Ignore-this: 4543078ef6cad4ea933c08bd427a848c
] 
[make shorter names for components for refering to bugs
John Meacham <john@repetae.net>**20100709224430
 Ignore-this: 2232195a7fd2d3218d88e28490622f28
] 
[update bugs
John Meacham <john@repetae.net>**20100709222121
 Ignore-this: 21426a6b1a5f516064553638969bb991
] 
[clean up documentation, improve rpm building script.
John Meacham <john@repetae.net>**20100709213244
 Ignore-this: fa432f9d8049bb20b4d59b1abeb7d20e
] 
[add support for parsing some ghc constructs so containers can compile out of the box
John Meacham <john@repetae.net>**20100709072750
 Ignore-this: 918aeb3e04d3744f9b42bc0d0898750f
] 
[update applicative module and add Data.Functor
John Meacham <john@repetae.net>**20100709060140
 Ignore-this: d4cd00f0730129a607fa9569586b2fd0
] 
[get rid of special handling of Bits class in the compiler
John Meacham <john@repetae.net>**20100709060019
 Ignore-this: 10fa0bcdbd0f8c278e337da95f43a706
] 
[remove Query dependency for now
John Meacham <john@repetae.net>**20100709014012
 Ignore-this: 3e572c48ae5aa787076ab95fe98d819a
] 
[remove unused and obsolete flags
John Meacham <john@repetae.net>**20100708212650
 Ignore-this: 1f8e3c1278d03a3803bf782d79db975b
] 
[fix environment cleanups in regress test
John Meacham <john@repetae.net>**20100708103450
 Ignore-this: 2f8a4af5ee19161faec3577537c1a68d
] 
[allow case scrutinization of primitives when converting grin to c
John Meacham <john@repetae.net>**20100705074505
 Ignore-this: 9a1cd29b7cddabf3b6c2befa37d2b951
] 
[remove special handling and magic instantiation of bounded, eq, and ord for primitive integral types
John Meacham <john@repetae.net>**20100705072355
 Ignore-this: f0fd0f01ac880a899bd3d541272288a0
] 
[allow plain 'maxBound/minBound/umaxBound' primitives when the type is clear from context
John Meacham <john@repetae.net>**20100705072243
 Ignore-this: 2b199576d942f3d70d6b674943a8a724
] 
[split regression test bugs into known and fixed categories
John Meacham <john@repetae.net>**20100702230433
 Ignore-this: 3fdce8d227d69b9cce1be845316450
] 
[update selftests
John Meacham <john@repetae.net>**20100702224037
 Ignore-this: 6cdaf796112847a7b3b2f2f2b5737bdc
] 
[remove old CharIO hack now that ghc supports proper locale support for IO
John Meacham <john@repetae.net>**20100702220830
 Ignore-this: 4e4510cdea62d0c0c2f2be70b9608d6b
] 
[clean up results display of regression tests some
John Meacham <john@repetae.net>**20100702213823
 Ignore-this: fb268fe7f370770932b517db90d7fc26
] 
[Fix constant compound types
John Meacham <john@repetae.net>**20100702213750
 Ignore-this: e456ed3a9a29046adc03299088a35578
] 
[remove need for libJudy when using jgc garbage collector
John Meacham <john@repetae.net>**20100702094139
 Ignore-this: 7bdf186ff0391e31937ccf5863b0892b
] 
[add explicit registers to grin
John Meacham <john@repetae.net>**20100408110241
 Ignore-this: 3fb41943723271892e7913303659bec
] 
[switch terminology from pages and arenas to blocks and megablocks to agree with ghc and reduce confusion. introduce megablocks as an allocation unit.
John Meacham <john@repetae.net>**20100408023038
 Ignore-this: 4fd1c467469e1142cdb552e5c07ed615
] 
[get rid of special handling of the what_t in data and the needed bookeeping.
John Meacham <john@repetae.net>**20100408005039
 Ignore-this: f7f7a584892fb8e064d51d0b057a102c
] 
[optimize and clean up code based on profiling
John Meacham <john@repetae.net>**20100408001545
 Ignore-this: a345682ba45c5b963d467703b9208e60
] 
[add page cache for recently freed pages
John Meacham <john@repetae.net>**20100407195209
 Ignore-this: 8396a53e402cc893098df7be98e39edd
] 
[clean up GC code, make distinction of pointers more type safe to catch errors
John Meacham <john@repetae.net>**20100407190943
 Ignore-this: 67d16aa85baf00d4ce7fcaa6111bac84
] 
[TAG tokfekyuvi
John Meacham <john@repetae.net>**20100407074459
 Ignore-this: 8696380d10f593d8fbcedde5b62a571c
] 
>

Context:

[update bugs
John Meacham <john@repetae.net>**20100709230220
 Ignore-this: 4543078ef6cad4ea933c08bd427a848c
] 
[make shorter names for components for refering to bugs
John Meacham <john@repetae.net>**20100709224430
 Ignore-this: 2232195a7fd2d3218d88e28490622f28
] 
[update bugs
John Meacham <john@repetae.net>**20100709222121
 Ignore-this: 21426a6b1a5f516064553638969bb991
] 
[clean up documentation, improve rpm building script.
John Meacham <john@repetae.net>**20100709213244
 Ignore-this: fa432f9d8049bb20b4d59b1abeb7d20e
] 
[add support for parsing some ghc constructs so containers can compile out of the box
John Meacham <john@repetae.net>**20100709072750
 Ignore-this: 918aeb3e04d3744f9b42bc0d0898750f
] 
[update applicative module and add Data.Functor
John Meacham <john@repetae.net>**20100709060140
 Ignore-this: d4cd00f0730129a607fa9569586b2fd0
] 
[get rid of special handling of Bits class in the compiler
John Meacham <john@repetae.net>**20100709060019
 Ignore-this: 10fa0bcdbd0f8c278e337da95f43a706
] 
[remove Query dependency for now
John Meacham <john@repetae.net>**20100709014012
 Ignore-this: 3e572c48ae5aa787076ab95fe98d819a
] 
[remove unused and obsolete flags
John Meacham <john@repetae.net>**20100708212650
 Ignore-this: 1f8e3c1278d03a3803bf782d79db975b
] 
[fix environment cleanups in regress test
John Meacham <john@repetae.net>**20100708103450
 Ignore-this: 2f8a4af5ee19161faec3577537c1a68d
] 
[allow case scrutinization of primitives when converting grin to c
John Meacham <john@repetae.net>**20100705074505
 Ignore-this: 9a1cd29b7cddabf3b6c2befa37d2b951
] 
[remove special handling and magic instantiation of bounded, eq, and ord for primitive integral types
John Meacham <john@repetae.net>**20100705072355
 Ignore-this: f0fd0f01ac880a899bd3d541272288a0
] 
[allow plain 'maxBound/minBound/umaxBound' primitives when the type is clear from context
John Meacham <john@repetae.net>**20100705072243
 Ignore-this: 2b199576d942f3d70d6b674943a8a724
] 
[split regression test bugs into known and fixed categories
John Meacham <john@repetae.net>**20100702230433
 Ignore-this: 3fdce8d227d69b9cce1be845316450
] 
[update selftests
John Meacham <john@repetae.net>**20100702224037
 Ignore-this: 6cdaf796112847a7b3b2f2f2b5737bdc
] 
[remove old CharIO hack now that ghc supports proper locale support for IO
John Meacham <john@repetae.net>**20100702220830
 Ignore-this: 4e4510cdea62d0c0c2f2be70b9608d6b
] 
[clean up results display of regression tests some
John Meacham <john@repetae.net>**20100702213823
 Ignore-this: fb268fe7f370770932b517db90d7fc26
] 
[Fix constant compound types
John Meacham <john@repetae.net>**20100702213750
 Ignore-this: e456ed3a9a29046adc03299088a35578
] 
[remove need for libJudy when using jgc garbage collector
John Meacham <john@repetae.net>**20100702094139
 Ignore-this: 7bdf186ff0391e31937ccf5863b0892b
] 
[add explicit registers to grin
John Meacham <john@repetae.net>**20100408110241
 Ignore-this: 3fb41943723271892e7913303659bec
] 
[switch terminology from pages and arenas to blocks and megablocks to agree with ghc and reduce confusion. introduce megablocks as an allocation unit.
John Meacham <john@repetae.net>**20100408023038
 Ignore-this: 4fd1c467469e1142cdb552e5c07ed615
] 
[get rid of special handling of the what_t in data and the needed bookeeping.
John Meacham <john@repetae.net>**20100408005039
 Ignore-this: f7f7a584892fb8e064d51d0b057a102c
] 
[optimize and clean up code based on profiling
John Meacham <john@repetae.net>**20100408001545
 Ignore-this: a345682ba45c5b963d467703b9208e60
] 
[add page cache for recently freed pages
John Meacham <john@repetae.net>**20100407195209
 Ignore-this: 8396a53e402cc893098df7be98e39edd
] 
[clean up GC code, make distinction of pointers more type safe to catch errors
John Meacham <john@repetae.net>**20100407190943
 Ignore-this: 67d16aa85baf00d4ce7fcaa6111bac84
] 
[TAG tokfekyuvi
John Meacham <john@repetae.net>**20100407074459
 Ignore-this: 8696380d10f593d8fbcedde5b62a571c
] 
Patch bundle hash:
7d52cffd688a1e7a7a62d9706e177c152899b896
