Commit Graph

33578 Commits

Author SHA1 Message Date
Matthew Flatt
5ea04493a2 raco setup: fix dependency checking and PLTCOMPILEDROOTS
Closes PR 14537
2014-06-02 15:45:22 +01:00
Matthew Flatt
dc97b85d44 make site: use relative paths in the pkg catalog for a site 2014-06-02 15:30:32 +01:00
Matthew Flatt
2360a9f69a pkg/lib: more fixes to handling of relative package sources in catalogs
Relative paths in a catalog should be treated as relative URLs, not
relative paths.
2014-06-02 15:03:16 +01:00
Matthew Flatt
e27c51698b net/url: add relative-path->relative-url-string 2014-06-02 14:34:22 +01:00
Matthew Flatt
d33c2252e1 rackunit/docs-complete: move to the "racket-index" package
Modules are not supposed to move to different packages, anymore, so
I'm breaking a rule. The problem is that having `rackunit/docs-complete`
in "scribble-lib" made "scribble-lib" depend on "racket-index", and
that's an undesirable dependency. (Installing Scribble shouldn't
force you to have Racket documentation.) I should have noticed
the problem when I moved `setup/xref` to "racket-index", but I missed
it.

As far as I can tell, there's only one package on pkgs.racket-lang.org
that isn't in the main repository and uses `rackunit/docs-index`. The
package doesn't correctly declare its dependencies, anyway.
2014-06-02 12:34:12 +01:00
Matthew Flatt
43d81b06da fix collection-file-path & related for binary package installation
Binary package installation failed in the case of collection
splicing, because module-name resolution via `collection-file-path`
did not check for compiled files along hte search path of
registered collection directories.
2014-06-02 11:57:08 +01:00
Matthew Flatt
e0a82393b7 raco pkg: fix treatmennt of "file://" package sources
A "file://" prefix on a package source needs to be consistently
removed. The new `package-source->path` function does that, so it
should be used to convert a package source to a filesystem path.
2014-06-02 11:57:07 +01:00
Matthew Flatt
ae2b0b93a1 raco pkg catalog-archive: fix handling of source with no checksum 2014-06-02 11:57:07 +01:00
Matthew Flatt
a718aeb441 raco pkg catalog-show: improve error for bad catalog 2014-06-02 11:57:07 +01:00
Robby Findler
e4bf7ef55b fix typo and add test suite for invariant-assertion 2014-06-02 03:43:46 -05:00
Vincent St-Amour
51812cdd9b Add links to speaker web pages. Formatting. 2014-06-01 10:29:05 -07:00
Vincent St-Amour
cd19df8409 Add list of confirmed speakers to RacketCon page. 2014-06-01 10:29:05 -07:00
Eric Dobson
1d64e37c3b Fix TR unit tests.
Make new tests actually run as part of the unit tests.
Make them not broken.
Fix broken package dependencies.
2014-06-01 10:14:37 -07:00
Eric Dobson
e4e0ec483f Add more abbreviations to init-envs.
Make List: matcher require being a Type.
2014-05-31 17:46:25 -07:00
Eric Dobson
314584d05e Fix broken match clause for accessors. 2014-05-31 15:33:55 -07:00
Eric Dobson
b8f618b57d Simplify 8 cases of filter printing to 2. 2014-05-31 14:34:34 -07:00
Eric Dobson
205aeaeca3 Add checks to asym filter patch to match symmetric case. 2014-05-31 14:34:34 -07:00
Eric Dobson
81804760c5 Remove extra default path arg to -filter calls. 2014-05-31 14:34:34 -07:00
Matthias Felleisen
89dea63995 removed _contract_ language from _invariant-..._ as much as possible
added a hint as to why the error message uses the inappropriate contract language
2014-05-31 15:45:57 -04:00
Matthew Flatt
9d94ef725e update bytecode compiler/optimizer overview in source comments
Explain the recently added "letrec_check" pass.
2014-05-31 20:26:16 +01:00
Matthew Flatt
1558e1243a JIT: improve transition from 32-bit to 64-bit jumps
Use a recursive call to try again, instead of trying to reset local
state. The reset-local-state variant is definitely broken in
some caes, though I could not provoke the JIT buffer overflow
that I was hoping to fix with this change.
2014-05-31 20:26:16 +01:00
Eric Dobson
d2fb1acb46 Make small primes faster.
Big improvement is shrinking the bit vector to the right size.
Other improvements include full fixnum arithmetic and less mutation.
2014-05-31 10:38:25 -07:00
Eric Dobson
e55f39dccd Make inference on (list a ..) work better. 2014-05-31 10:20:38 -07:00
Robby Findler
10cc76f22b remove stupid printfs 2014-05-31 01:58:13 -05:00
Robby Findler
eb223265f6 adjust online check syntax to record source locations for regular
runtime errors (not just syntax errors)
2014-05-31 01:54:24 -05:00
Robby Findler
ddb7477494 added invariant-contract
Jay implemented this
2014-05-30 21:03:11 -05:00
Matthew Flatt
2eef2ce409 optimizer: fix inference bug
The optimizer's inference that could incorrectly that that a
conditional produced a flonum (when it actually produced a fixnum or a
fixnum in one branch and flonum in the other).
2014-05-30 18:50:26 +01:00
Matthew Flatt
948a709b47 clarify comment in JIT implementation
Refines commmit c0ec9702e8.
2014-05-30 12:51:53 +01:00
Matthew Flatt
d1be74fc3b compiler letrec_check pass: recognize effect-free primitives
As in "Fixing Letrec". This improvement corrects a performance
regression with the revised expansion of R5RS `letrec`, which
wraps right-hand sides with `values`.

Besides detecting effect-free primitives, we have to fix the
treatment of the right-hand side for a multi-binding `letrec-values`
clause. For now, we conflate all of the bindings in a single
clause.
2014-05-30 12:51:21 +01:00
Matthew Flatt
71591a62a4 JIT: better code for floating-point constants on x86+SSE 2014-05-30 08:18:25 +01:00
Matthew Flatt
9b1a2e7b37 JIT: minor comparison repairs
Fix some comparisions that are written as pointer comparisons
when they're actually integer comparisons. Also, remove an
unnecessarily slow variant of pointer compairson for x86_64.
2014-05-30 07:51:05 +01:00
Matthew Flatt
c0ec9702e8 JIT: fix potential problem in transition to 64-bit jumps
On x86_64, the JIT compiler initially generates code with 32-bit
jumps, but it switches to 64-bit jumps when so much code is allocated
that it gets spaced out enough. That transition could happen during a
recursive call to the JIT compiler or while one place is in the JIT
and other installs a shared code pointer, in which case a bad jump
could be generated. This problem is unlikely to happen, but it looks
possible.
2014-05-30 07:07:28 +01:00
Matthew Flatt
a7d91f0f9c update Infogroep mirror contact 2014-05-29 15:39:08 +01:00
Matthew Flatt
3392ca36f7 pkg/db: make local package database's path relative to installation name
Instead of `(version)`, use `(get-installation-name)` for the path
of the local database used by the GUI package manager.
2014-05-29 13:42:57 +01:00
Matthew Flatt
f6a43b6b5d update RacketCon page to add the group-rate reservation link
Plus various adjustments to the format.
2014-05-29 13:35:18 +01:00
Matthew Flatt
f9d6edd8ec raco pkg catalog-archive: keep module & dependency info
Also fixes another relative-path problem.
2014-05-29 13:19:47 +01:00
Matthew Flatt
cc4d00efa6 raco pkg catalog-show: improve output format
Separate packages with a blank line, and fix formatting of
a module list.
2014-05-29 12:48:24 +01:00
Matthew Flatt
ab4172fbf2 raco pkg catalog-archive: parse sources like catalog-copy 2014-05-29 11:45:42 +01:00
Matthew Flatt
11aca05fb5 pkg/lib: fix pkg-catalog-update-local version selection
Also fixes problems with using a relative target path
with `raco pkg catalog-archive`.
2014-05-29 11:15:56 +01:00
Matthew Flatt
bf504bbaaf setup/parallel-build: repair test
Should have been part of 9e3b984463.
2014-05-29 09:58:29 +01:00
Matthew Flatt
92ffe436d6 racket/unit: repair test
Should have been part of bcafba989f.
2014-05-29 09:56:11 +01:00
Matthew Butterick
c4ebd6058e reduce size of manual-fonts.css 2014-05-29 09:49:08 +01:00
Matthew Flatt
9393592a80 optimizer: another little step toward type inference
Generalize some of the tracking and optimization of predicates
with respect to constructors and bindings.

This generalization exposed an old bug in the optimizer, which is
that information accumulated in the "then" branch of a conditional
was not reliably flushed when continuing analysis after the conditional.
2014-05-29 09:22:29 +01:00
Matthew Flatt
eac2ce0ef6 optimizer: ad hoc optimization of predicates applied to constructions
This is probably more of a job for Typed Racket, but maybe it's
useful to detect some obviously unnecessary allocations of lists, etc.

Closes PR 14532
2014-05-28 20:11:24 +01:00
Matthew Flatt
ca315e6f34 optimizer: more ad hoc car and cdr cases
Closes PR 14533
2014-05-28 19:55:42 +01:00
Matthew Flatt
dad9d001e1 optimizer: enable movement of constants that shouldn't be duplicated
Closes PR 14531
2014-05-28 19:55:41 +01:00
Eric Dobson
d2d9b2cce3 Fuse loops in promote-demote. 2014-05-28 08:48:07 -07:00
Matthew Flatt
2b33b8d966 scriblib/figure: make figure hyperlinks show start of figure
... instead of putting the figure's caption at the top of the
browser window.

I can't decide whether I like the technique here, which is to use
JavaScript to move a figure caption's <a name=...> when the page is
loaded.  On the one hand, fixing up HTML via load-time JavaScript code
seems ugly compared to generating the right HTML in the first place.
On the other hand, it simplifies the generatation of a
backend-independent Scribble document (i.e., don't try to generate
different target locations for HTML and Latex), and HTML-specific
behavior seems properly handled at the HTML/JavaScript level.
2014-05-28 13:14:39 +01:00
Matthew Flatt
81f6f32440 racket/private/class-internal: protect ids private to class implementation 2014-05-28 13:10:29 +01:00
Matthew Flatt
8ad889e2c4 racket/class: shave a little time from send 2014-05-28 13:10:29 +01:00