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