Robby Findler
092d98656c
fix plai/gc2/mutator for the case where a lambda-bound
...
variable is shadowing something
2013-03-21 22:48:05 -05:00
Robby Findler
0e6975fb2c
add 'values' to plai/gc2/mutator language
2013-03-21 22:48:05 -05:00
Eli Barzilay
af6be85ff5
Fix lots of indentation mistakes.
...
(Found by my ayatollah script...)
2013-03-14 10:55:47 -04:00
Robby Findler
e0aef0a575
fix two bugs in recent plai commit
2013-03-09 18:59:26 -06:00
Robby Findler
38f5823a59
adjust plai's gc2 language to use roots as the arguments
...
to gc:cons and gc:closure instead of passing locs
This enables the important change, namely that get-root-set
no longer returns roots corresponding to the arguments
of the allocation function that we're in the middle of.
This means that a common error students have (forgetting
to chase the 'hd' and 'tl' pointers in their GC) is
harder to make now, since get-root-set never contains
those locations as roots. (In the past you would have had
to write some pretty non-obvious mutator program to get
that behavior.)
2013-03-09 16:08:00 -06:00
Robby Findler
ba3e676057
adjust the expansion of #%module-begin so it doesn't
...
generate so much code
(Mostly to avoid pain with the macro stepper, but also
reducing the amount of code macros generates is good
for performance reasons)
2013-03-09 09:22:18 -06:00
Robby Findler
46eb91b578
fix a bug in the way let-values decided which variables are roots
...
also, Rackety
2013-03-09 09:22:18 -06:00
Robby Findler
3311387201
when anormalizing, never lift out identifiers from application expressions
...
The code used to avoid lifting identifier in more restricted circumstances,
but it seems safe to alway avoid that, which can lead to a lot
less lifting
2013-03-09 09:22:18 -06:00
Robby Findler
87f76e94f7
allow quote require forms in the argument to allocator-setup
...
This is mostly to better support test cases so that we
can set up namespaces that have specific collectors in them
(easiest to do with quote-based requires)
2013-03-09 09:22:17 -06:00
Robby Findler
0889133ca1
unbreak get-root-set
2013-03-07 13:52:37 -06:00
Robby Findler
9ef439d31f
add in documentation for plai/gc2
2013-03-07 13:52:37 -06:00
Robby Findler
49ffca8fc2
remove ->address
2013-03-07 13:52:36 -06:00
Robby Findler
5c90a7ba83
adjust gc2's mutator language so that void-producing expressions
...
are allowed only in places where the value is discarded
2013-03-07 13:52:36 -06:00
Robby Findler
b0ed3b49e0
adjust plai test & co. to print only failing tests to stderr,
...
instead of printing all of them
also, adjust the plai test suites to cope with test results going
to two different places
2013-02-27 21:30:37 -06:00
Robby Findler
727d11df83
adjust plai's test facility to print test failures to stderr
...
instead of stdout (in addition to making errors red in drracket,
this will also make some of the existing test suites more
drdr friendly)
2013-02-27 19:20:26 -06:00
Robby Findler
478ec22d02
add with-roots to plai's gc languages
2013-02-26 12:41:25 -06:00
Jay McCarthy
b778e4e03c
enabling shared in plai with some shameless copying of kernel code
2012-11-06 19:53:03 -07:00
Jay McCarthy
ffcda4741f
Fixing a safe-for-space error that Robby found
2012-02-28 14:15:07 -07:00
Robby Findler
9ffc18a000
adjust plai's gc2/mutator so that primitive applications are
...
special and primtives not in an application position is a syntax error
2012-02-24 08:15:03 -06:00
Eli Barzilay
c007c345f9
A bunch of more typos like the ones in David's commit.
2012-02-21 14:21:43 -05:00
Robby Findler
7c3464f9d7
add marks on quoted identifiers so that, when they are used later, they bind properly
2012-02-20 21:30:24 -06:00
Robby Findler
7109e92b04
add gc2 support to random mutator
2012-02-20 15:29:00 -06:00
Robby Findler
3f5a45e904
fix broken vector->roots
2012-02-20 15:29:00 -06:00
Robby Findler
c42675f80c
adjust gc2's mutator language:
...
- give names to user functions that matches the user's names
(if the third bullet goes away, then the function
mutator-lift needs to be adjusted so that it uses
procedure-rename in order to preserve the improvement
in this bullet)
- change exn? to exn:fail? (to avoid catching break exns)
- change lang so that primitives (the ones in the
provide-flat-prims/lift declaration) are not allocated
in the user's space (treat them as if they are constants)
This change makes it easier to build up and explain the
GC api, piece by piece. That is, you can first run a program
that contains just a constant (and explain it) with only a
subset of the api. Then you can do something like (+ 1 2)
and explain it, both without getting into how procedures work.
(This is helpful for the way I run my lectures)
2012-02-20 15:29:00 -06:00
Jay McCarthy
c2355caef6
Finalizing initial pass on GC2
...
It was not a problem with the particular collector. All allocation
sites need to update the gc-roots-key with their static information.
2012-01-04 19:55:24 -07:00
Jay McCarthy
55e1df1445
See last commit
2012-01-04 19:55:24 -07:00
Jay McCarthy
caf83b911b
Initial pass on adding manual closure management
...
There are still five errors, but they seem to be errors in the sample
collector. But I need to find out.
2012-01-04 19:55:24 -07:00
Jay McCarthy
e4755a5ffc
New GC code
2012-01-04 19:55:24 -07:00
Eli Barzilay
a9b1f993d4
Remove redundant execution bit from some files, convert one CRLF file to LFs.
2011-12-01 03:54:32 -05:00
Jay McCarthy
36a408096c
Fixing an error in quoting found by a student this year
2011-11-17 15:16:22 -07:00
Eli Barzilay
1db5ad97f8
Fix another bunch of "language" typos.
2011-08-26 05:26:46 -04:00
Eli Barzilay
3157955d40
".ss" -> ".rkt" scan done.
2011-07-02 10:37:53 -04:00
Ryan Culpepper
1b702a2ae3
docs reorganization
...
added tutorial, racket categories
relabeled some other categories
normalized manual names: de-bolded, changed some names
2011-07-01 17:16:53 -06:00
Robby Findler
69b5daa9e6
remove docs tests that no one was interested in
2011-07-01 11:38:09 +08:00
Eli Barzilay
40124a0619
A long overdue scan to eliminate files without terminating newlines.
...
(DrRacket should really do that.)
2011-06-28 02:01:41 -04:00
Eli Barzilay
ac26fe7554
A ton of @scheme*' ->
@racket*' and related updates.
...
Also, updates some of the mzlib files to point at `racket/*' libraries
rather than to `scheme/*' ones.
2011-06-25 04:08:47 -04:00
Eli Barzilay
debd1f9f1e
Recketizing much in `net/*', mass ".ss" -> ".rkt" conversion in .scrbl files.
...
(Some other minor things here and there.)
2011-06-20 04:27:14 -04:00
Robby Findler
507b1cd8fd
moved the docs-complete library into rackunit
...
to avoid having a separate, new manual for the
one library
2011-05-05 16:10:42 -05:00
Robby Findler
06ed2045ae
adjust check-docs so that the skipped exports are a parameter
2011-04-26 23:27:48 -05:00
Robby Findler
28200e733d
adjusted the plai docs so that the mutator language has everything documented in a way scribble can understand
2011-04-26 11:27:28 -05:00
Robby Findler
e7d0029aea
added lots of new tests that our documentation is complete
2011-04-25 13:24:43 -05:00
Ryan Culpepper
73ab167522
created racket/syntax from parts of unstable/syntax
2011-04-07 09:47:20 -06:00
David Van Horn
760a58b65d
Fixes more spelling errors.
2011-02-04 19:44:13 -07:00
John Clements
d675c7b12a
updated PLAI (and test cases) to use racket language rather than scheme
2011-01-20 10:21:22 -08:00
Jay McCarthy
f77ab71772
Fixing PR11592
2011-01-07 19:53:00 -07:00
Jay McCarthy
eecbc539c1
Fixing problem with previous "fix" to mutator-begin
2010-11-24 23:33:42 -05:00
Jay McCarthy
24dbffaf3b
Fixing problem found at Brown
2010-11-17 04:58:09 -07:00
Jay McCarthy
69fb56189a
datum doesn't need to be anfd
2010-10-28 16:07:52 -06:00
Jay McCarthy
ac4fb05f0c
Correct error in mutator quote
2010-10-28 11:18:28 -06:00
Jay McCarthy
05832af083
Correct handling of procedure env roots in mutator
2010-10-28 11:18:27 -06:00