Commit Graph

22006 Commits

Author SHA1 Message Date
Matthew Flatt
d6774d5d54 racket/sandbox: add sandbox-propagate-exceptions 2012-05-25 18:37:29 -06:00
Vincent St-Amour
263016f6f3 Fix types in the images collection to work with TR's handling of NaN. 2012-05-25 17:15:22 -04:00
Vincent St-Amour
142158c0cb Add random testing script for float types. 2012-05-25 17:15:22 -04:00
Vincent St-Amour
186b463217 Fix NaN and inf handling in flonum specific op types. 2012-05-25 17:15:22 -04:00
Vincent St-Amour
ebcc6d211a Fix handling of NaN and infinities.
Most of these were found through random testing.
2012-05-25 17:15:22 -04:00
Vincent St-Amour
b6a7a0c505 Add reminder that unsafe-flexpt is currently the same as flexpt. 2012-05-25 17:15:22 -04:00
Matthew Flatt
9e7548de61 new error message convention
Add `raise-argument-error', `raise-result-error', `raise-arguments-error',
and `raise-range-error'.

The old convention was designed for reporting on a single (sometimes very
long line). The new convention is

 <name>: <short message>
   <field>: <detail>
   ...

If <detail> is long or itself spans multiple lines, then it may
also use the form

   <field>:
    <detail>

where each line of <detail> is indented by 3 spaces.

Backtrace information is shown as a multi-line "context" field.
2012-05-25 15:08:05 -06:00
Matthew Flatt
9b7ef7bf69 scribble/eval: fix error line wrapping
The `wrap-line' function from `scribble/text/wrap' wants a
string that's a single line, so break the initial string
based on explicit lines, first.
2012-05-25 12:47:39 -06:00
Matthew Flatt
e334632ffc slideshow/pict: fix clipping problem with `standard-fish' 2012-05-25 12:47:39 -06:00
Robby Findler
7156b0391b fix the contract context messages for the case of ->*'s #:rest arguments 2012-05-25 09:14:09 -05:00
Neil Toronto
eeb3da0c23 Changed macros into functions + begin-encourage-inline; drops a few seconds from `images' compile, no measured performance penalty 2012-05-25 14:16:19 +09:00
Neil Toronto
50ad8dac1f When plot-new-window?' is #t, plot' and `plot3d' now create a frame in a new eventspace. This allows plot frames to be displayed programmatically. (Without this change, the frames are unresponsive until the REPL regains control.) 2012-05-25 13:11:46 +09:00
Neil Toronto
ee95182386 Made (require plot) more obvious in the plot introduction (suggested by Jens Axel Søgaard)
Mentioned (plot-new-window? #t) early in the introduction

Increased drdr:timeout for plot.scrbl
2012-05-25 11:33:50 +09:00
Neil Toronto
365ee2c70d 1d, 2d and 3d function renderers no longer sample outside the function's bounds
This makes it more efficient to plot piecewise functions by drawing each piece with one renderer, and possible to plot functions with discontinuities by using a renderer to draw each continuous piece.
2012-05-25 10:40:05 +09:00
Vincent St-Amour
cee88f05dd Docs for gen:custom-write. 2012-05-24 16:51:14 -04:00
Vincent St-Amour
13b82e9a59 Reorder docs. 2012-05-24 16:51:14 -04:00
Asumu Takikawa
a22633e348 Rename generics => generic. 2012-05-24 16:51:14 -04:00
Vincent St-Amour
11dc825126 Forge gen:equal+hash and gen:custom-write to provide them from racket/base. 2012-05-24 16:51:13 -04:00
Vincent St-Amour
c21813cebf Add gen:custom-write.
No docs yet.
2012-05-24 16:51:13 -04:00
Vincent St-Amour
3210cd1d12 Remove vestigial set of parens and fix docs for new syntax. 2012-05-24 16:51:12 -04:00
Vincent St-Amour
94bd484a66 Resolve collision between class generics and struct generics. 2012-05-24 16:51:12 -04:00
Vincent St-Amour
02055aa1b3 Add remark about auxiliary definitions in method blocks. 2012-05-24 16:51:12 -04:00
Vincent St-Amour
dd05d6e6bc Make original generics tests quiet. 2012-05-24 16:51:11 -04:00
Vincent St-Amour
f42ae56893 Trailing whitespace. 2012-05-24 16:51:11 -04:00
Vincent St-Amour
390cd02b52 Have a generic interface for equal+hash.
Currently provided by racket/struct, for lack of a better place.
2012-05-24 16:51:11 -04:00
Vincent St-Amour
cc7ae795ea Remove the coercion function code.
Didn't turn out to be useful.
2012-05-24 16:51:10 -04:00
Asumu Takikawa
44783b9f8e Add tests from unstable/generics. 2012-05-24 16:51:10 -04:00
Asumu Takikawa
8ac82eaf58 Use simplified interface for define-generics
Also removed `generics`
2012-05-24 16:51:09 -04:00
Vincent St-Amour
f11861f60a Have method definitions be its own keyword in the struct form.
Struct properties are hidden from users.
2012-05-24 16:51:08 -04:00
Vincent St-Amour
3bfaa2b00b New naming convention for generics names. 2012-05-24 16:51:07 -04:00
Asumu Takikawa
f866e34b26 Expand documentation on sequence/stream extension 2012-05-24 16:51:06 -04:00
Vincent St-Amour
08cd358300 Add iterators as tests for generics.
Equivalent to streams, so not useful to provide.
2012-05-24 16:50:46 -04:00
Asumu Takikawa
ec2563fdd3 Add comment about coerce-method-table 2012-05-24 16:50:45 -04:00
Vincent St-Amour
1a42772c02 props 2012-05-24 16:50:45 -04:00
Asumu Takikawa
3a93df5566 Use racket/generics for extensions to racket/stream 2012-05-24 16:50:44 -04:00
Vincent St-Amour
0b0473d228 Allow generics to be attached to existing struct properties. 2012-05-24 16:50:44 -04:00
Vincent St-Amour
991cb5f371 Hide #:coerce-method-table from the public generics API. 2012-05-24 16:50:43 -04:00
Vincent St-Amour
8997379f35 Split interface and implementation of the generics library. 2012-05-24 16:50:43 -04:00
Vincent St-Amour
d5de436b9c Add a pointer to generics in the struct property docs. 2012-05-24 16:50:42 -04:00
Vincent St-Amour
448ad27a37 Move generics to racket/generics.
After discussion with Eli.
2012-05-24 16:50:42 -04:00
Vincent St-Amour
1180a95c60 props 2012-05-24 16:31:32 -04:00
Vincent St-Amour
e7e66ce41c Implement coercion for method tables.
For backwards compatiblity, method tables can be generated from old APIs.
2012-05-24 16:31:32 -04:00
Vincent St-Amour
a68242e4eb Implement ordered dicts in terms of generics. 2012-05-24 16:31:32 -04:00
Vincent St-Amour
17bb9073b9 Document new dict extensibility API. 2012-05-24 16:31:32 -04:00
Vincent St-Amour
ff416ca2ac Remove dead code in racket/private/dict. 2012-05-24 16:31:32 -04:00
Vincent St-Amour
1ec2bc0ea4 Add tests for generics. 2012-05-24 16:31:31 -04:00
Vincent St-Amour
c29a65485e Update generic docs to explain the optional defined-table argument. 2012-05-24 16:31:31 -04:00
Vincent St-Amour
36980c262f unstable/generics: define-methods' -> methods'
`define-methods' is a bad name for an expression form.
2012-05-24 16:31:31 -04:00
Asumu Takikawa
e4a3001af6 Reimplement racket/dict using generics. 2012-05-24 16:31:31 -04:00
Asumu Takikawa
e3b7640528 Let provider of generics check if a method exists
This change adds an additional argument to define-generics
that binds a procedure to check if a given method is defined
for an instance of the generic.
2012-05-24 16:25:09 -04:00
Asumu Takikawa
518bf0fd30 Move unstable/generics to generics. 2012-05-24 16:25:09 -04:00
Eli Barzilay
a3ad719b52 Leftover file that wasn't added with the `tests/profile' refactoring. 2012-05-24 11:53:03 -04:00
Eli Barzilay
8fc49d41cf Improved bash completion script.
Warning: I tried a bunch of things and it looks like it works, but I'm
not using bash regularly so there might be some problems in this.
Committing by request of the bashers.

It would still need some work to make it work as (I think) was intended.
For example _find_exe() should be used to find the current executable
when completing, but it's used at the toplevel.
2012-05-24 11:48:35 -04:00
Eli Barzilay
6260b4c239 Streamline more test suits. 2012-05-24 11:27:13 -04:00
Eli Barzilay
482214e053 Skip some "tests/*/main.rkt" in drdr.
These files are invoking tests that are implemented in other files.
2012-05-24 10:52:00 -04:00
Eli Barzilay
f55eba70c0 Just have string-replace' now, with an #:all?' keyword (defaulting to #t). 2012-05-24 10:40:20 -04:00
Eli Barzilay
37a1c0af91 Add string-replace' and string-replace*'.
Committed as a checkpoint, since I convinced myself that a single
function with a keyword is better, given that the rest of the simplified
functions operate on the whole string.
2012-05-24 10:40:20 -04:00
Eli Barzilay
784857e9fa Add `string-split'. 2012-05-24 10:40:20 -04:00
Eli Barzilay
dcf2754a57 Clarify `regexp-split' on an empty input.
The text that says that (regexp-split #rx"whatever" "") returns '("")
rather than '() is

  If `input' contains no matches [...] the result is a list containing
  input’s content [...] as a single element.

This is a little implicit, if you consider such an input as having
nothing left to match over so it's as if there is no input (with a port
this confusion is a little clearer).

Clarify with an example in the docs, and also add tests.
2012-05-24 10:40:20 -04:00
Eli Barzilay
6318df82e5 Drop the now-redundant " " argument from existing uses of `string-join'. 2012-05-24 10:40:20 -04:00
Eli Barzilay
29beae55c1 Redo string-trim' and string-normalize-spaces'.
This is following the mailing list discussion.  In addition get
`string-join' more in-line with these by making its `sep' argument
default to a space.
2012-05-24 10:40:20 -04:00
Asumu Takikawa
abf9223203 TR: Fix type-checking of hash literals. 2012-05-23 15:49:38 -04:00
Asumu Takikawa
94545a7cd7 Fix doc breakage.
`abstract` from racket/class conflicted with `abstract`
in scribble paper modules.
2012-05-22 19:55:44 -04:00
Asumu Takikawa
9400432903 Fix class construction bug introduced by abstracts
Merging changes with interface contracts introduced
a bug due to a missing argument to class-make.
2012-05-22 18:34:45 -04:00
Asumu Takikawa
150548dc78 Better error message for abstract classes. 2012-05-22 16:00:54 -04:00
Asumu Takikawa
f4f6f8c52c For abstracts, the super method just calls void.
Since mixins rely on super calls to possibly abstract
methods, we want to ensure that the super call will not
error when it gets to an abstract method. However,
external method calls should still raise an error for
abstract methods.
2012-05-22 16:00:42 -04:00
Asumu Takikawa
11c589af31 Put dummy method for abstracts in the right place.
Also, the dummy method should be variadic.
2012-05-22 16:00:41 -04:00
Asumu Takikawa
6059c51b56 Don't allow internal names for abstract methods. 2012-05-22 15:59:17 -04:00
Asumu Takikawa
b50a2c7518 Add documentation for abstract clause. 2012-05-22 15:59:16 -04:00
Asumu Takikawa
ef3abb3a72 Add tests for abstract methods. 2012-05-22 15:59:16 -04:00
Asumu Takikawa
06091079b1 Add abstract methods to the class system. 2012-05-22 15:58:26 -04:00
Asumu Takikawa
be9faeac65 Minor fix in Guide section on contracts
Reported by Shambles
2012-05-22 10:50:46 -04:00
Matthew Flatt
9bdb47bba0 racket/draw: fix bad interaction of path drawing and gradient brushes 2012-05-22 06:20:54 -04:00
Matthew Flatt
5962e542f7 slideshow: add `slide->pict' 2012-05-22 06:20:54 -04:00
Stevie Strickland
1eec136c3f Use coerce-contract when building interfaces with contracts. 2012-05-21 16:32:17 -04:00
Sam Tobin-Hochstadt
952af2fa2d Add \bot as alias for \perp in DrRacket (both are supported in LaTeX). 2012-05-21 15:55:07 -04:00
Kevin Tew
83c26eef4b [Distributed Places] a few of Eli's documentation suggestions 2012-05-20 22:50:58 -06:00
Matthew Flatt
562fa3c6b9 add some missing acks 2012-05-20 21:15:06 -06:00
Matthew Flatt
2d7521c78c racket/place/distributed: fix doc problems
Various repairs --- especially to avoid duplicated prose.

Instead of

 @(define explain @t{Long explanation about X...})

 @defproc[(a ....) ....]{ .... @|explain| }
 @defproc[(b ....) ....]{ .... @|explain| }
 @defproc[(c ....) ....]{ .... @|explain| }

write

 @defproc[(a ....) ....]{ .... Long explanation about X ... }
 @defproc[(b ....) ....]{ .... X is like @racket[a].  }
 @defproc[(c ....) ....]{ .... X is like @racket[a].  }

Otherwise, a reader is forced to reverse-engineer the
abstraction underlying `a', `b', and `c'.
2012-05-20 14:11:17 -06:00
Matthew Flatt
1ee2b6a522 slideshow: add current-gap-size' and some #:gap-size' arguments 2012-05-20 13:39:08 -06:00
Matthew Flatt
ed6c08f548 dependency-cycle detection in parallel `raco setup' 2012-05-20 10:57:54 -06:00
Matthew Flatt
a39d16fab4 doc layout repair 2012-05-20 07:39:05 -06:00
Matthew Flatt
ec85dd913d fix Scribble module languages to allow submodules
That is, recognize `module' and `module*' as top-level forms.
2012-05-20 07:39:05 -06:00
Asumu Takikawa
a00cd7ebff Remove drracket/private/module-interface.
With permission from Jon Rafkind.
2012-05-18 16:05:26 -04:00
Mike Sperber
f34258e253 Bump timeout for test-engine-test.rkt to 8 minutes.
DrDr keep going over.
2012-05-18 19:59:43 +02:00
Robby Findler
9d000cdd1a added thermometer 2012-05-18 10:48:24 -05:00
Robby Findler
3aa300c2d9 update the mac os x bitmaps for the redex bitmap test suite
(just like the recent commit that updates the unix versions)
2012-05-18 10:43:52 -05:00
Robby Findler
fc3f4e675f added a ``dissection'' of a contract error message to the Guide
closes PR 12738
2012-05-18 09:13:58 -05:00
Robby Findler
67c48d6d78 Commit b3002cfab0 broke
the redex bitmap test cases (in a good way!). Hopefully
this fixes them and makes DrDr happy again
2012-05-18 09:01:38 -05:00
Asumu Takikawa
6cead90c1f Fix bug in method concretization for interface ctcs
There was a bug (unrelated to the last) caused by a
bad mutation of a method table when creating copies of
classes for interface contracts.
2012-05-18 00:17:54 -04:00
Asumu Takikawa
9d5aa5eec5 Fix a bug with class/c & interface ctc interaction
Method concretization did not occur properly when particular
class contracts were applied along with interface contracts.
2012-05-17 22:36:48 -04:00
Matthew Flatt
d430656a03 slideshow/pict: for `text' in caps mode, kern captials with following 2012-05-17 16:21:27 -06:00
Matthew Flatt
b7d5aed8d7 add "alias" and "converted-arguments-variant" properties
The properties appear in the inlining expansion of an application
of a keyword-accepting function, and they're mainly intended for
use by Typed Racket.

The property keys are hidden, so that the property value can be
trusted as originating from `racket/base'. The accessor functions are
`syntax-procedure-alias-property' and
`syntax-procedure-converted-arguments-property' from
`racket/keyword-transform'.
2012-05-17 10:58:22 -06:00
Jay McCarthy
aa3b849382 Each file gets its own tmp dir 2012-05-17 10:29:55 -06:00
Jay McCarthy
e12e559878 Fix breakage from 3fceae2715 2012-05-17 10:29:55 -06:00
Jay McCarthy
b752d2e09a Only repair the big archives 2012-05-17 10:29:55 -06:00
Jay McCarthy
7148cdf7f0 New archives, smaller 2012-05-17 10:29:55 -06:00
Jay McCarthy
14edb40d94 Start improving file system usage 2012-05-17 10:29:55 -06:00
Matthew Flatt
9093acbfb8 fix non-portable test 2012-05-17 08:40:34 -06:00
Matthew Flatt
3a46b5dd08 win64: glib DLL depends on libintl
This dependency was previously accidentally satisfied due to
the load order of modules (which recently changed).
2012-05-17 08:37:05 -06:00
Matthew Flatt
0695c63cb1 hack `directory-list' to avoid confusing Typed Racket
(hopefully temporary)
2012-05-16 18:29:16 -06:00
Matthew Flatt
662ede2bd2 Revert "work around an internal module-instantation bug"
This reverts commit bd75b17a23.

It would be fine to leave the commit as-is, but I'm reverting to
make clear (and as a backup test) that the internal bug is fixed.
2012-05-16 10:41:31 -06:00
Matthew Flatt
ca33321aa7 fix phase-shifted compile-time use of `variable-reference->namespace' 2012-05-16 10:41:09 -06:00
Stevie Strickland
3dcc8ec92f "broke it's contract" -> "broke its contract" 2012-05-16 11:44:09 -04:00
Matthew Flatt
bd75b17a23 work around an internal module-instantation bug
Tracking down the bug is taking a while, so I'm pushing a workaround
for now.
2012-05-16 09:43:23 -06:00
Matthew Flatt
3fbbf7cf94 add note about find-executable-path' to subprocess', etc. 2012-05-16 09:43:23 -06:00
Matthew Flatt
65313a82a7 add a #:build?' argument to directory-list' 2012-05-16 09:43:23 -06:00
Matthew Flatt
3a9f8eea4f racket/gui cocoa: fix internal ObjC class names
"My" -> "Racket". The "My" prefix was from initial experiments,
of course, and I just never got around to changing it before.
I think these names go into a global namespace, though, at the
ObjC level, so they need to have a distinct and Racket-specific
prefix.
2012-05-16 09:43:23 -06:00
Stevie Strickland
3d8c1e200a Fix unit contract tests to cope with contract error message changes. 2012-05-16 11:37:41 -04:00
Matthew Flatt
b0409dd232 racket/gui cocoa: fix floating-window event handling
Closes PR 12754
2012-05-16 08:00:50 -06:00
Matthew Flatt
d5b17210e3 racket/gui cocoa: fix 'no-sheet style for `dialog%' 2012-05-16 07:34:44 -06:00
Matthew Flatt
985eecbed7 racket/gui cocoa: fix initial eventspace hook 2012-05-16 07:21:55 -06:00
Matthew Flatt
9270936a28 instantiate require'd modules in the order that they are require'd
This order is now specified, whereas the order was previously unspecified,
and the previous reverse order was an artifact of the implementation.
2012-05-16 07:12:27 -06:00
Matthew Flatt
68029b4ade raco decompile: show `require's 2012-05-16 07:12:26 -06:00
Robby Findler
3fceae2715 adjusted the contract error messages so that the words expected/promised
are switched in and out based on the sense of the blame (similar to a recent
change that made given/produced swap in and out)
2012-05-15 22:08:42 -05:00
Robby Findler
dfa0305bb3 fix interaction between the framework's first-line-mixin and
line-numbers mixin

Specifically, when both are turned on, the #lang line now shows
the line number and shifts the "#lang ..." over to the same spot
where it is drawn when the first line is natually visible

Also, rackety
2012-05-15 22:08:42 -05:00
Matthew Flatt
e8d7b8696e doc fix
Closes PR 12772
2012-05-15 20:13:12 -06:00
Matthew Flatt
b5ce4f281d fix example
Closes PR 12723
2012-05-15 20:11:42 -06:00
Matthew Flatt
0c95475f4f fixes for `scribble/srcdoc'
Use the new `relative-in' form to make imports
resolve correctly when they are shifted among modules.
2012-05-15 20:03:41 -06:00
Matthew Flatt
e35337dcfd add `relative-in' 2012-05-15 20:03:41 -06:00
Neil Toronto
0c6719319f Fixed ellipses in scaled icons after fix to draw-ellipse in commit 1432912357 (mflatt); had been relying on earlier buggy behavior 2012-05-15 11:19:05 -06:00
Matthew Flatt
ca2659698e fix binding-to-symbol module path translation for `submod' 2012-05-14 21:57:10 -06:00
Matthew Flatt
1067aa59e3 fix docs for `syntax-local-module-exports' 2012-05-14 21:57:10 -06:00
Matthew Flatt
a4bd18ff01 fix `syntax-local-module-exports' to work with submodules 2012-05-14 21:57:10 -06:00
Matthew Flatt
0653d1c966 add `syntax-local-submodules' 2012-05-14 21:57:09 -06:00
Matthew Flatt
cee18bd887 fix expansion state on `provide' transformer exception 2012-05-14 21:57:09 -06:00
Matthew Flatt
1bf1564f90 add `variable-reference->module-path-index' 2012-05-14 21:57:09 -06:00
Matthew Flatt
b374d0d015 ffi: fix big-endian s->c conversion of bytes and shorts 2012-05-14 21:57:09 -06:00
Robby Findler
005d3b7218 add context information to hash/c (also, rackety) 2012-05-14 21:43:46 -05:00
Robby Findler
9e7eb963d7 define => define/private (in a class) 2012-05-14 21:43:46 -05:00
Kevin Tew
fbbf8579e0 [Distributed Places] Docs clean up part 2 2012-05-14 14:58:40 -06:00
Matthew Flatt
29a401b692 racket/sandbox: treat linked collections like others 2012-05-14 09:35:06 -06:00
Matthew Flatt
ea8a6a1076 fix for-syntax `set!' of unbound identifier to be a syntax error 2012-05-14 09:14:01 -06:00
Robby Findler
e4887f576d add some code to help avoid drracket dying when the sandbox does strange things 2012-05-14 07:53:52 -05:00
Robby Findler
d2d82d325b up the future tests timeout 2012-05-13 20:20:06 -05:00
Matthew Flatt
d93f4214a4 fix `compiler/zo-parse', etc. for phase-shift addition 2012-05-13 09:00:28 -06:00
Robby Findler
dfad46cd7a added blame context information to vector/c and vectorof contracts 2012-05-13 08:38:57 -05:00
Matthew Flatt
f5e3182345 fix dependency of DrRacket tool module on docs 2012-05-13 07:13:18 -06:00
Matthew Flatt
7519b851d3 comment out test that creates a bad dependency
The right long-term solution may be a `strip' operation that
removes `test' submodules for a distribution.
2012-05-13 06:57:44 -06:00
Matthew Flatt
92db2b4fb3 zo-parse update for phase-shift syntax object marshaling 2012-05-13 06:57:44 -06:00
Matthew Flatt
84d1c6dc06 remove sfi links from the Reference
In consultation with Ryan. We'd prefer to have versions of all
useful things in a `racket/...' library that is consistent as
possible with Racket forms and conventions.
2012-05-13 06:57:44 -06:00
Matthew Flatt
906180ebe8 doc edits 2012-05-13 06:57:44 -06:00
Matthew Flatt
1d1f4dfc3c fix docs on `prop:{require,provide,provide-pre}-transformer' 2012-05-13 06:57:44 -06:00
Matthew Flatt
45659b0cc1 fix doc example
Closes PR 12768
2012-05-13 06:57:44 -06:00
Robby Findler
0278b9e0af fix bug in example code noted by Ray Racine 2012-05-12 22:10:10 -05:00
Robby Findler
52fa588f7a deprecate define-contract-struct (also fix a broken require in the contract docs) 2012-05-12 22:10:04 -05:00
Robby Findler
2eb3264b44 added a test to make sure struct/dc signals an error when getting an impersonator
contract on an immutable field that has no dependencies
2012-05-12 22:09:09 -05:00
Matthew Flatt
bfbccb918d fix reference to non-existant private contract module 2012-05-12 01:37:51 -06:00
Matthew Flatt
964020f288 implement scribble/srcdoc' via submodules instead of expand'
Also add a `for-doc' require form, make `proc-doc' et al. provide
forms, make `provide/doc' an alias for `provide'.
2012-05-12 01:37:50 -06:00
Matthew Flatt
d836cba7c9 refine lexical scope for syntax objects from different modules
For example, if definitions have two unmarked `x's that originate
from different modules, make them correspond to different bindings.

This improvement will be used by `scribble/srcdoc', which will
rely on module context to connect `for-doc' requires to documentation
code that appears in the same module --- which is needed, for example,
if a macro expands to documentation code and the macro is used in
a different module.
2012-05-12 00:59:14 -06:00
Matthew Flatt
2f9a0f4b94 fix bad refactoring 2012-05-12 00:55:12 -06:00
Matthew Flatt
9412ea0707 add `syntax/quote' library 2012-05-12 00:55:12 -06:00
Matthew Flatt
67c57efa1d fix an error message 2012-05-12 00:55:12 -06:00
Matthew Flatt
8fc3d25be4 cm: collect dependencies for submodules 2012-05-12 00:55:12 -06:00
Matthew Flatt
1432912357 racket/draw: fix outline adjustment in `draw-rectangle' and others 2012-05-12 00:55:12 -06:00
Matthew Flatt
dbd940611e allow #f as shift for `syntax-shift-phase-level' 2012-05-12 00:55:12 -06:00
Robby Findler
698c895413 adjust struct/c so that it just expands into struct/dc 2012-05-11 22:07:52 -05:00
Jay McCarthy
93d8e89b66 Better error messages, plus fix for the tag syntax 2012-05-11 20:13:29 -06:00
Jay McCarthy
409b717ec2 Clarifying the use of the name of the argument in s/s/d 2012-05-11 20:13:29 -06:00
Robby Findler
329d3bb3c8 add some example code showing how to bind a menu to a key via the keymaps 2012-05-11 07:13:55 -05:00
Eli Barzilay
7f940de6f9 Fix `array-set!' for arrays of more than 2 dimensions.
Closes PR 12765.
2012-05-11 06:18:21 -04:00
Eli Barzilay
621fd87b51 Warn when a given collection has nothing to compile, abort with an error all are empty. 2012-05-11 06:18:21 -04:00
Eli Barzilay
b20575b1c9 Switch to `racket', and a bunch of code cleanups.
There should not be any functionality change in this commit, but please
keep an eye for possible problems.
2012-05-11 06:18:20 -04:00
Eli Barzilay
48b0b50647 Minor improvement, and recognize a ".plt" suffix in any case. 2012-05-11 06:18:20 -04:00
Robby Findler
9401a537e0 extend the opters to track if a contract has any negative blame
(this is similar to being flat, but struct contract (lazy ones) can
be non-flat and still have no negative blame).

Use this to optimize struct/dc contracts; specifically when a contract
has no negative blame, then we don't need to add additional wrapping
for indy-ness.

This ended up being fairly tricky to handle the case where there
are several mutually recursive define-opt/c functions. The code
tracks which definitions depend on which ones and does a graph traversal
of the dependencies to find if there is any non-negative blame
possible. Naturally, this uses Racket's macro system to communicate
between the definitions.
2012-05-10 21:59:39 -05:00
Robby Findler
7221d01483 refactored contract opters so they return structs instead
of (8!) multiple values
2012-05-10 21:59:39 -05:00
Kevin Tew
4c59943b0d [Distributed Places] Remove caps and camelcase 2012-05-10 19:58:52 -06:00
Kevin Tew
154a96ab1f [Distributed Places] Docs clean up part 1 2012-05-10 15:36:58 -06:00
Kevin Tew
076e698e8c [Distributed Places] RMPI docs 2012-05-10 15:36:58 -06:00
Kevin Tew
c619f7cbbf [Distributed Places] more docs, removed old functions, RMPI function renames 2012-05-10 15:36:58 -06:00
Kevin Tew
1fab365129 [Distributed Places] fix kmeans hang 2012-05-10 15:36:58 -06:00
Kevin Tew
5be7a7d980 [Distributed Places] simple MPI layer over distribute places 2012-05-10 15:36:58 -06:00
Jay McCarthy
b703148833 Fixing bad re-indent.. I think? 2012-05-10 12:37:27 -06:00
Jay McCarthy
611e8d0d17 Changing from racket to racket/base in xml, html, and web-server 2012-05-10 10:36:29 -06:00
Jay McCarthy
f675514a2b scribble/lp on racket/base vs scheme/base 2012-05-10 10:36:29 -06:00
Jay McCarthy
042defedb6 Branch remove fix 2012-05-10 10:36:29 -06:00
Matthew Flatt
2d027e7ee5 scribble/eval: add eval:result' and eval:results' 2012-05-09 19:11:21 -06:00
Matthias Felleisen
cc8e988346 fixed mistakes in posn documentation; Closes PR 12755 2012-05-09 12:04:44 -04:00
Ryan Culpepper
78a2ea535b added link from Continue to db docs on servlets 2012-05-09 09:17:52 -06:00
Ryan Culpepper
00fd18bc62 db: various fixes and additions
- fix connection-pool for nested tx, fix race condition
 - ensure connected? always nonblocking
 - added and reorganized some doc sections
 - added grouping, contracts to in-query
 - added rows->dict
2012-05-09 09:17:52 -06:00
Ryan Culpepper
aa0d8aaa33 fix bug in db docs intro
closes PR 12743
2012-05-09 09:17:52 -06:00
Ryan Culpepper
902ba68dfb db: add servlet-based test 2012-05-09 09:17:52 -06:00
Eli Barzilay
7738f21a5b Move the srfi references to the section ends. 2012-05-09 04:11:17 -04:00
Danny Yoo
fc708c00d8 Danny's email changed. 2012-05-09 03:55:39 -04:00
Eli Barzilay
f1a7517ab6 Adds note about `system*' output.
(Slightly revised by Eli.)
2012-05-09 03:48:55 -04:00
Michael W
267a009e03 Adds note about system* output. UNTESTED 2012-05-09 02:46:33 -04:00
Eli Barzilay
06728e1dd2 Use absolute URLs in the quick subscription boxes.
Closes PR 12757.

(Also some reformatting.)
2012-05-09 02:42:52 -04:00
Eli Barzilay
f335b47a18 Apparently things work fine with readline 6 too. 2012-05-08 21:18:15 -04:00
Eli Barzilay
d04920c032 (Try to) Fix the section that talks about `apply' and keyword arguments.
Closes PR 12438.
2012-05-08 21:18:15 -04:00
Eli Barzilay
07d5fbe1f6 More time for the combined scribble tests. 2012-05-08 21:18:15 -04:00
Eli Barzilay
99f87cf72b Remove prose infelicity.
(Reported by Shriram a while ago.)
2012-05-08 21:18:15 -04:00
Eli Barzilay
6dfcf68a12 Fix a typo.
Closes PR 12456.
2012-05-08 21:18:15 -04:00
Robby Findler
646403e9f6 ported the contracts in srfi/14 to racket/contract 2012-05-08 16:50:17 -05:00
Ryan Culpepper
745607a51d added unstable/cat 2012-05-08 14:50:28 -06:00
John Clements
0196a6f97a doc clarification for make-argb 2012-05-08 12:02:02 -07:00
Asumu Takikawa
a8994c7261 Revert "Add contract-add-context to contract system."
This reverts commit f3b687c8ed.

After discussion with Robby and Stevie, we concluded that
this procedure isn't necessary for now. If we ever think
of more examples where it's useful we can bring it back.
2012-05-08 12:58:49 -04:00
Vincent St-Amour
e786149434 More precise type for flexpt. 2012-05-08 11:42:21 -04:00
Vincent St-Amour
95c2115799 Fix prims.rkt's type->contract to accept keyword arguments.
Necessary when some prims are used at the top-level.
2012-05-08 11:16:27 -04:00
Matthew Flatt
9a41129c69 racket/flonum: add `flexpt' 2012-05-07 20:41:14 -06:00
Ryan Culpepper
7cafd9daca stop running stress-template in drdr 2012-05-07 15:08:22 -06:00
Ryan Culpepper
3bde72ffb0 syntax/parse: fix dependencies of experimental modules 2012-05-07 14:46:14 -06:00
Ryan Culpepper
eb3dce14cd fix some doc contracts for submodules 2012-05-07 14:46:13 -06:00
Ryan Culpepper
0b8b0c36ef fix check-requires for submodules 2012-05-07 14:46:13 -06:00
Ryan Culpepper
62177bc135 macro-debugger: don't shut down expansion on error (TR raises async errors)
related to PR 12505
2012-05-07 14:46:13 -06:00
Ryan Culpepper
2b34e0a75b macro-debugger: more submod fixes, removed unused code & exports 2012-05-07 14:46:13 -06:00
Ryan Culpepper
6c6fa36c8c add srfi links 2012-05-07 14:46:13 -06:00
Ryan Culpepper
f0c03ad921 macro-debugger: updates for submodules 2012-05-07 13:26:07 -06:00
Robby Findler
dd764ca83d move the 'opt/c unknown contract' logging to the right place 2012-05-07 10:36:44 -05:00
Robby Findler
5996e8f480 finish up struct/dc 2012-05-07 10:36:44 -05:00
Robby Findler
64603d0c27 adjust the opter protocol so that opters can say either: "yes this is
a chaperone contract", "no it definitely isn't" or "evaluate this code
at runtime to find out"; previously only the first two options
were available to opters

(this commit also includes other tweaks here and there so won't stand alone)
2012-05-07 10:36:44 -05:00
Robby Findler
04017d83d5 start adding struct/dc contracts 2012-05-07 10:36:39 -05:00
Eli Barzilay
a4381dd1f6 Do the xref test only if "doc/reference/out.sxref" exists/
(Since the nightly build includes the documentation only on the main
machine.)
2012-05-07 09:12:00 -04:00
Eli Barzilay
b315000311 All of `overridden-collects/teachpack' should not be tested. 2012-05-07 09:12:00 -04:00
Eli Barzilay
55814fe7fc Fix ,install!
(Questions where very broken when readline was active.)
2012-05-06 13:13:49 -04:00
Eli Barzilay
49c8a5fb28 Racketizations. 2012-05-06 13:13:16 -04:00
Eli Barzilay
17090fca4f A bunch of fprintf' -> eprintf' conversions (and a few related things). 2012-05-06 12:06:00 -04:00
Eli Barzilay
084f1dcea7 Use the new `wrap-line' in the scribble text renderer.
Looks like it's not making any changes in the current tests (which use
the text renderer), but with words that are longer than the width the
old version would stop wrapping afetr these words.  Added a test file
that fails with that and succeeds with the new one.  If anyone cares
about this, it's easy to make hyphenate words that are too long for a
line.

(Also fixed some redundant frustration in the bib test...)
2012-05-06 08:17:36 -04:00
Eli Barzilay
34ec391194 Some racketization (and outdent). 2012-05-06 06:29:18 -04:00
Eli Barzilay
efda1706d8 Use the new wrap-line' in scribble/eval'.
This might have output that is a little better in cases where the
wrapped string is longer than `maxlen', for example, with an input of:

  "    x xxxxxxxxxxxxxxxx..."

and wrapping at 10 characters, the output was

  "    x\nxxxxxxxxxx\nxxxxxx..."

and now it's

  "    x xxxx\nxxxxxxxxxx\nxx..."
2012-05-06 06:15:04 -04:00
Eli Barzilay
36394500e5 Streamline all scribble tests. 2012-05-06 05:53:19 -04:00
Eli Barzilay
d28b0c0806 Use `scribble/text/wrap' in xrepl.
(Also organize the tests a little.)
2012-05-06 05:38:04 -04:00
Eli Barzilay
3cb4552e32 Minor fixes to `tests/lazy'.
* Make each test file runnable using `module+'.

* Make the space tests not print anything (unless they fail, of course).

* Make the `first-class?' case even "more first class" by defining their
  and/or as functions.  (Doesn't make a real difference for this test,
  but nice to test more of the language.)
2012-05-06 05:38:04 -04:00
Eli Barzilay
4adc10b071 Fix test: use a new directory for the submodule tests 2012-05-06 05:38:04 -04:00
Eli Barzilay
89b9ad0dde New wrap-line' function in a new scribble/text/wrap' module.
This should probably become documented if it's stable enough.  For now
it's intended for building wrapping functions, so it's only documented
in comments the file.
2012-05-06 05:38:04 -04:00
Eli Barzilay
c161540751 Fix props for "mkheart.rkt"'s new place. 2012-05-06 05:38:03 -04:00
Eli Barzilay
8605c91ccf Minor typo
(Reported by Shriram a while ago.)
2012-05-06 05:38:03 -04:00
Matthew Flatt
230463fa3d racket/gui: fix problem with recent edit-sequence change
Restores undo support in DrRacket, for example.
2012-05-05 22:09:13 -06:00
Matthew Flatt
c5d3750d39 try libpng15 before libpng12 2012-05-05 10:32:05 -06:00
Matthew Flatt
b30374824a racket/draw: add #:eventspace' argument to open-output-text-editor'
The argument is `(curent-eventspace)' by default, which makes ports
work better with threads.

Closes PR 12749
2012-05-05 10:32:05 -06:00
Matthew Flatt
48f7ddafe4 racket/gui: fix some concurrency problems `text%'
Changed `open-output-text-editor' to put its additions into
an edit sequence to better work with threads.

Fixed problems in editor-canvas refresh and resize events, where
the editor's refresh synchronization wasn't used properly.

Fixed race conditions in the the protocol that is used to separate
refreshes and edit sequences.

Related to PR 12749
2012-05-05 10:32:05 -06:00
Eli Barzilay
1fae7942d5 Add a branch indicator to the stamp, if we can find one and it's not "master".
Added by Sam's request.
2012-05-04 20:18:38 -04:00
MartyNeal
6e1ee717f7 Fixed `stream-add-between'.
Don't put an extra seperator element at the end of the stream.  Brings
it in-line with the list version (`add-between') and sequence
version (`sequence-add-between').  Includes a test.
2012-05-04 20:18:38 -04:00
Asumu Takikawa
36dd749268 racket/class: remove commented code 2012-05-04 17:41:13 -04:00
Asumu Takikawa
61784877a0 Fix blame for behavioral subtyping.
- negative parties of interface contracts should be
    the interface itself
2012-05-04 17:24:55 -04:00
Stevie Strickland
14da5dacc5 Small fixes.
* Use #f instead of (lambda () #f) in hash-ref call
 * We want the positive blame, not negative, when interface-contracted
   methods are passing through a class/c application.
 * Use (interface <i>) and (class <c>) for interface and class blame.
2012-05-04 17:24:55 -04:00
Asumu Takikawa
ba8e879703 Use a weak hashtable to cache concrete instances 2012-05-04 17:24:55 -04:00
Asumu Takikawa
10967a22ce Make class/c and interface contracts cooperate
- also fixed a problem with subclassing, though I'm not
   sure it's quite correct yet
2012-05-04 17:24:55 -04:00
Asumu Takikawa
670154bd2b First cut of working interface contracts.
- still need to fine-tune code (maybe avoid lists)
  - is the blame story correct?
  - weak hash table for new class copy
  - interaction with class/c
2012-05-04 17:24:55 -04:00
Asumu Takikawa
f4fb628934 Changing new to (eventually) concretize interface contract methods.
* No-op for now, but will later do more work.
 * Fix up Typed Racket to handle the new do-make-object.
2012-05-04 17:24:55 -04:00
Asumu Takikawa
f09867f6a7 Add function to find ctcs/blame for interfaces 2012-05-04 17:24:55 -04:00
Asumu Takikawa
a7e03aee2c Add interface contract meth. names to class struct 2012-05-04 17:24:55 -04:00
Asumu Takikawa
6f4ad1de25 Add contracts to interface syntax & structures 2012-05-04 17:24:55 -04:00
Eli Barzilay
26c13d278e Move the "mkheart.rkt" generator to a new meta directory. 2012-05-04 17:24:08 -04:00
Andreas Rottmann
53cbe874e0 Allow installation into arbitrary directories with "plt-r6rs --install"
Hi!

Here's an updated version of the patch, which also mentions the added
option in the docs; also the specified directory is added to the
collection paths, since compilation will fail otherwise.

From: Andreas Rottmann <a.rottmann@gmx.at>
Subject: Allow installation into arbitrary directories with "plt-r6rs --install"

Added a `--collections' option to plt-r6rs which allows to specify the
directory where libraries are installed into.
2012-05-04 17:24:08 -04:00
Jose Antonio Ortega Ruiz
6f0e79feff Fixes for trivial typos in Reference sec. 1.2.
(Eli: Ancient commit on the mailing list that wasn't merged...  Most
things were already fixed.)

Signed-off-by: Jose Antonio Ortega Ruiz <jao@gnu.org>
2012-05-04 17:24:07 -04:00
Stephen Bloch
8f4178e7eb Eli's suggested patch to enable searching for picturing-programs library
functions (which includes image and universe) using F1 from teaching
languages.
2012-05-04 14:56:28 -04:00
Matthew Flatt
9e657a2026 racket/draw: fix handling of font hinting 2012-05-04 11:19:01 -06:00
Matthew Flatt
0dbd3f1610 redex typesetting: make token splitter more tolerant
Possibily the typesetting enginer should reject an ill-formed
input, instead; I'm not sure what went wrong with the input.
2012-05-04 10:20:24 -06:00
Asumu Takikawa
f3b687c8ed Add contract-add-context to contract system.
This procedure is used to add blame contexts to an
existing contract. This prevents the need to re-create
the contract in order to add blame contexts.
2012-05-04 02:52:46 -04:00
Matthew Flatt
4292c6e037 fix docs for `box-cas!', fix JITted version to check mutability 2012-05-03 21:38:36 -06:00