Eli Barzilay
569f5e20a9
Some selective #:when (not ...)' ->
#:unless ...'.
...
original commit: 623c7493ed
2011-09-16 10:48:18 -04:00
Matthew Flatt
c626b6fc7c
add ++aux' flag to
raco exe'
...
original commit: ca0d7b5ef4
2011-09-09 17:03:18 -06:00
Matthew Flatt
c663b1e957
fix demod for `begin-for-syntax' changes
...
original commit: b1eab296f4
2011-09-08 19:19:14 -06:00
Matthew Flatt
278f090e83
generalized `begin-for-syntax'
...
original commit: d3c56c9f13
2011-09-08 14:06:00 -06:00
Robby Findler
1161087456
remove extraneous path->string conversion
...
original commit: bb71539233
2011-09-05 08:30:48 -05:00
Matthew Flatt
d622961559
change `raco exe' to disable collection lookup by default
...
original commit: ecc058de4a
2011-08-25 09:15:30 -06:00
Matthew Flatt
dd20d04fff
add `raco unpack'
...
Although the ".plt" format is going to be replaced, the format is
currently viable for distributing collections, and I have wanted
a raw `unpack' command for a while. It was useful today to fix
problems with `raco pack' and collection links.
original commit: 2dbaa45e1b
2011-08-24 20:08:18 -06:00
Matthew Flatt
053734c4c8
fix compiler handling of top-/module-level constants
...
The JIT and bytecode compiler disagreed on the definition of
"constant". Now there are two levels: "constant" means constant across
all instantiations, and "fixed" means constant for a given instantation.
The JIT uses this distinction to generate direct-primitive calls
or not. (Without the distinction, a direct jump to `reverse' could
be wrong, because `racket/base' might get instantiated with the
JIT disabled or not.)
Also, fixed a bug in the JIT's `vector-set!' code in the case that
the target vector is a top-/module-level reference that is ready,
fixed, or constant.
original commit: 7eb2042bd9
2011-08-19 06:32:44 -06:00
Matthew Flatt
eec721ff4c
generalize #%variable-reference' and add
variable-reference-constant?'
...
Use the new functions to make the expansion of keyword applications
to known procedure work with mutation.
original commit: 5352d670c4
2011-08-09 16:33:17 -06:00
Matthew Flatt
eaed2b9eaf
fix compiler/zo-parse for sequence splice
...
Merge to 5.1.2
original commit: 42f41d868a
2011-07-22 22:19:58 -04:00
Matthew Flatt
481f10a622
fix zo-parse of rename tables
...
original commit: 07a9cdd2a8
2011-07-13 10:45:19 -06:00
Matthew Flatt
32d8828ab5
improve decompiler handling of syntax object
...
original commit: 5e49e0adea
2011-07-08 06:22:40 -06:00
Matthew Flatt
1f9a6339e4
fix decompile of define-values-for-syntax
...
original commit: 5bc8b67eba
2011-07-07 07:25:48 -06:00
Eli Barzilay
2f65de9812
".ss" -> ".rkt" scan done.
...
original commit: 3157955d40
2011-07-02 10:37:53 -04:00
Matthew Flatt
b5181ff032
adapt demodularizer to `compiler/zo-struct' change
...
original commit: 98740390fa
2011-07-01 22:46:20 -06:00
Matthew Flatt
ae33722071
fix `compiler/zo-parse' & co.
...
original commit: 69ad39d45c
2011-06-30 08:24:41 -06:00
Eli Barzilay
f90858601d
A long overdue scan to eliminate files without terminating newlines.
...
(DrRacket should really do that.)
original commit: 40124a0619
2011-06-28 02:01:41 -04:00
Eli Barzilay
1ca7b10829
Fix "zo-parse.rkt" wrt the inclusion of `identity' in mzlib/etc, and
...
switch to racket (making `begin-with-definitions' redundant).
original commit: fc1b974cd2
2011-06-07 13:06:13 -04:00
Matthew Flatt
f17d94056f
fix tl-map parse & marshal
...
original commit: 8ad8d5b7f7
2011-05-09 12:24:05 -06:00
Matthew Flatt
ee407d6610
fix varref' in
compiler/zo-structs', etc.
...
and sync docs better with implementation
original commit: a4da2a3f4c
2011-05-09 09:43:32 -06:00
Matthew Flatt
13e715ef44
fix decompiler's listing of captured top- and module-level variables
...
original commit: db75dddf87
2011-05-08 17:01:23 -06:00
Matthew Flatt
87373a2e0c
reorgnize datatypes of less common bytecode forms
...
removing a layer of indirection, and setting up
for an internal reorganization of the compiler code
original commit: e9721058fb
2011-05-06 06:56:23 -06:00
Matthew Flatt
805b8627f3
fix zo-marshal' for #f toplevel-map in
lam'
...
original commit: 87a4132b40
2011-05-03 14:43:27 -06:00
Matthew Flatt
1955c935ff
break link to namespaces from from closures over top-/module-level vars
...
- the `lam' structure from `compiler/zo-struct' changed to include a
`toplevel-map' field
This change helps solve a finalization problem in `racket/draw',
which in turn sigificantly reduces the peak memory use of `raco setup'
during the doc-building phase (because some documents load `racket/draw'
to render images, and multiple copies of `racket/draw' were retained
before finalization was fixed).
The change is an extreme way to solve a specific finalization
problem, but it's a kind of space-safety improvement; space safety
almost never matters, but when it does, then working around a lack of
space safety is practically impossible. In this case, it's not clear
how to otherwise solve the `racket/draw' finalization problem.
The improvement doesn't change the representation of closures, but it
requires special cooperation with the GC. All closures in a module
continue to share the same array of globals (plus syntax objects);
that is, instead of completely flat closures, Racket uses a two-level
environment where top-/module-level variables are grouped
together. The code half of a closure now records which
top-/module-level variables the body code actually uses, and the mark
phase of GC consults this information to retain only parts of the
top-/module-level environment frame that are actually used by some
closure (or all of the frame if it is accessible through some other
route). In other words, the GC supports a kind of "dependent
reference" to an array that is indexed by positions into the array
--- except that the code is more in the "Racket" directory instead of
the "GC" directory, since it's so specific to the closure
representation.
original commit: 2ada6d0e89
2011-05-03 06:57:49 -06:00
Matthew Flatt
9f2fba9625
safe-for-space repairs for functions with rest args
...
original commit: 0754ad0114
2011-04-22 15:59:33 -06:00
Matthew Flatt
b3fd71415d
cache loaded compiled modules
...
using a SHA1 hash stored in the marshaled bytecode; this cache
lowers the cost of sandboxes or other uses of multiple namespaces
when the code inspector doesn't change; the caching is almost
transparent, but an eval handler might be called with compiled
code that cannot be written
original commit: 97ce26b182
2011-04-16 13:24:58 -06:00
Eli Barzilay
a3b9b386fe
Use proper raco command name in make and pack.
...
Fixes PR 11719.
original commit: 0f14c6aa67
2011-02-09 21:13:55 -05:00
Kevin Tew
80de0713e8
raco make -j
...
original commit: 2e1dffbfcc
2011-02-01 08:27:56 -07:00
Matthew Flatt
37f822ccb2
restore gen-id gensym so that decompiler works
...
original commit: 0a8e5e604e
2010-11-11 14:39:45 -07:00
Blake Johnson
74c7025e6e
scrbl file and longer command name
...
original commit: 199a63772a
2010-10-30 12:49:27 -06:00
Jay McCarthy
c428f6cafe
Exposing more values to GC by not making them toplevels
...
original commit: 26c7625c79
2010-10-30 09:14:58 -06:00
Jay McCarthy
5f064063f5
Saving time by only reading zos once and saving space by limiting the extent of the hash tables
...
original commit: 255489e0af
2010-10-30 08:54:13 -06:00
Jay McCarthy
e5b1e20529
Removing newlines from debug messages
...
original commit: 46e2e7931a
2010-10-30 08:31:23 -06:00
Blake Johnson
8ae1cd0c3e
only creating zo file
...
original commit: 783418ce37
2010-10-29 19:50:12 -06:00
Blake Johnson
345f30f7e5
rolling back some unnecessary changes
...
original commit: a315f79ebd
2010-10-29 19:50:12 -06:00
Blake Johnson
969c0f4d58
replacing self modidx refs and tests
...
original commit: b2b5875e3e
2010-10-29 19:50:12 -06:00
Blake Johnson
8392dd8fa4
fixing logging and running code in zo-exs
...
original commit: 0688c18593
2010-10-29 19:50:11 -06:00
Blake Johnson
b8122efb82
using hasheq in zo-marshal
...
original commit: 43e151f340
2010-10-29 19:50:11 -06:00
Blake Johnson
7e97041b8d
debugging
...
original commit: 77c46d07ee
2010-10-29 19:50:11 -06:00
Blake Johnson
6b8a9b0861
Avoiding cycles in everything but closures
...
original commit: 7bffbc31a2
2010-10-29 19:50:11 -06:00
Blake Johnson
7aac10e938
offset calculation fix
...
original commit: d84b78daab
2010-10-29 19:50:11 -06:00
Blake Johnson
e0e144e210
changed eprintfs to log-debug
...
original commit: 3ddda200e8
2010-10-29 19:50:11 -06:00
Blake Johnson
1f2e1c6647
moved demodularizer from github to collects and added it to raco
...
original commit: 4676662e4b
2010-10-29 19:50:10 -06:00
Jay McCarthy
4830a2d141
Removing debugging aid
...
original commit: 089e99fac6
2010-09-16 12:45:38 -06:00
Blake Johnson
d2ad91ae38
removing indirects from zo handling
...
original commit: c88eb704c7
2010-09-16 12:45:37 -06:00
Eli Barzilay
be19dcb79d
Use "<path>" instead of a misleading "<file>",
...
improve doc line for `--collect'.
original commit: 41812ace0f
2010-09-12 01:53:52 -04:00
Blake Johnson
aa0d3e18ae
fixing pr11175, added only-rest-arg-not-used flag
...
original commit: 3433af0a30
2010-09-10 14:46:04 -06:00
Blake Johnson
4c5dfd88af
fixing pr11036 by adding plain certificates
...
original commit: 170ab47dc2
2010-09-10 14:46:04 -06:00
Blake Johnson
1f08f65282
removing debugging information
...
original commit: 6338a97e0a
2010-09-10 14:46:04 -06:00
Blake Johnson
78d5856d4d
never sharing hashes and trace debugging
...
original commit: 0d136ba4c7
2010-09-10 14:46:03 -06:00
Blake Johnson
070d86473d
traversing inside closures and using a seen set for lists
...
original commit: 32a9e60abe
2010-09-10 14:46:03 -06:00
Blake Johnson
b8fe95cd26
fixing closure problem
...
original commit: 2dfaab00f4
2010-09-10 14:46:03 -06:00
Blake Johnson
a5f557b90e
zo-marshal fixes and switching back to prefabs
...
original commit: ecc9ceb842
2010-09-10 14:46:03 -06:00
Blake Johnson
46f22d2882
handling closures while writing symbol table
...
original commit: c2fee2a2f0
2010-09-10 14:46:03 -06:00
Blake Johnson
b816da148d
quoting parameter and not prefab structs
...
original commit: 893294674a
2010-09-10 14:46:02 -06:00
Blake Johnson
b63f532735
encoding wraps and fixes for zo-marshal sharing
...
original commit: 54f2d34a2e
2010-09-10 14:46:02 -06:00
Blake Johnson
4379002ddc
traverse while writing rather than a separate step
...
original commit: 88dcab6b5a
2010-09-10 14:46:02 -06:00
Blake Johnson
ae4b770939
zo-marshal fixes and read.c fix for hash tables in symbol table
...
original commit: 9599304ca9
2010-09-10 14:46:02 -06:00
Blake Johnson
817b3186d9
zo-marshal single out-anything function and zo-parse debugging
...
original commit: 37f07cb68b
2010-09-10 14:46:01 -06:00
Blake Johnson
1d54bf17a5
zo-parse debugging and read in zo-exs
...
original commit: f27fe3d5c9
2010-09-10 14:46:01 -06:00
Eli Barzilay
9bebb5a98d
Lots of "~e" to "~.s" changes.
...
original commit: 606b7f60dc
2010-08-25 17:17:01 -04:00
Matthew Flatt
03593e433b
teach decompiler about literal prims from `#%futures'
...
original commit: 9be0559936
2010-08-25 14:58:27 -06:00
Matthew Flatt
4b9635cb70
fix bytecode-writing inconsistencies related to syntax objects and paths
...
and improve organization of the docs
original commit: 0d9f5016ba
2010-08-17 17:18:24 -06:00
Blake Johnson
f907cbf361
better traversal for more sharing in zo-marshal and some refactoring.
...
original commit: f4abd35f5c
2010-08-04 17:09:57 -06:00
Blake Johnson
aee68bb788
cases for more complicated lexical renames
...
original commit: b062c900a1
2010-08-03 15:40:41 -06:00
Blake Johnson
c998fe85e9
applying make-prefab-struct
...
original commit: 551ef5ba30
2010-08-02 19:27:28 -06:00
Blake Johnson
2efb39c391
another all-from-module fix
...
original commit: 7653ce037b
2010-08-02 19:26:32 -06:00
Blake Johnson
f7c42c1e6a
Added case in zo-marshal for prefab structs
...
Made quoted not-prefab so it isn't captured by prefab case
original commit: 63c6cc5d2c
2010-07-30 15:44:52 -06:00
Blake Johnson
7c32e885f3
better certificate handling in zo-parse and zo-marshal
...
original commit: 80c6ba482d
2010-07-30 14:37:17 -06:00
Eli Barzilay
ad67592f98
typo
...
(cherry picked from commit 14de7399bd
)
original commit: 700cb5ee8d
2010-07-30 05:25:25 -04:00
Eli Barzilay
bb6903c6bf
typo
...
original commit: 14de7399bd
2010-07-30 04:20:46 -04:00
Blake Johnson
8e7a64be3f
added another case for all-from-module renames
...
original commit: 2dfd340031
2010-07-28 14:45:07 -06:00
Blake Johnson
d8dae45321
Do not use CPT_ESCAPE for every CPT_QUOTE, instead if it was a protect-quote, then just put the CPT_QUOTE in.
...
original commit: 53fdc09e7a
2010-07-27 13:39:43 -06:00
Jay McCarthy
9b95b87049
Fixing parts of zo-marshal re protect-quote; parallelizing zo-test; there is no the path error again in zo-marshal though
...
original commit: 8d36dfad81
2010-07-27 11:10:54 -06:00
Jay McCarthy
99c7fa04e2
Fixing up a few things in zo-parse/etc
...
original commit: 28432037af
2010-07-26 12:18:01 -06:00
Blake Johnson
78faf5e6d6
zo-marshal wrap fixes, optional port for zo-parse
...
original commit: 8eeed89982
2010-07-26 12:06:02 -06:00
Matthew Flatt
b6a4c4ed65
extend decompiler to handle #%variable-reference
...
original commit: 5cc0baa01e
2010-07-20 06:35:58 -06:00
Blake Johnson
1325701f82
handling top-level-renames and mark-barriers
...
(cherry picked from commit 8df94dd746
)
original commit: 06c829d8c0
2010-07-18 18:57:26 -04:00
Blake Johnson
6887ead2c5
handling top-level-renames and mark-barriers
...
original commit: 8df94dd746
2010-07-15 15:53:02 -06:00
Ryan Culpepper
c64f9c5582
Added uses of unstable/struct
...
original commit: 07f57aac9b
2010-07-13 12:07:47 -06:00
Matthew Flatt
d35c8cac36
fix validation of module .zo exp-time content, and fix zo-marshal
...
original commit: c7c8f56e11
2010-07-08 17:17:42 -06:00
Matthew Flatt
2cd7824462
fix docs on `raco make --no-deps'
...
Closes PR 11018
original commit: a8062dc37d
2010-07-07 13:56:16 -06:00
Kevin Tew
c919d0df5f
Parallel collects build (process-based) "raco setup -u"
...
original commit: 35c28f4f66
2010-07-02 14:27:08 -06:00
Ryan Culpepper
405f94f6fc
unstable: removed byte-counting-port.rkt (use open-output-nowhere instead)
...
updated test to verify that open-output-nowhere has same behavior
original commit: a543c2137e
2010-07-01 17:05:06 -06:00
Matthew Flatt
d19d9eb8f7
tweak decompiler to use a different name for boxed locals
...
original commit: 535c8e0a09
2010-06-10 07:32:11 -04:00
Jay McCarthy
304e5247ed
Documenting make-hasheqv and using it
...
original commit: 7e485b8d28
2010-05-27 12:35:30 -06:00
Jay McCarthy
7b264d5089
Using placeholders in zo-parse for more cyclic datums
...
original commit: 035ee93911
2010-05-27 12:35:26 -06:00
Jay McCarthy
2fd3353508
Dealing with cyclic hashes
...
original commit: 4088448317
2010-05-27 12:33:26 -06:00
Jay McCarthy
cac230bc93
Unifying some code
...
original commit: 5833f7cba4
2010-05-27 12:33:26 -06:00
Jay McCarthy
f0add80ef2
Do not read the entire zo at once
...
original commit: 2a934cb053
2010-05-24 13:14:36 -06:00
Jay McCarthy
cc82e80835
Separating bytes usage for next change
...
original commit: f67177f740
2010-05-24 13:14:36 -06:00
Jay McCarthy
2e344d9137
Making zo-marshal more like C and not with large byte strings
...
original commit: 40e1ba95fc
2010-05-24 13:14:35 -06:00
Jay McCarthy
3e79a47bfd
Reformating
...
original commit: 325ac1ae88
2010-05-24 13:14:35 -06:00
Jay McCarthy
4c1a8c8321
Reformating
...
original commit: 63f546a080
2010-05-24 13:14:35 -06:00
Jay McCarthy
46f7907aca
Streaming final output from zo-marshal
...
original commit: b892c276ff
2010-05-24 13:14:35 -06:00
Eli Barzilay
fa984eb710
A lot of "MzScheme" -> "Racket"s.
...
original commit: 2d9601089d
2010-05-16 18:26:26 -04:00
Matthew Flatt
c9e6b6cd0a
have 'raco make' require an argument so that it doesn't silently do nothing when no files are supplied
...
original commit: 68fee973de
2010-05-10 06:27:57 -06:00
Matthew Flatt
fc1a05de68
fix decompiler
...
original commit: 6cfc0b481d
2010-05-08 07:37:07 -06:00
Matthew Flatt
28316d5205
change 'raco c-ext' to 'raco ctool'
...
original commit: 81ba669237
2010-04-30 21:55:14 -06:00
Matthew Flatt
0fcf163a4d
rename all files .ss -> .rkt
...
original commit: 28b4043077
2010-04-27 16:50:15 -06:00