- User Since
- Nov 24 2014, 3:12 PM (207 w, 4 d)
Jul 21 2016
It's probably a left-over of the old symbol table and symbol matching support. I think dlfcn.h can be removed too, if you care about building on windows.
Jul 20 2016
Apr 20 2016
I addressed all review comments, and I also realized that there
was no test case for serialization. We have one now (and of course
Apr 19 2016
Apr 15 2016
I think I addressed all previous comments (they are marked DONE or
have a response), so it would be great to have a final review.
Jan 27 2016
Addressed more review comments
Jan 26 2016
I went through and marked as done what I fixed or will fix in the next iteration. Updated patch will be coming soon.
Jan 25 2016
Updated with more docs. Addressed review comments.
Thanks for the review, I'll work on fixing all points I did not comment on.
Dec 11 2015
@rrnewton if you do that, you need to be careful to follow forwarding pointers on the Compact side, as the same object that is being copied is also being moved by the GC. At the very least, you need an atomic compare-and-swap, which I remember having a measurable effect on the Compact performance.
Fixed building with -Werror (and fixed ./validate)
Dec 10 2015
No changes except for the bug fix
Btw the bug comes from 74a00bc8f96069f7205f091a02f3c571362f9522 (this patch was developer before that commit). I don't know why the included test suite doesn't catch it, but I'll fix it.
Dec 5 2015
I removed Md5, and I removed the hash table code and --export-dynamic.
Both features were only used by the symbol table support code
which is not part of this diff.
Nov 10 2015
Nov 4 2015
This is the first commit in the series.
I'll add the others to new diffs.
Oct 1 2015
Honestly, I don't see this library being useful unless in lockstep with ghc - the ties are too deep with the RTS, and new features or optimization would most certainly involve changes both in the RTS and in the Haskell interface code.
At that point, the issue of independent releases becomes less important: one has to release exactly with ghc, and have it depend on exactly the ghc-prim and base version associated with the right RTS.
If the issue is distributing this package when people do not want compacts to be installed togheter with ghc, I think splitting it at the distro level (ie, when composing rpms or debs from the ghc sources) is going to be significantly easier than using a separate source repo.
Sep 20 2015
Forgot to say, the changes are in three separate commit because they are logically separable: you can have the basic implementation of compacts without the striped allocator (for example to avoid an OS/arch dependency).
Aug 6 2015
The previous code was building and validating fine on Yosemite. What problem were you experiencing?
Jul 21 2015
OK nevermind, I checked again without the patch and I get the same failures (on 214596de224afa576a9c295bcf53c6941d6892e0, aka today's master, on OS X Yosemite, bootstrapped with ghc 7.10.1 from homebrew / clang 6.1.0).
Jul 20 2015
Well these tests are about heap exhaustion, not address space, so our behavior should not change...
I observed the following test failures that might be related (but might also be a problem in the test or the driver, because the test program behaves reasonably, just the stdout doesn't match)
The last patch I submitted was successfully tested on Darwin.
Apr 26 2015
Fixed lint warning
This is the updated patch to fix the aforementioned bug.
It validates fine on OS X and Linux, unfortunately after
rebasing it picked up a problem in Windows and now it
does not work.
Dec 3 2014
Ready for merge, I hope.
Nov 28 2014
Nov 26 2014
Updated with some of the review comments - now builds fine,
passes validate and should be bug free. I'll work on addressing
the other comments soon, but I wanted to give out a working
version in case some one else wants to play with it.