Commit Graph

30177 Commits

Author SHA1 Message Date
Matthew Flatt
f8a225f741 faster paths for parameter lookup
Calling a parameter function (with no arguments) can be 2-3 times
as fast as before.
2013-08-16 10:24:18 -06:00
Matthew Flatt
8e20aa1cbf fix some missing native-library dependencies 2013-08-16 10:24:17 -06:00
Matthew Flatt
494a428a94 meta/pkg-push: add module and dependency information 2013-08-16 10:24:17 -06:00
Matthew Flatt
6035db418f pkg/lib: add `pkg-directory->module-paths' 2013-08-15 18:18:42 -06:00
Matthew Flatt
21bba8a10b package system: clients extract version-specific info from a catalog result
When a client sends a query to a package catalog, it includes a
version number in the query, and a package catalog can customize its
response to the version. That approach allows evoluation of the way
that versions are mapped to results, but it does not allow a
directory-implemented catalog to offer version-specific information.
Allowing both the server and the client to filter on the version is
even more flexible, and in particular allows a directory-implemented
catalog to include version-specific mappings.
2013-08-15 18:18:42 -06:00
Matthew Flatt
d97950cbe7 pkg catalog protocol: document 'versions field 2013-08-15 18:18:42 -06:00
Matthew Flatt
fb62686d8a raco pkg catalog-{show,copy}: add `--version' flag 2013-08-15 18:18:42 -06:00
Matthew Flatt
6235da4e58 fix docs for `call-with-default-reading-parameterization' 2013-08-15 18:18:42 -06:00
Carl Eastlund
47a568c490 Moved tech terms for "implemented" and "supported" generic methods.
These terms are now documented with define-generics rather than gen:set, and the
terms are "implemented generic method" and "supported generic method" rather
than the over-general "implements" and "supports".
2013-08-15 20:12:44 -04:00
Carl Eastlund
acc4afad6f Added raise-support-error and exn:fail:support to racket/generic.
The exn:fail:support exception is used to signal "unsupported" values for
generic methods, e.g. a vector as argument to dict-remove.  Right interface,
just the wrong kind of instance.  The exception type helps define the notion of
a "supported" method, since a method might have a fallback implementation yet
some values are not considered "supported".
2013-08-15 20:10:31 -04:00
Stephen Chang
766761f6b4 edit docs for gen:set methods
- classify methods into 3 categories:
  - no fallbacks
  - fallbacks that require an "implementation" of another method,
    ie not another fallback
  - fallbacks that require "support" of another method
    --- can be another fallback
2013-08-15 14:44:50 -04:00
Robby Findler
a496cb5a17 Define the pre-installed teachpacks to be those teachpacks
that are in the same directory as the image teachpack (for
htdp and htdp/2e)

closes PR 13967

This isn't the best solution: it would be better if I could
get the directory containing any collection whose name is
teachpack/htdp, but that doesn't seem easy with the current
set of functions

also, bring down below 102 columns
2013-08-15 12:53:40 -05:00
Robby Findler
3980acef04 fix cmd-. shortcut's call to set-position
(so it no longer sets the range to a strange thing (in some cases))
2013-08-15 12:53:39 -05:00
Matthew Flatt
6b16d0b9de cm: change an "internal" error to show OS-level error 2013-08-15 06:21:19 -06:00
Matthew Flatt
ec38dbb99a Makefile: fix source mode for snapshots 2013-08-15 06:21:19 -06:00
Matthew Flatt
d586ea4e99 pkg/path: improve use of cache in `path->pkg'
Cache exploded package paths, which cuts about half
(more than a second) of the start-up time for
`raco setup' on my machine.
2013-08-15 06:21:19 -06:00
Robby Findler
4efdfd6aa9 fix unstable/2d/match so that it doesn't duplicate the bodies of
the cells any more (but still gets the binding right)

The patterns are still being duplicated, so actual code might still
be being duplicated
2013-08-14 21:24:05 -05:00
Eli Barzilay
9e299ea15d Fix props errors
The only error that I see now is due to "collects" which doesn't exist.
I've left it in since it looks like it was added explicitly for some
reason in 5504627.
2013-08-14 21:19:07 -04:00
Robby Findler
593ab2d51f overwrite mode repairs
also make keys.rkt test suite be less likely to corrupt the
preferences file (when run in standalone mode)
2013-08-14 17:46:28 -05:00
Vincent St-Amour
0f4ff899e6 Comment typo. 2013-08-14 17:09:14 -04:00
Eli Barzilay
c069b8e51c Fix output of keys.
They need to be encoded in the same way that strings are
encoded.  (Report and fixed by Phil Roberts.)

Also added a FIXME about leftover occurrences of \U in the output.

Closes PR 13966.
2013-08-14 16:51:31 -04:00
Robby Findler
431a520ed8 add error message with the right form name 2013-08-14 15:46:31 -05:00
Robby Findler
506566ac6a rewrote unify* to use #2dmatch 2013-08-14 15:46:31 -05:00
Robby Findler
5cc2ec0cca adjust 2dmatch so that it copies more code
but this also means that multi-column cells can
refer to variables in the column header (ditto
for multi-row cells)

the code duplication can be fixed with a little
more smarts at the match level, I believe
(see comment in source)
2013-08-14 07:20:52 -05:00
Robby Findler
428ba39862 disable batch-io-xexpr.rkt in drdr 2013-08-14 07:20:51 -05:00
Matthew Flatt
1cd844d0a6 Support non-GNU `make' 2013-08-13 17:26:21 -06:00
Matthew Flatt
35608b36b4 setup/getinfo: change bootstrap mode to try bytecode
Loading "info.rkt" files always from source turns out to be
expensive (adding 1 second or so on my machine to the startup
time for `raco setup'). Change bootstrap mode to try the compiled
form and fall back to source if its doesn't work.
2013-08-13 16:05:36 -06:00
Matthew Flatt
3f8475d6a9 optimizer: certain bitwise-operation patterns always produce fixnums 2013-08-13 16:05:36 -06:00
Matthew Flatt
de322740a6 file/gzip: misc clean-up
Separate state and functions, and convert a key loop to functional
style. As it turns out, this has no significant effect on performance,
but it looks a lot better to me.
2013-08-13 16:05:36 -06:00
Matthew Flatt
1acdcf2fb9 speed up gzip by moving struct definitions
Moving the `define-structs' to the module top level
makes it easier for the JIT and cuts compression time by
about 1/3.
2013-08-13 16:05:36 -06:00
Matthew Flatt
ccb31f4153 fix name handling in `tar-gzip' 2013-08-13 16:05:36 -06:00
Asumu Takikawa
19904cee7a Fix reference typo for datum->syntax
Closes PR 13965
2013-08-13 16:02:46 -04:00
Asumu Takikawa
b299f9c18a Refine define-runtime-path type 2013-08-13 13:51:28 -04:00
Asumu Takikawa
4a0f3f36ad Add Typed Racket support for racket/runtime-path 2013-08-13 12:05:05 -04:00
Asumu Takikawa
b6fb7a2f90 Fix doc typo 2013-08-13 12:05:05 -04:00
Robby Findler
1ce516b401 add forgotten file 2013-08-13 07:21:23 -05:00
Robby Findler
cf7a4320a4 adjust info.rkt files for recent commit 2013-08-13 07:14:29 -05:00
Robby Findler
c62ae3bc97 move more htdp tests to htdp-test package
(also, update the props file this time)
2013-08-13 07:00:28 -05:00
Robby Findler
76cca15df0 fix bad require after 2htdp tests move 2013-08-13 07:00:28 -05:00
Matthew Flatt
b1e33773c6 increase stack safety margin for 64-bit platforms
Make the stack-safety margin twice as big for 64-bit platforms
as 32-bit platforms. That was already done for Windows, but it's
also needed for Mac OS X. Also, double-check that there's a
good amount of space on the stack before calling a foreign
function.
2013-08-12 19:42:36 -06:00
Matthew Flatt
d52ba1b5e7 fix interaction of continuations and stack overflow
There was an off-by-one error in trimming overflow
records in a captured continuation.

I provoked the crash by running the program below on Mac OS X;
resizing the frame caused a crash. It has something to do with the
`try-atomic' implementation, I think. I wasn't able to make a test
case in a half-hour of trying, however, and I'm giving up for now.

(define f (new frame% [label "deep"]))
(define b (new button%
               [parent f]
               [label "0"]))
(send f show #t)
(let loop ([n 0] [m 0])
  (if (= n 10000)
      (begin
        (send b set-label (format "~a" m))
        (for ([i 10]) (yield))
        (loop 0 (add1 m)))
      (cons 1 (loop (add1 n) m))))
2013-08-12 19:42:36 -06:00
Robby Findler
4b8bd22605 move 2htdp tests into the htdp-test pkg 2013-08-12 18:34:10 -05:00
Robby Findler
8851f8f727 adjust 2htdp/image's add-curve and scene+curve so they accurately
compute the bounding box

using the new get-path-bounding-box method
2013-08-12 18:34:09 -05:00
Robby Findler
68b088d925 add support for the --deps command-line argument to the GUI package manager 2013-08-12 18:34:09 -05:00
Matthew Flatt
74e49d8499 enable JIT stack trace on arity errors
On x86_64 Linux and Win64.
2013-08-12 16:27:06 -06:00
Matthew Flatt
04454678eb remove unnecessary stack-unwind test
The test was meant to detect a bad traversal step, but it could unnecessarily
truncate the stack traversal when encountering recursive calls.
2013-08-12 16:22:18 -06:00
Matthew Flatt
8f9e6529da fix (extracted part of) libunwind for x86_64
I had mixed up EBP vs. REG_EBP, etc., in extracting the x86_64 code.
2013-08-12 15:02:24 -06:00
Matthew Flatt
2d8edeffe8 make install: drop -S' flag to strip'
It turns out that no flags are standard, so don't try to use
any. That seems to be fine on the platforms that I tried.
2013-08-12 15:02:24 -06:00
Matthew Flatt
89e99657dd raco pkg {install,update}: add a `--auto' shorthand 2013-08-12 15:02:24 -06:00
Asumu Takikawa
f39910aff6 Fix doc identifier links 2013-08-12 15:00:52 -04:00