Clean up GC2 docs

This commit is contained in:
Jay McCarthy 2013-08-07 09:50:20 -06:00
parent 2cffc7ede7
commit e38d15df41
2 changed files with 10 additions and 15 deletions

View File

@ -70,7 +70,7 @@ Determines if @racket[v] is a root.
@defproc[(heap-value? [v any/c]) boolean?]{ @defproc[(heap-value? [v any/c]) boolean?]{
A value that may be stored on the heap. Roughly corresponds to the contract A value that may be stored on the heap. Roughly corresponds to the contract
@racket[(or/c boolean? number? procedure? symbol? empty?)]. @racket[(or/c boolean? number? symbol? empty?)].
} }
@ -185,11 +185,6 @@ store a tag, etc. You are also welcome to pre-allocate common constants (e.g.,
the empty list). This procedure may need to perform a garbage-collection. If the empty list). This procedure may need to perform a garbage-collection. If
there is still insufficient space, it should signal an error. there is still insufficient space, it should signal an error.
Note that closures are flat values. The environment of a closure is internally
managed, but contains references to values on the heap. Therefore, during
garbage collection, the environment of reachable closures must be updated. The
language exposes the environment via the @racket[procedure-roots] function.
} }
@defproc[(gc:cons (first root?) (rest root?)) location?]{ @defproc[(gc:cons (first root?) (rest root?)) location?]{

View File

@ -13,14 +13,13 @@
exact-positive-integer?) exact-positive-integer?)
(only-in racket/contract/base (only-in racket/contract/base
or/c listof any/c) or/c listof any/c)
(only-in plai/collector (only-in plai/gc2/collector
root? root?
heap-size heap-size
location? location?
heap-value? heap-value?
heap-set! heap-ref with-heap heap-set! heap-ref with-heap
get-root-set read-root set-root! get-root-set read-root set-root!)
procedure-roots)
plai/scribblings/fake-collector2 plai/scribblings/fake-collector2
plai/scribblings/fake-mutator2 plai/scribblings/fake-mutator2
plai/random-mutator plai/random-mutator
@ -33,12 +32,13 @@
@defmodulelang[plai/gc2/mutator] @defmodulelang[plai/gc2/mutator]
The @MUTATE-LANG language is used to test garbage collectors written with the The @MUTATE-LANG language is used to test garbage collectors written
@secref["collector"] language. Since collectors support a subset of Racket's with the @secref["gc2-collector"] language. Since collectors support
values, the @MUTATE-LANG language supports a subset of procedures and syntax. a subset of Racket's values, the @MUTATE-LANG language supports a
In addition, many procedures that can be written in the mutator are omitted as subset of procedures and syntax. In addition, many procedures that
they make good test cases. Therefore, the mutator language provides only can be written in the mutator are omitted as they make good test
primitive procedures, such as @racket[+], @racket[cons], etc. cases. Therefore, the mutator language provides only primitive
procedures, such as @racket[+], @racket[cons], etc.
@section{Building Mutators for GC2} @section{Building Mutators for GC2}