Commit Graph

21962 Commits

Author SHA1 Message Date
Neil Toronto
b7fea6be5a Fixed contracts on exact-round, etc. 2012-06-06 16:16:52 -06:00
Asumu Takikawa
f9ec37bbdd Minor fix in mrlib/hierlist docs 2012-06-06 17:20:15 -04:00
Neil Toronto
e644e6afb1 Documented new additions to racket/math 2012-06-06 11:31:49 -06:00
Neil Toronto
b7ff3eb1fb Made sinh return zero inputs unchanged (fixes failing test case) 2012-06-06 10:52:29 -06:00
Matthew Flatt
d80a49f853 turn on DrDr testing for racket/math 2012-06-06 15:16:52 +08:00
Matthew Flatt
255e3cbe2e another *SL error-rewriting fix
Arity errors no include supplied arguments, but strip them
away for *SL messages.
2012-06-06 13:25:14 +08:00
Matthew Flatt
7a9c8e5d40 racket/gui win32: fix East Asian font problem
When the theme-specified default font has a localized name,
using it as a Pango faily name doesn't work, with the result that
text on controls could be truncated. Get a Pango-friendly
name by converting a LOGFONT to a Pango font description and
getting the name from the font description.
2012-06-06 13:25:14 +08:00
Neil Toronto
a713ca8a8b Added nan?, infinite?, degrees->radians, radians->degrees, exact-round, exact-floor, exact-ceiling, exact-truncate to racket/math
Altered TR's random arithmetic testing to generate single-flonums and very small flonums; fails now because of erroneous types

Fixes to sgn, sinh, cosh, and tanh:
 * preserve single-flonum-ness
 * correct zero sign (-0.0) for negative return values that are smaller than epsilon
 * correct behavior with NaN and infinite inputs
2012-06-05 22:40:44 -06:00
Neil Toronto
c089b2fa50 Use `collection-file-path' to load example image 2012-06-05 11:15:25 -06:00
Matthew Flatt
e44c0809e8 rewrite contract error messages for *SL
The rewrite involves parsing contract expressions and constructing
replacement prose.
2012-06-05 17:53:27 +08:00
Matthew Flatt
3742a9da8f adjust font-substitution hack for Mac OS X 2012-06-05 17:53:26 +08:00
Matthew Flatt
42db3a7516 raco setup: print "nothing to do" to stdout instead of sdterr
Printing to stderr shows through in various ways, such as
when installing a Planet package (where stdout is redirected
and stderr isn't).
2012-06-05 17:53:26 +08:00
Neil Toronto
18fa552723 Finalized and documented flomap transforms and effects 2012-06-04 15:32:17 -06:00
Sam Tobin-Hochstadt
2b9912ea9f Repair failing test case (wrong expected value). 2012-06-04 17:02:19 -04:00
Sam Tobin-Hochstadt
42a2ac6026 Document new TR aliased definitions. 2012-06-04 17:02:18 -04:00
Robby Findler
b5258e0e2b In the multi-file search window, only re-load the file
in the bottom window when it really is a different file
(ie, using a same-file predicate that involves opening
the files and comparing the ports)

closes PR 12635 (hopefully -- if not, then we can reopen)
2012-06-03 17:07:12 -05:00
Sam Tobin-Hochstadt
1801efe66a Whitespace fixes. 2012-06-03 10:50:18 -04:00
Sam Tobin-Hochstadt
cbbd889621 = can equate values with different types.
Closes PR 12804.
2012-06-03 10:50:18 -04:00
Matthew Flatt
cc0b887106 adjust *SL error-message rewriting 2012-06-03 11:09:32 +08:00
Sam Tobin-Hochstadt
8459c22c01 Improve type of identity.
Closes PR 12813.
2012-06-02 18:52:18 -04:00
Sam Tobin-Hochstadt
865a2cdcbd Support definitions of keyword functions in Typed Racket.
Caveats:
 - keyword function definitions do not define static
   bindings, thus limiting optimization opportunities
 - can't use `define:`, `lambda:`, etc with keywords
 - error messages sometimes expose the implementation
 - the optimizer skips most of the generated code for
   keyword functions definitions (user-level code is
   optimized)
2012-06-02 18:22:07 -04:00
Jon Rafkind
244f1cccb7 [honu] fix the pattern form and use quote-syntax to prevent syntaxes from being interpolated too early 2012-06-02 15:33:55 -06:00
Jon Rafkind
2b5e5c5b57 [honu] combine string-append and the evaluator 2012-06-02 15:33:54 -06:00
Jon Rafkind
7dde37bee1 [honu] cleanup - move code to submodules 2012-06-02 15:33:54 -06:00
Jon Rafkind
52047a0474 [honu] pass the original name being defined to get the proper lexical context 2012-06-02 15:33:54 -06:00
Jon Rafkind
241f8e67b4 [honu] analyze macro parameters at phase 2. temporarily break patterns 2012-06-02 15:33:54 -06:00
Jon Rafkind
d688621a18 [honu] use sandbox evaluator to test honu code 2012-06-02 15:33:54 -06:00
Matthew Flatt
c5f821b641 clarifications and additions to style guide 2012-06-03 04:50:06 +08:00
Matthew Flatt
900b66332c adjust `racket/generic' documentation style 2012-06-03 04:50:06 +08:00
Robby Findler
232188e736 adjust the check for multiple-file debugging so that it happens
earlier and thus actually catches multiple files.

Also, Rackety and change a let/cc into a let/ec.
2012-06-02 13:44:27 -05:00
Robby Findler
752f240c6a Revert "Test results from DrDr"
This reverts commit fc8cb6e37d.

Jay changed the set of installed font packages on DrDr to match the
ones on my linux VM which brought the test results back in sync again,
so we don't need these revised bitmaps anymore.

Thanks, Jay!
2012-06-02 10:12:11 -05:00
Robby Findler
058504afbd adjust datalog so that syntax objects are not used as source location
information representation.

This should make datalog work better with compiled files and it
should also avoid an O(n^2) problem in the way it expands
2012-06-02 08:04:45 -05:00
Matthew Flatt
85a2267e6c ffi/unsafe: new error message convention at primitives
Also, fix FFI procedures to preserve names: change `ptr-ref' with
`_fpointer' on an `ffi-obj' value to return the `ffi-obj'
value, so that the name in the `ffi-obj' value can be used
by `_cprocedure'.

Closes PR 12645
2012-06-01 19:03:43 -07:00
Sam Tobin-Hochstadt
c8380b94e5 Remove testing code, and failed experiment. 2012-06-01 20:08:37 -04:00
Jay McCarthy
3348ea1ae2 Fixing racklog tests broken by bf95ee105 2012-06-01 17:33:13 -06:00
Jay McCarthy
7d506713dd Fixing datalog tests broken by bf95ee105 2012-06-01 17:33:13 -06:00
Jay McCarthy
fc8cb6e37d Test results from DrDr 2012-06-01 17:33:13 -06:00
Sam Tobin-Hochstadt
a377c42357 Use the new syntax properties for checking keyword functions.
Previously, some hacks were used to obtain the internal
identifiers that implemented keyword functions directly, and
give them types at startup.  Now, the primary "function"
(eg, `sort`) is given a type, and when used, the residual
syntax properties are used to find `sort` from the real
functions, and then the type of the real function is computed
from the type of `sort`.

Some creativity was required in the types of functions which
take optional arguments that when present, alter the return type,
such as `regexp-match*` and `file->list`.
2012-06-01 18:37:02 -04:00
Sam Tobin-Hochstadt
725854f66c Flag booleans *follow* the arguments for optional keywords. 2012-06-01 14:50:39 -04:00
Eric Dobson
262ecc3da9 Redefine Boolean as (U #t #f).
Closes PR 12815.
2012-06-01 10:26:10 -04:00
Robby Findler
64e4a43c9c fix easter egg test suite for the new error messages 2012-06-01 07:16:14 -05:00
Robby Findler
bf95ee1052 Adjust datalog to cooperate with check syntax a little bit more.
Specifically:
 - make predicate symbols and variables be original (and,
   in the former case, have srclocs)
 - remove the originality in the quoted syntax constants
   that the expansion introduces

I think there is probably something better that should be done
with those introduced syntax constants, possibly relacing
them with #f, or possibly replacing them with source location
lists, but I'm not sure how they are used, so I've just left
them in there.

(Also, very minor Rackety in check syntax)
2012-06-01 04:55:04 -05:00
Robby Findler
7118547c58 adjusted the module-language, pretty-big and r5rs parts of
the drracket language test for the new error messages
2012-06-01 02:36:54 -05:00
Robby Findler
d17f93db30 add PLTJUSTSAVEFAILURES support; makes it easier to build a good
set of bitmaps on others' machines (no clicking required)
2012-05-31 23:27:02 -05:00
Eric Dobson
c2d9f7ed9a Attach struct info to constructor for polymorphic TR structs.
Closes PR 12806
2012-05-31 13:09:26 -04:00
Robby Findler
b7b566aefc adjust redex error message tests to match singular/plural fixes in
the error raising code, except in one place where I think the
error raising code was correct to have the plural form, so I changed
it back instead of changing the Redex test suite to match
2012-05-31 10:56:14 -05:00
Robby Findler
f721c0427d adjust the timeouts to two drracket tests and add a little syncronization help in a third 2012-05-31 10:56:13 -05:00
Matthew Flatt
f10a258dcb ffi/unsafe: fix arithmetic overflow and representation
Thanks to Tobias Hammer for the report and initial repairs.
2012-05-31 09:21:25 -06:00
Matthew Flatt
a7206b1a9f further correction to tests/gracket/blits prop
The test isn't automatic, so don't run it in DrDr.
2012-05-31 09:21:24 -06:00
Eric Dobson
735b84b083 Add support for multiple provides of the same identifier in TR.
Closes PR 12807.
2012-05-31 10:02:03 -04:00
Matthew Flatt
16f0b0c3f0 racket/gui: fix canvas%' implementation on-paint'
Broken in the conversion from `class100'.
2012-05-31 05:56:35 -06:00
Robby Findler
77811e0e95 Adjust how the drracket repl iterates over expressions to make it more
like textual-read-eval-print-loop

There is still a difference, however, because drracket's REPL has a
notion of multiple expressions that are submitted simultaneously that
textual-read-eval-print-loop doesn't. For example, if you type this at
the prompt:

  (car) (+ 1 2)

then textual-read-eval-print-loop will print out the error and then 3,
but drracket will print only the error (ditto if (car) were replaced
by a continuation abort).

This difference is, IMO, a good thing, since it lets you use a single
interaction to do multiple things, but stops as soon as there is an
error. (It is also how drracket has behaved for a long time.)

closes PR 12790
2012-05-30 22:31:55 -05:00
Robby Findler
daa048719a fixed a bug in the ordering of how printing parameters are set up
There was an exception raised and then handled internally when the
slideshow/pict-convert library was loaded; DrRacket loaded this
library during the dynamic-extent of a handler it installed into
the global-port-print-handler, which causes a (non-tail) infinite
loop.
2012-05-30 22:31:55 -05:00
Robby Findler
37ebbfa635 adjust global-port-print-handler's documented contract to match
what it does (and what the text says)
2012-05-30 22:31:55 -05:00
Robby Findler
efd6772e9a adjust repl-test and the module language test for the new error message format 2012-05-30 22:31:54 -05:00
Neil Toronto
331b3b8351 Fixed some transforms, stubbed out docs and examples for the same 2012-05-30 17:31:57 -06:00
Matthew Flatt
e8645598d7 futures: fix bug related to tail calls 2012-05-30 16:20:36 -06:00
Neil Toronto
91579f2a6e Now make-flomap* and effects functions accept (U (Vectorof Real) FlVector) for color instead of just FlVector
New vector-of-component functions: unsafe-flomap-ref*, flomap-ref*, flomap-bilinear-ref*, build-flomap*, inline-build-flomap*;
REPL interaction with -ref* is a bit weird - still need to make flvectors print nicely

Bilinear ref and scaling fix on top and left borders (bad/missing special cases);
Clarified flomap-bilinear-ref docs on extent of interpolated nonzero rectangle

Various doc fixes
2012-05-30 15:05:00 -06:00
Vincent St-Amour
4ad700021b Improve some Performance Report messages. 2012-05-30 16:25:33 -04:00
Vincent St-Amour
84c6fe1522 Don't index some subsubsections of the text editor docs.
Closes PR 12801.
2012-05-30 16:25:33 -04:00
Neil Toronto
c05c45e0e9 Fixed whirl morph test 2012-05-29 18:08:48 -06:00
Neil Toronto
c7bea1dfcd images/flomap: public interface to floating-point bitmaps used by ray tracer 2012-05-29 17:51:19 -06:00
Justin Slepak
2f23f1b6b3 Allow vector-append to take zero arguments
Makes vector-append behave more like append, sequence-append, etc.
2012-05-29 16:56:38 -04:00
Matthew Flatt
74844152bc fix load handlers to match docs on parameters
Problems exposed by setting `read-accept-lang' to #f.
2012-05-29 13:57:32 -06:00
Matthew Flatt
a95739821b fix props for one test 2012-05-29 13:57:32 -06:00
Matthew Flatt
e9070f89c7 terminology correction 2012-05-29 13:57:32 -06:00
Jay McCarthy
50ca12201d Fixing 482214e 2012-05-29 13:39:37 -06:00
Jay McCarthy
4f8e1df169 Fixing error introduced by 9e7548de 2012-05-29 13:39:37 -06:00
Jay McCarthy
38ae869d66 Fixing error introduced by 9e7548de 2012-05-29 13:39:37 -06:00
Jay McCarthy
4d829b8322 Fixes PR12799, but it would be cool to support syntax/parse directly 2012-05-29 13:39:37 -06:00
Matthew Flatt
248301c9ed disable nested `#lang'
A `syntax/module-reader' reader disables `#lang' when looping to
read a module body. The HtDP languages require a little additional
treatment.
2012-05-29 11:01:52 -06:00
Matthew Flatt
def4da4f9a doc fix
Closes PR 12796
2012-05-29 11:01:52 -06:00
Matthew Flatt
26269c329e racket/base: add some missing predicates
The new predicates are `progress-evt?' `thread-cell-values?',
`prefab-key?', `semaphore-peek-evt?', and `channel-put-evt?'.
These were used internally, and now they appear in contract
error messages.
2012-05-29 11:01:52 -06:00
Matthew Flatt
b098ca7aa6 slideshow: run a slideshow' or main' submodule, if any
A common Slideshow pattern is to put a subset of slides in its
own module with a `run-slides' function, and then you'd
(un)comment a `(run-slides)' call at the end of the module to
work on the subset by itself. Now, you can write
`(module+ main (run-slides))' atthe end of the module and not
have to comment it out. Adding `main' support to the `slideshow'
executable makes it more consistent with using `racket' directly.
Checking first for a `slideshow' submodule makes it possible
for `slideshow' and `racket' to do different things, in case
that's useful.
2012-05-29 11:00:43 -06:00
Matthew Flatt
0c303ca9cd racket/cmdline add `#:ps' clause 2012-05-29 11:00:43 -06:00
Matthias Felleisen
f1c1376d87 added 'range' to *sl per jpr's request and #lang-ified a couple of files 2012-05-29 12:00:27 -04:00
Matthew Flatt
2fcb635790 raco exe: checks on source and destination paths
Disallow creating a launcher whose source is the launcher itself,
for example.
2012-05-28 20:30:58 -06:00
Matthew Flatt
6fded4bac1 syntax/free-vars: fix quadratic behavior
(Forgot to fix the "FIXME" before committing last time.)
2012-05-28 20:22:31 -06:00
Matthew Flatt
ee93e35260 syntax/free-vars: deterministic result order
Closes PR 12798
2012-05-28 20:15:43 -06:00
Jay McCarthy
211e869fe1 Supporting methods in web-server/dispatch 2012-05-28 14:13:19 -06:00
Jay McCarthy
8b035f3c73 Fixing PR12779 2012-05-28 11:52:56 -06:00
Jay McCarthy
391754a337 Fixing commit message display re newlines re Robby 2012-05-28 11:52:56 -06:00
Jay McCarthy
c75360957c Attempt to clarify docs for PR12793 2012-05-28 11:52:56 -06:00
Robby Findler
e08c1f3ad1 adjust and add "docs" to img-eval.rkt for Matthias's consumption 2012-05-28 10:58:40 -05:00
Matthew Flatt
99635ab091 change `impersonate-struct' to require evidence that a field is mutable
When supplying an accessor to redirect, either the corresponding field
must be accessible through the current inspector, or a mutator for
the same field must be redirected, too.

Stevie realized that we need this constraint; otherwise, impersonators
can implement mutator-like behavior even when the mutator is otherwise
secret.
2012-05-27 15:37:45 -06:00
Matthew Flatt
73ce5a4767 racket/serialize: fix for submodules
Closes PR 12795
2012-05-27 14:39:51 -06:00
Matthew Flatt
a137459b65 more error-message conversions and repairs 2012-05-27 11:29:21 -06:00
Matthew Flatt
6eeb8fccbd more error-message conversion 2012-05-27 09:03:19 -06:00
Matthew Flatt
00ef7da640 racket/draw: background and text colors in `record-dc%'
Also, improve docs to clarify how the recorded settings interact with
the target DC's settings.
2012-05-27 06:38:30 -06:00
Matthew Flatt
8ab87a9fcc racket/class: new error message convention 2012-05-26 21:08:21 -06:00
Robby Findler
0456d5e4e5 exploit record-dc% to keep picts from drawing outside
of their bounding boxes
2012-05-26 21:39:11 -05:00
Matthew Flatt
a55a20f9d9 sgl/gl: NURBS additions
From Antonio Menezes Leitao based on Ben Goetter's implementation
2012-05-26 19:55:21 -06:00
Matthew Flatt
58db5f8b46 racket/gui: implement set-clipboard-bitmap' in clipboard<%>'
Closes PR 12689

Cocoa implementation provided by Jens Axel Søgaard
2012-05-26 19:42:48 -06:00
Asumu Takikawa
8a52613463 racket/gui: remove empty modules 2012-05-26 16:45:00 -04:00
Asumu Takikawa
a38e6a19ab racket/gui: fix a mzscheme->racket/base issue 2012-05-26 16:23:30 -04:00
Asumu Takikawa
81d13ee7ed racket/generic: doc improvements 2012-05-26 13:53:43 -04:00
Asumu Takikawa
05394aff7e Remove mred/private/kw.rkt
This handled init argument inheritance for class100, but
all uses of it have now been removed.
2012-05-26 11:12:56 -04:00
Asumu Takikawa
cfe1711494 Convert all uses of mzlib/class100 to racket/class 2012-05-26 11:12:55 -04:00
Asumu Takikawa
6341fe7e01 Remove gracket test that does not run.
The file is written in mzscheme or pre-mzscheme and
tries to load files that no longer exist.
2012-05-26 11:12:55 -04:00
Vincent St-Amour
3062efe47f Reduce random testing attemps to avoid DrDr timeouts. 2012-05-26 11:06:29 -04:00