Starting with inventory:
0000002788-f74ec0754d6f54a1a49d485e480561503329d96b9493c69a2e902572fbf418d1
[TAG yughijiar
John Meacham <john@repetae.net>**20060315012421] 
hash: 0000001607-6063cee235b33d7d3075a3bfbdf8f0632af1574fc9705463ca8288b1e08117e6
[get rid of Data.IORef for now
John Meacham <john@repetae.net>**20060315020148] 
hash: 0000000171-58a77f0d4eab713a0b00a6af32cd58798c746e9e548567362ff2997015d59c2b
[free up variable names once their scope has run out
John Meacham <john@repetae.net>**20060315030156] 
hash: 0000001009-63d09df90593353a1c835877d90c2961e29f796345110ac9f422bafb5a568854
[lint program after lambda lifting, don't re-annotate rules and ensure annotate handles recursive rules properly
John Meacham <john@repetae.net>**20060315030234] 
hash: 0000001814-880c3b828b68bc1ec6ca7c7beb836a242e643477c2757bae38e4651eebc84ebc
[don't add let-bound expressions to the type environment
John Meacham <john@repetae.net>**20060315032621] 
hash: 0000000445-d3618dcd56c083413dede8431042dd20075ab991752b484907bd4aaa38ec7568
[process type arguments on case statements properly
John Meacham <john@repetae.net>**20060315032655] 
hash: 0000000788-7f54f979b41c9213fbdaab7cb700a79f68e58ecbf54a45926c104e6c3bf34f90
[add '-l' in front of libraries when linking C code
John Meacham <john@repetae.net>**20060315032728] 
hash: 0000000555-4537a537754ffece6fd386f441e0c7f348dcae28a6768ca18165112c7c62810e
[don't allocate new node when case statement returns the same thing as the scrutinee
John Meacham <john@repetae.net>**20060315035051] 
hash: 0000000430-b6fb33bdf485826233b004e5a329c934b86ea6797aa4f618600dd1cb6b4ff33e
[add a bunch of new optimization rules
John Meacham <john@repetae.net>**20060316003238] 
hash: 0000002797-17d24efe87295b47d251a209b1728c2bdee0cb7f83157490c08de45dae41b5c8
[don't clear rules when adding new ones to an existing id with rules
John Meacham <john@repetae.net>**20060316003302] 
hash: 0000000490-c2d19e1d581a15c79c5f2ce2b29424d336bb9d1d26626b97af83238ad0b50dae
[add Grin.MangleE pass before grin generation that mangles the core in various ways before converting to grin
John Meacham <john@repetae.net>**20060316044245] 
hash: 0000007290-9f1225f4e50a0f28d6428e4f423952c514f56ab9bb0f7f3b51f54515f798cf36
[prune unreachable combinators after mangling, document TP@ names, make programSetE reset the entry points properly
John Meacham <john@repetae.net>**20060316045205] 
hash: 0000001011-1da61e647cbc5ca1f1129ecdf5e813b3a51861d73f5a6dda3c19726245bdd16f
[prune unreachable combinators after mangling, document TP@ names, make programSetE reset the entry points properly
John Meacham <john@repetae.net>**20060316051633] 
hash: 0000001571-45f54137456476f83b59a8cc4739cdf489c604e58206b738394e95bcd09c1d59
[treat operators of constant C values as atomic, as well as memory addresses and string constants
John Meacham <john@repetae.net>**20060316063554] 
hash: 0000004262-65341d570cf7a51c0ba9f563e6112c10c8b56738af3d645786e19162b6a9f2a2
[drop coercions in the core mangler rather than when converting to grin
John Meacham <john@repetae.net>**20060316102952] 
hash: 0000001695-feca4e697cca67cb0624c2715431c05f6f39bcb96b01aa922dc99e02d667ac5a
[add some more raw names
John Meacham <john@repetae.net>**20060316124642] 
hash: 0000000328-51313ac2c3a999c349451f62ff51590c5b9be02d2bbc554939ec50bc8bee89ac
[clean up FromE generation a lot. add some minor optimizations. don't bother evaluating unlifted values, just fetch them.
John Meacham <john@repetae.net>**20060316125702] 
hash: 0000009073-3f9e3e8a159641f8ef209a9e9673f19ea9ac44e10b22091e68f84753a6bfe8d1
[old tag: renvubbikuso
John Meacham <john@repetae.net>**20060316130149] 
hash: 0000001985-37cd3c4a7eac1ef6510da6f19ad8826bca6234494c36ef4c1e78f7a2fa1aeb67
[fix up some conflicts
John Meacham <john@repetae.net>**20060316131258] 
hash: 0000000918-21e910d897e23d5fe800e9f97c1d7345af110d58692455dc11d8cc5dc6debb8a
[fix profiling
John Meacham <john@repetae.net>**20060316132952] 
hash: 0000000576-b103948229bf61cdddd7fde5e8087df9549936bf3abd09c8a120b4edfca6d544
[new eta expander than can look through cases and lets
John Meacham <john@repetae.net>**20060317002424] 
hash: 0000005036-ad1c473b567a796a8797158a9f3f9423a7f1b68242799c778e292a964a4079d7
[make strictness analysis handle constant primitives
John Meacham <john@repetae.net>**20060317003319] 
hash: 0000000159-841efba81a995d29233262a5b2540c5fa3eb261868069c399d46519ef5f99b91
[clean up E.Eta code some, use bottoming out info when determining whnfOrBot and isCheap
John Meacham <john@repetae.net>**20060317010612] 
hash: 0000001921-60a7b3a0ee9e76b11833efc6c44306d3a3174fa99724f888b8af92dc3f19af9e
[fix up handling of world for main function and grin generation
John Meacham <john@repetae.net>**20060317025647] 
hash: 0000003874-44468957e56ec4ad14cc0090c3d57cf0c119508bdd110e2058718520ae5145e5
[only rerun optimizer if type analysis pass finds something interesting.
John Meacham <john@repetae.net>**20060317031618] 
hash: 0000002115-c28535d2fba49b7867258dbbd150c877f99c4f3451bf8b5f9fd0a3aba7ec9277
[make eta expansion apply to subbindings in simplifier, try to apply it to arbitrary subexpressions
John Meacham <john@repetae.net>**20060317042227] 
hash: 0000003696-42b8e8bbcb97183203922aa62b9d9f90909bad8d3ae91d674a2d9ff5f9c64949
[clear arity information after type analysis and specialization
John Meacham <john@repetae.net>**20060317054850] 
hash: 0000003455-67bfcd9837afd83dddcdb90043f97dbbdb8bff0dbf1f94b6ca02162139120227
[get type from term rather than variable when eta expanding a definition
John Meacham <john@repetae.net>**20060317215327] 
hash: 0000000407-7dd1c329c26e1edbc45510e7277f500e50c27e6937723c310a4dbfb6a5454da6
[GenUtil updates
John Meacham <john@repetae.net>**20060320113756] 
hash: 0000001419-83e5123d224f2e9bee6d37b83ae7ebe6a66591d3c40706e76f553ab5ca1a48ad
[clean up Makefile
John Meacham <john@repetae.net>**20060320113823] 
hash: 0000000479-d5cb1c4a6de2c5bb8281168907acdbb715ed6fd9da641869b4fb119ca39fc8b3
[add etaAnnotateProgram which will iterate until a fixpoint is reached in arity calculation.
John Meacham <john@repetae.net>**20060320113858] 
hash: 0000002275-03a5a140b57fe3c1bf29160d777ecebd935169f61affab97e01c2197e9565f14
[check for unacconted for free variables when lint checking
John Meacham <john@repetae.net>**20060321011444] 
hash: 0000001779-3c4b5e2a17ee54165cce2e03be040e6c37d6f4fa6fc943768747490882f4f691
[when atomizing applications, include module name in generated names. clean up main and E.LetFloat some.
John Meacham <john@repetae.net>**20060321015319] 
hash: 0000005150-a8fc9be2588a07a69a524680e326386ccd45a47bda95c23b2017ba3d354be2a7
[when pulling type out of term about to be eta expanded, substitute any type variables within the types of the extracted lambda vars
John Meacham <john@repetae.net>**20060321022441] 
hash: 0000002319-acd679d2564c229a926c376b1ba48c65e94c47cb8cd982381136d04327514f3a
[don't throw away use info after an eta expansion. use the etaExpandDef routine for all eta expansioning.
John Meacham <john@repetae.net>**20060321033522] 
hash: 0000001066-262f2670e07f3f2873a2a1cc7cb24fea7cc95b683f200c902295b6e9938b0557
