Revisions

This commit is contained in:
Justin Ethier 2017-01-05 04:18:24 -05:00
parent c988950fec
commit 341881ef03

View file

@ -246,11 +246,11 @@ It took a long time to research and plan out the new GC before it could be imple
The actual development consisted of several distinct phases:
- Phase 0 - Started with a runtime using a basic Cheney-style copying collector.
- Phase 1 - Added new definitions via `gc.h` and make sure everything compiles.
- Phase 1 - Added new definitions via `gc.h` and made sure everything compiles.
- Phase 2 - Changed how strings are allocated to clean up the code and be compatible with the new GC algorithm. This was mainly just an exercise in cleaning up cruft in the old Cyclone implementation.
- Phase 3 - Changed from using a Cheney-style copying collector to a naive mark&sweep algorithm. The new algorithm was based on code from Chibi Scheme, so it was already debugged and a solid foundation for future work.
- Phase 3 - Changed from using a Cheney-style copying collector to a naive mark-and-sweep algorithm. The new algorithm was based on code from Chibi Scheme, so it was already debugged and a solid foundation for future work.
- Phase 4 - Integrated a new tracing GC algorithm but do not activate it yet. Added a new thread data argument to all of the necessary runtime functions.
- Phase 5 - Required the pthreads library, and stood Cyclone back up using new GC algorithm.
- Phase 5 - Required the pthreads library, and stood Cyclone back up using the new GC algorithm for the first time.
- Phase 6 - Added SRFI 18 to support multiple application threads.
### Heap Data Structures