Commit Graph

5181 Commits

Author SHA1 Message Date
Jay McCarthy
73232afd99 Adding customization of command-char to web-server/template
This entails adding it to include/text and read-syntax-inside as well.
2013-05-08 10:52:40 -06:00
Matthew Flatt
b3e2d35be9 fix `raco exe' test 2013-05-08 12:31:34 -04:00
Matthew Flatt
d5de35af3c fix place-channel test 2013-05-08 11:29:50 -04:00
Matthew Flatt
7946c73c42 avoid a constant folding that can use too much memory
Closes PR 13738
2013-05-08 10:24:16 -04:00
Jay McCarthy
f87ad69fd1 Fix cookie test re version 2013-05-07 20:13:43 -06:00
Matthew Flatt
2841e873e1 raco pkg: fix conflict checking for a collection splice
Package updating also seems to have been broken by roughly
the same code (so maybe I ran the test suite incorrectly
before?).

Closes PR 13736
2013-05-07 17:30:42 -04:00
Vincent St-Amour
89f9b860cd Fix type of tanh.
Found using random testing.
2013-05-07 17:06:35 -04:00
Matthew Flatt
7339074741 racket/place: keywords as place messages 2013-05-07 14:48:21 -04:00
Matthew Flatt
b11d37ddb3 fix error message for applying a non-procedure with keywords 2013-05-07 12:00:13 -04:00
Matthew Flatt
169e801803 switch rascket/base' and scheme/base' to submodule language style
The `#%module-begin' of `racket/base' and `scheme/base' now introduces
a suitable `configure-runtime' submodule, instead of using the
`module->language-info' path.

A submodule is a lot easier to work with, as illustrated by the
removal of the `racket/private/lang' and `scheme/private/lang'
languages.

Also, add `#%printing-module-begin', which is the old `#%module-begin'
(i.e., the one that doesn't introduce a `configure-runtime' submodule).
2013-05-07 08:31:16 -04:00
Matthew Flatt
27f1b39294 add `configure-runtime' submodule support
A language can now introduce a `configure-runtime' submodule that
is `dynamic-require'd before the enclosing module.

This new submodule protocol provides a more general and
easier-to-understand way of configuring the run-time environment for
a module's language, as compared to the `module->language-info'
path (through a `get-info' function, via a 'configure-runtime value,
and finally loading the specified module).

The `module->language-info' path remains in place, and it is
checked after a `configure-runtime' submodule is run, since
that order is likely to be the most backward compatible.
2013-05-07 08:31:16 -04:00
Robby Findler
2648542a6c allow #:chaperone specification in struct/dc
related to PR 13734
2013-05-06 18:17:43 -05:00
Jay McCarthy
7afde31fa6 Fixing PR13729 2013-05-06 07:23:08 -06:00
Ryan Culpepper
7fd52472b4 fixed quasisyntax to work with prefab struct templates
Prefab struct templates have problems with unsyntax-splicing,
but so do vectors. See commented tests.
2013-05-05 18:07:10 -04:00
Ryan Culpepper
219e26b28d improve tests 2013-05-05 18:07:10 -04:00
Matthew Flatt
d5ed6cfe77 raco pkg: make conflict checking work with bytecode
Also, have only one package->modules implementation, instead of
two ways to compute a package's modules.
2013-05-05 09:13:37 -06:00
Robby Findler
cf8ec30bee some random tests to try to stress the immutable hash table implementation 2013-05-03 11:58:15 -05:00
Matthew Flatt
717eacf90d fix bytecode validator bug
If a function is bound by a `letrec' (or internal definition)
that cannot be simplified to `let' or lifted to a constant or
top-/module-level function, and if the `letrec' binding is used in
a non-application position, and if the function has in its closure
a typed binding (i.e., boxed, fixnum, flonum, or extflonum),
then the validator was incorrectly rejecting the function's
bytecode --- because the validator didn't distinguish between typed
arguments and typed closure content.

File under "surprised that we didn't hit this one earlier".
2013-05-03 09:13:41 -06:00
Asumu Takikawa
c3b80bee41 Clean up struct: and disallow unsupported options
Related to PR 13562
2013-05-02 18:31:58 -04:00
Jay McCarthy
ccf1119b68 Adding summary mode, quiet program mode and changing tests/eli-tester to cooperate so it adds useful information in summary mode 2013-05-02 14:49:58 -06:00
Matthew Flatt
61ca229a57 add GC-stress mode
Stress mode forces a GC on every N allocation attempts, and it makes
JIT-generated code always take a slow path.

This mode uncovered only a bad test case and some boring start-up
bugs (boring because start-up is deterministic enough that they
never happen), so far.
2013-05-01 20:41:40 -06:00
Matthew Flatt
eb924d75b6 scribble/manual: make `defmodule' more flexible 2013-04-30 09:36:48 -06:00
Matthew Flatt
176ff287a8 fix `read-syntax' on a vector with a size and no given elements
Closes PR 13720
2013-04-30 08:46:47 -06:00
Eric Dobson
de96643fbe Fix contract generation for mutable structures. 2013-04-29 20:45:49 -07:00
Robby Findler
8706ac286e adjust -> opter so that it avoids stacking up range checks
(using continuation marks, just like the un opt/c version of ->)
2013-04-29 19:45:59 -05:00
Eli Barzilay
b8e47541bd Switch from "x" to "*".
As previously discussed with Ryan.
2013-04-28 12:53:08 -04:00
Eli Barzilay
f93a908911 Fix a bug in base conversion.
This is a simple fix, and the bug is bad enough that it might be worth
it to include in the release.
2013-04-28 12:53:08 -04:00
Eli Barzilay
ef0f610ca7 Remove some redundant "www."s. 2013-04-28 12:53:07 -04:00
Matthew Flatt
d8f9820ef3 raco pkg: expose, record, etc., module and dependency information
A package catalog now supplies information about a package's modules
and dependencies, so propagate it when copying a catalog, make the
information accessible via `raco pkg catalog-show', and so on.
2013-04-28 08:34:14 -06:00
Robby Findler
10ac122111 fix a quoting error
related to PR 13716
2013-04-27 20:41:01 -05:00
Eric Dobson
7735aa5799 Make structs initialize to constant instead of covariant. 2013-04-27 11:50:57 -07:00
Matthew Flatt
7ad1ddab64 fix bytecode compiler safefor-space, tigher bytecode validation
The safe-for-space pass could add clearing operations on "typed"
stack positions, which are known to contain a fixnum, flonum, or
extflonum. Non-clearing references, however, were not annotated to
indicate that clearing references were present, since clearing is
not expected on typed positions.

Along the lines of not expecting clearing, the bytecode validator's
encoding of the stack doesn't accomodate both "has a type" and "claims
never to be cleared", so it couldn't detect the bytecode compiler
bug. (Also, this problem didn't show up in the HOSC paper's model of
the validator, because the model pre-dates type tracking.)

Fix the bytecode compiler's space-safety pass so that it never inserts
clearing operations for typed stack positions. Then, the validator can
simply reject any attempt to clear a typed position.

Also, annotate applications generated by lifting as safe-for-space
tail calls.

Merge to v5.3.4
2013-04-26 22:47:42 -06:00
Robby Findler
2e195935cf make opt/c contract follow the blame-add-context protocol 2013-04-26 19:44:13 -05:00
Matthew Flatt
917ec51eee racket/draw: fix in-region?' method of region%'
Merge to v5.3.4
2013-04-26 16:28:29 -06:00
Matthew Flatt
1ef1d256f7 raco pkg: don't consult GitHub if checksum is given
Also, more consistently propagate a given checksum, which can
happen more through the `pkg-install' export from `pkg/lib'
than through `raco pkg'.

Also, report to the user when consulting GitHub or downloading
a checksum.
2013-04-26 16:28:28 -06:00
Vincent St-Amour
056a6044e5 Explicitly flush output after printing random testing seed. 2013-04-26 14:16:55 -04:00
Robby Findler
ae5bde175d fix is-a?/c opter 2013-04-26 10:26:12 -05:00
Robby Findler
4bef2987a9 add 'else' support to 2dcond
closes PR 13714
2013-04-26 10:26:03 -05:00
Matthew Flatt
400e461d75 fix a parameter check 2013-04-26 07:12:21 -06:00
Matthew Flatt
0f47ec4af7 racket/sequence: fix `sequence-ref' for a too-large index 2013-04-25 16:46:23 -06:00
Robby Findler
ec2d57bf80 sequence/c changes
- build the sub projections only once and build them before getting
  the blame objects (instead of after getting the actual values)
- added context information to the blame objects
- added an optional #:min-count argument to insist on a minimum length
  for the stream

related to PR 13709
2013-04-25 17:32:00 -05:00
Vincent St-Amour
e6ff57f3bd Allow read-only hash operations to accept HashTop.
Closes PR13710.
2013-04-25 17:29:10 -04:00
Eric Dobson
b5b13222c8 Make type->contract correctly respect variance.
Track whether we are protecting values from the typed side and/or the
untyped side.

Closes PR 13662.
Closes PR 13663.
Closes PR 13665.
2013-04-25 08:29:37 -07:00
Eric Dobson
dbcb1414da Allow requiring functions with filters in contravariant positions. 2013-04-25 08:29:37 -07:00
Eric Dobson
6898a7c880 Fix subtyping of (ListDots t 'a) <: (Listof t).
Closes PR 13636.
2013-04-24 21:08:18 -07:00
Eric Dobson
863ac05332 Fix expected type when typechecking map 2013-04-24 20:13:39 -07:00
Eric Dobson
67dd956b6a Don't let map introduce type variables.
Closes PR 13581.
2013-04-24 20:13:39 -07:00
Eric Dobson
611b22ff04 Fix up lazy-requires and dynamic-requires in TR. 2013-04-24 18:46:44 -07:00
Eric Dobson
a94c449ff1 Small TR fixes. 2013-04-24 18:46:44 -07:00
Eric Dobson
55aba088de Use information of application site, to reduce possible arities.
Closes PR12905.
2013-04-24 18:46:44 -07:00