Commit Graph

25323 Commits

Author SHA1 Message Date
Vincent St-Amour
ca63915693 Fix coercions from single-floats to floats.
Found using random testing.
2013-04-02 16:29:07 -04:00
Vincent St-Amour
77b89fab99 Reimplement unboxing of complex division.
Add special cases to be consistent with untyped Racket.

Found using random testing.
2013-04-02 16:29:06 -04:00
Eric Dobson
3d49087ea3 Fix parsing of dotted rest when there is an expected type.
Closes PR 13646.
2013-04-01 22:17:32 -07:00
Robby Findler
5669c372b2 fix a docs bug
(and change a case-lambda to a regular lambda)
2013-04-01 22:39:22 -05:00
Robby Findler
5a85af78ac add contracts to the "with-" macros in redex/pict 2013-04-01 22:39:21 -05:00
Vincent St-Amour
c8c6341970 Simplify type. 2013-04-01 14:44:32 -04:00
Vincent St-Amour
92c4c70e7a Fix type of lcm.
Found using random testing.
2013-04-01 14:44:32 -04:00
Vincent St-Amour
70a8b79d0e Re-enable testing of hyperbolic trigonometry functions. 2013-04-01 14:44:31 -04:00
Vincent St-Amour
990fa87a2e Add random testing for complexes.
Fix a bug it found.
2013-04-01 14:44:31 -04:00
Vincent St-Amour
ca2e6bd769 Sometimes generate random integers. 2013-04-01 14:44:31 -04:00
Vincent St-Amour
3e9595e910 Factor out grammar to generate well-typed terms with higher probability.
Allows us to test integer-specific functions.
2013-04-01 14:44:31 -04:00
Vincent St-Amour
f7e8b090e6 Fix types of bitwise-and and bitwise-xor.
Found with random testing.
2013-04-01 14:44:31 -04:00
Matthias Felleisen
ab663b4833 bring code to old state, make consistent with docs, Closes PR 13642 again 2013-04-01 12:10:27 -04:00
Matthew Flatt
b78982fe6a racket/cmdline: fix problem with arity checking
Extra normalization due to 59b1e32fe9 exposed the bug.
2013-03-31 20:29:23 -06:00
Eric Dobson
5d8f470e0b Remove dependency on GUI libraries. 2013-03-31 11:43:08 -07:00
Eric Dobson
eeeceedb8c Reimplement for*/list: in TR so that it works.
Closes PR 13253.
2013-03-31 10:40:21 -07:00
Eric Dobson
b637c24d88 Improve type of expt since inference is bad.
Closes PR 13383.
2013-03-31 10:39:36 -07:00
Eric Dobson
ecec724747 Add testcase for sibling modules.
Closes PR 13155.
2013-03-31 10:39:16 -07:00
Carl Eastlund
df00bbb194 Updated contracts for arity-related functions.
Added contract checking to arity=?, arity-includes?, and normalized-arity.
Removed contract checking from normalize-arity to make it a total predicate.
Updated documentation for normalize-arity to reflect this change.
2013-03-31 13:36:07 -04:00
Carl Eastlund
f509420662 Removed unnecessary duplication of normalize-arity. 2013-03-31 13:36:06 -04:00
Carl Eastlund
aaa99d565d Documented normalized-arity?, arity=?, and arity-includes?. 2013-03-31 13:36:06 -04:00
Carl Eastlund
636f8a91dc Moved normalized-arity?, arity=?, and arity-includes? into racket/function. 2013-03-31 13:36:06 -04:00
Carl Eastlund
4dd011aa09 Added documentation for normalize-arity. 2013-03-31 13:36:05 -04:00
Carl Eastlund
e356c660ea Re-provide normalize-arity from racket/function. 2013-03-31 13:36:05 -04:00
Carl Eastlund
59b1e32fe9 Changed normalize-arity to coalesce arity-at-least with adjacent numbers.
For instance, (normalize-arity (list 1 (arity-at-least 2))) now produces
(arity-at-least 1).  The implementation and the tests for normalize-arity both
reflect this change.  The randomized tests now also check that the output
represents the same arity as the input.
2013-03-31 13:36:05 -04:00
Matthew Flatt
6e40caa7e2 ffi/com: repairs, including `mysterx' compatibility
Restore MysterX-style handling of parameterzied properties in
`com-get-property'.  It turns out that the original `com-get-property'
handles parameterized properties by allowing a list in place of a
property-name string, and that handling got lost in the re-write.

Fix the name of `com-get-active-from-from-coclass'.

Fix arity checking for optional arguments.

Closes PR 13603
Closes PR 13604
2013-03-31 11:12:45 -06:00
Matthew Flatt
2412611c07 file/untgz: allow extra bytes after tar content
Closes PR 13641
Closes PR 13644
2013-03-31 07:29:06 -06:00
Matthew Flatt
e93f977603 file/untar: handle unknown extensions by skipping
Also, add/improve logging.
2013-03-31 06:59:12 -06:00
Matthew Flatt
bfc9c41358 racket/gui: double-check size on attmpt to set editor scroll
A scroll request could fail if a resize notification is still
in flight (i.e., queued but not yet executed), so double-check
the size on a scroll request.

Closes PR 13582
2013-03-31 06:39:49 -06:00
Matthew Flatt
0a482b6159 raco setup: fix doc dependency check for PLTCOMPILEDROOTS
A doc build depends on its source's ".zo" file, which might
not be next to the source due to a PLTCOMPILEDROOTS setting.

Closes PR 13640
2013-03-30 17:28:25 -06:00
Matthias Felleisen
1ff3e3b942 fixed rate argument for run-movie, Closes PR13642 2013-03-30 18:07:00 -04:00
Carl Eastlund
68f526c2ed source-location-known? should not rely on "span" field 2013-03-30 16:17:27 -04:00
Ryan Culpepper
bace16a4ce added test for sequence syntax with keywords 2013-03-30 10:00:44 -04:00
Ryan Culpepper
d71cc04c22 fix show-dependencies handling of submodules 2013-03-30 10:00:44 -04:00
Ryan Culpepper
3dfab4d0aa factor out create-ehpat code 2013-03-30 10:00:44 -04:00
Ryan Culpepper
1b729d34d8 added rename option to lazy-require
closes PR 13624

also added examples
2013-03-30 10:00:44 -04:00
Ryan Culpepper
2eae24b0b1 use defform #:grammar 2013-03-30 10:00:44 -04:00
Ryan Culpepper
293b208af7 added optional #:grammar clause to defform, etc 2013-03-30 10:00:44 -04:00
Asumu Takikawa
ceac0d3a87 Scheme -> Racket 2013-03-29 17:55:10 -04:00
Matthew Flatt
ba270cde48 fix over-eager "optimization" of some unsafe-fx operations
As reported by Vincent.
2013-03-29 14:46:19 -06:00
Robby Findler
06315bf0fa syntax error check fix
closes PR 13639
2013-03-29 11:58:52 -05:00
Matthew Flatt
99453ac506 ffi/unsafe/objc: weaken cache of method-invoke functions
A non-weak table meant that on Cocoa, every key press leaked a
foreign-funciton stub.
2013-03-29 08:09:57 -06:00
Matthew Flatt
8e25f42fbc doc repair
Closes PR 13555
2013-03-29 07:23:50 -06:00
Matthew Flatt
70eb426aa4 contract error: shift path normalization to error time
Making a pathcollects-relative  at contract-formation time means a
lot of extra work then and a change to the needed sandbox permissions.
Aormalizing at error time is more consistent with other parts of a
contract message.
2013-03-29 07:23:50 -06:00
Matthew Flatt
3f7fcdf1b7 reference: doc clarifications on `guard-evt' 2013-03-29 07:23:49 -06:00
Matthew Flatt
5afd1b4118 syntax-color/racket-lexer: update for single-precision and extflonums
Includes a doc fix to note `+inf.t', etc.
2013-03-29 07:23:49 -06:00
Matthew Flatt
1dcc7ca4dc syntax-color/racket-lexer: fix long-standing number-parsing bug
The lexer mishandled cases like "#x1E+2", because "E" is
not an exponent marker for hexadecimal --- and it has been that
way forever, but the repair isn't all that difficult.
2013-03-29 07:23:49 -06:00
Matthew Flatt
f1ebb6136b reference: fix for reader's number grammar 2013-03-29 07:23:49 -06:00
Matthew Flatt
45f74eafe5 scriblib/footnote: fix for non-Latex output
Also, fix warnings generated even for Latex mode.
2013-03-29 07:23:49 -06:00
Greg Hendershott
59bba2d197 Combine adjacent code spans into one.
These result from something like

    @racket[(x y)]

being treated by Scribble as multiple RktXXX items rather than one. As
a result the Markdown emitted was:

    `(``x`` ``y``)`

But obviously instead we want:

    `(x y)`

Kludgosity alert: Although it would probably be more-correct to
consolidate the RktXXX items at the Scribble structure level, I don't
easily see how. `@racket` is baking in the concept of Racket
lexing (classifying text as various kinds of Racket elements). This is
handy when the render will be HTML or Latek, and is benignly N/A when
it will be plain text. But it's a bit square-peg/round-hole when the
render will be Markdown. Rather than attempt to "un-lex" the Scribble
structures (I'm having trouble seeing how), I'm handling it
"after-the-fact" -- adjusting the generated Markdown text.

If anyone thinks the preceding is an elaborate rationalization for an
ugly kludge, I wouldn't argue, but I would need some help
understanding the preferable way to go about it.
2013-03-29 07:23:49 -06:00
Greg Hendershott
a5f6686270 Fix problem handling examples and interaction.
Unlike plain `racketblock`, `examples` and `interaction` are
"nested". As a result we emitted bad Markdown like:

    ```racket
    Examples:
    ```racket
    some-code
    ```
    ```

Markdown code blocks can't nest, so this needs to be:

    ```racket
    Examples:
    some-code
    ```

Also: Updated the unit test with examples of `examples` and
`interaction`.
2013-03-29 07:23:49 -06:00
Matthew Flatt
a5f8584bab scriblib/figure: add `#:continue?' option 2013-03-29 07:23:49 -06:00
Jay McCarthy
7b832edae9 Adding pointer to dispatcher concept 2013-03-28 08:45:03 -06:00
Jay McCarthy
8a3f831807 Fixing standalone 2013-03-28 08:45:03 -06:00
Matthew Flatt
325a9dd34b slideshow/pict: allow a color in a style for `text' 2013-03-27 17:17:33 -06:00
chrdimo
a499b22a3c improving performance of options 2013-03-27 16:16:25 -04:00
Carl Eastlund
1d351858f9 Used syntax/modcode in rackunit/docs-complete.
This simplifies the implementation, and also generalizes it so that it finds
documentation from installed packages, linked collections, and other sources.
2013-03-26 19:50:33 -04:00
Jay McCarthy
169a9ea28d Fixing broken rackunit display tests 2013-03-26 06:08:21 -06:00
Jay McCarthy
875c20119d Generalizing define-bibtex-cite 2013-03-26 06:08:21 -06:00
Robby Findler
0c5fa7d6c5 relax sandbox permissions now that contract error message
construction requires looking at the filesystem

assuming this is the right fix, it closes PR 13634
2013-03-26 00:03:34 -05:00
Robby Findler
55ef0e7c07 make negative blame also use "<collects>/" instead of having
the full collection path in there
2013-03-25 21:04:21 -05:00
Robby Findler
2ec097a955 fix bug in drracket's online check syntax renaming setup
Because of a limitation in our GC tech (and because I have not
sorted out how to program around it (which should be possible))
when the "is it safe to rename this variable" check may silently
just say "yes" when it really doesn't know the correct answer.

It turns out that this was happening on every attempt to rename
after the first one (in a given online check syntax run) due to
a bug, now fixed in this commit (the "loop" didn't actually loop...)

Also, moved the creation of the thread to its own function to
make the things it closes over more syntactically apparent.
2013-03-25 21:04:20 -05:00
Danny Yoo
eb7fa6f066 Sanitize the output from HTML escape characters.
Noted by ozzloy on IRC.  The search page appears to fail when
searching for the term 'string<?'; in truth, the search succeeds, but
the search link-printing code doesn't escape the '<?' part of the
identifier.
2013-03-25 12:51:19 -06:00
Eric Dobson
38409e0d7e Add descriptions to for: syntax classes.
Closes PR 13284.
2013-03-25 09:42:29 -07:00
Eric Dobson
d7f12d93f4 Add testcase.
Closes PR 12812.
2013-03-25 08:50:48 -07:00
Eric Dobson
f3fdd5c1d7 Call raise-argument-error correctly. 2013-03-25 08:49:42 -07:00
Jay McCarthy
5bb51aff4c Support all define-cite options in define-bibtex-cite 2013-03-25 08:27:51 -06:00
Jay McCarthy
b3b10a39f5 Support mastersthesis, clarify docs, and add test of rendering 2013-03-25 08:27:51 -06:00
Matthew Flatt
4d76aa2040 place channels & threads: improve GC
Allow a thread to be GCed when it is blocked on a place
channel for reading and the place channel's write end
is inaccessible.

GC is limited to threads that do not participate in cycles
of such threads, where the otherwise unerachable threads
are blocked on place channels that are reachable among the
set of threads. In other words, the GC finds the greatest
fix point (as measured by the threads to retain) instead of
least fix point --- which isn't what you want, but finding
the least fix point seems to require significant extra GC
machinery across places.

This improvement was intended to solve the same problem as
commit 7b0608c, but that case seems to run into the limitation
on cycles.
2013-03-25 05:15:24 -06:00
Matthew Flatt
b34fac32c0 fix space-safety problem
A tail call with certain kinds of primitives would fail to
clear local bindings in a detectable way. For example, a
tail call to `sync' that blocks could retain references
to unreachable data in the context of the `sync' call.

Primitives that can cause problems in the run-time system
are already identified as "imemdiate" primitives. The
safe-for-space pass now inserts clearing actions before a tail
call, unless the call it to a known immediate primitive or a
Racket-implemented function.

Clearing operations are now omitted before non-tail calls
to immediate operations like structure predicates.

The newly added clearing operations could affect performance,
but they probably won't, since the clear operations are still
avoided in tail-call cases that are otherwise fast. The newly
omitted clearing operations may improve performance.
2013-03-25 05:15:24 -06:00
Matthew Flatt
c3266ef685 fix `sync/[timeout/]enable-break' semaphore shortcut
The shortcut could be triggered in a bad case (first
argument as `#f' in non-timeout mode) and returned the
wrong result (void instead of the semaphore).
2013-03-25 05:15:24 -06:00
Matthew Flatt
b041a151e6 racket/gui: fix auto-scrollbars for editor GUI
It's possible to go from a state where one scroll bar is needed
(vertical or horizontal) to a state where each scrollbar is
needed iff the other scrollbar is needed. In that case, the
auto-scrollbar algorithm couldn't find either fixpoint and
would loop forever.
2013-03-25 05:15:24 -06:00
Eric Dobson
87facb736f Check for structure binding and raise good error if it is not there.
Closes PR 13588.
2013-03-24 18:35:22 -07:00
Eric Dobson
bb0b071f38 Remove legacy require/typed form. 2013-03-24 18:35:21 -07:00
Robby Findler
7b0608ca42 fix a leak in DrRacket
It was leaking threads at about the rate of 2 per online expansion
that had a syntax error (or otherwise aborted without finishing
expansion)
2013-03-24 18:03:33 -05:00
Robby Findler
5937bcbbf5 fix a race-condition 2013-03-24 17:05:50 -05:00
Robby Findler
57f857b45a fixed more calls to error (that should be raise-argument-error) in the contract library 2013-03-24 08:09:08 -05:00
Robby Findler
64849bddd2 update mzlib contract test suite to recent changes to racket/contract 2013-03-24 07:24:32 -05:00
Robby Findler
6e4d483403 adjust contract library to call raise-argument-error instead of error
and a few other changes nearby to clean up various things

closes PR 13623
2013-03-23 22:00:29 -05:00
Eric Dobson
0e42a791a7 Typecheck (lambda args body) as (arg1 -> result). 2013-03-23 13:18:05 -07:00
Eric Dobson
8d080b74cb Fix Struct-Type-Property.
Closes PR 13593.
2013-03-23 08:24:05 -07:00
Carl Eastlund
4ebf53e919 Add error checking to ensure blame-source produces a srcloc? as documented. 2013-03-23 01:06:25 -04:00
Carl Eastlund
c8f79dacbb Added tests for blame object source locations being srcloc structs. 2013-03-23 01:06:24 -04:00
Burke Fetscher
fe0fd0d152 Redex: remove some now extraneous code 2013-03-22 16:14:03 -05:00
Burke Fetscher
ddf4945125 Redex: corrections for disequations in generator
- handle parameters correctly when simplifying disequations
- rework term generation/disequation checking for parameters
- fix define-extended-metafunction w/r/t the above
2013-03-22 15:28:36 -05:00
Burke Fetscher
40fc96cacf Redex: rework metafunction compilation/search for parameters 2013-03-22 15:28:35 -05:00
Burke Fetscher
bdf1866e80 Redex: parameterized disequations
refactor the pattern unifier and tests to handle
disequations with parameters correctly
2013-03-22 15:28:35 -05:00
John Clements
564d244039 polarity flip in type error messages 2013-03-22 10:20:40 -07:00
Eli Barzilay
f1e5bd8fd4 Undo no-op change.
As discussed:
  http://lists.racket-lang.org/users/archive/2013-March/056907.html
2013-03-22 11:22:49 -04:00
Eli Barzilay
9f057857e5 Fix props order. 2013-03-22 11:21:04 -04:00
Jay McCarthy
04d723eea8 Fixing broken rackunit tests 2013-03-22 07:45:14 -06:00
Jay McCarthy
9f337c632a Removing the planet2 name from the code 2013-03-22 07:45:14 -06:00
Robby Findler
431efb40d1 Argh, sorry again.
Revert "IN PROGRESS: working on syntax error messages for 2d"

This reverts commit 04ada66741.
2013-03-21 22:48:47 -05:00
Robby Findler
04ada66741 IN PROGRESS: working on syntax error messages for 2d 2013-03-21 22:48:05 -05:00
Robby Findler
092d98656c fix plai/gc2/mutator for the case where a lambda-bound
variable is shadowing something
2013-03-21 22:48:05 -05:00
Robby Findler
0e6975fb2c add 'values' to plai/gc2/mutator language 2013-03-21 22:48:05 -05:00
Robby Findler
13bcb73050 typo in test suite 2013-03-21 18:59:23 -05:00
Tony Garnock-Jones
0399babc85 pretty-format returns a String, not Void 2013-03-21 18:11:28 -04:00
Matthew Flatt
3886b7702e fix for `syntax-local-value/immediate'
The source locaiton on the second result was mangled.

Closes PR 12477
2013-03-21 14:29:40 -06:00
Robby Findler
f166934700 adjust check syntax to deal properly with submodules at non-zero phases
Thanks to Matthew for sorting this out.

(Also removed a bunch of line-ended space chars since git
yelled at me.)
2013-03-21 13:08:34 -05:00
Matthew Flatt
30a4b481dd fix submodule declarations nested in phases > 1 2013-03-21 11:51:46 -06:00
Robby Findler
fe721eaef4 adjust options tests to match new multi-party blame printouts 2013-03-21 10:22:27 -05:00
Matthew Flatt
acd6764019 support boxes in syntax patterns and templates
Also, `datum-case' and `datum' from `syntax/datum'.
2013-03-21 09:06:15 -06:00
Matthew Flatt
899c742c56 slideshow: add `--clock' option 2013-03-21 08:51:09 -06:00
Jay McCarthy
804791b011 Adding test logging facility to rackunit and eli-tester, with its own test and docs 2013-03-21 07:02:50 -06:00
Eli Barzilay
0b31cb9168 Minor typo, reported by Dorai. 2013-03-21 00:17:40 -04:00
Robby Findler
8085707a8c adjust the multiple parties of blame printouts 2013-03-20 22:51:39 -05:00
Robby Findler
e5d91baa2c add interaction/no-prompt and clarify that interaction-eval
doesn't catch errors
2013-03-20 22:51:39 -05:00
Robby Findler
a29f37f18b added scribble-exn->string 2013-03-20 22:51:39 -05:00
Robby Findler
2792cd7b5f remove redundant check and minor cleanup 2013-03-20 22:51:39 -05:00
Matthew Flatt
e0486a7cf0 racket/gui: add warp-pointer' to window<%>'
Removed the method from `canvas<%>', where it was never implemented
with the `racket/gui' reimplementation.
2013-03-19 15:53:13 -07:00
Matthew Flatt
31964a11dc reference: improve docs on peeking 2013-03-19 15:48:22 -07:00
Matthew Flatt
dfcf50e165 scribble/manual: add a #:key' argument to deftech' 2013-03-19 15:48:21 -07:00
Robby Findler
496331498f add some random testing into the lexer option contract 2013-03-19 16:04:57 -05:00
Robby Findler
6c2ea3acbb add missing provides 2013-03-19 14:08:28 -05:00
Jay McCarthy
41e07b0cc6 Removing even/odd reading hack and just protecting parser from eof-ing ports 2013-03-19 08:58:41 -06:00
Ryan Culpepper
829a640299 reorganize code, expose stxclass rhs->parser helper 2013-03-18 19:14:05 -04:00
Ryan Culpepper
8f8b16e2ec fix "one term at a time" mode for lifts
closes PR 13597
2013-03-18 19:14:05 -04:00
Ryan Culpepper
ab9207dbc7 split out pattern optimization code 2013-03-18 19:14:04 -04:00
Ryan Culpepper
ae63f01cc7 improve pattern factoring, misc cleanup 2013-03-18 19:14:04 -04:00
Ryan Culpepper
34c1bdfc97 unfold pat:and to uncover more factoring opportunities
Side clauses introduce pat:and, very common in stxclasses.
2013-03-18 19:14:04 -04:00
Ryan Culpepper
d5068278f4 do factoring for stxclasses (non-splicing only) too 2013-03-18 19:14:04 -04:00
Ryan Culpepper
1de7045dd3 basic pattern factoring for syntax-parse 2013-03-18 19:14:04 -04:00
Ryan Culpepper
9d84c5fdf7 add #:commit, fix other typos 2013-03-18 19:14:04 -04:00
Ryan Culpepper
91cbbbbde2 change syntax-parse clause parsing code 2013-03-18 19:14:04 -04:00
Ryan Culpepper
616ca51f75 documented :stxclass patterns
closes PR 13565
2013-03-18 19:14:04 -04:00
Robby Findler
06696d67b4 add a #:pre keyword to define-metafunction
The keyword allows the specification of contracts
that relate different arguments

closes PR 13617
2013-03-18 12:54:27 -05:00
Michael Filonenko
35a093469c windows: extflonum support
Enable extflonums in a MSVC build by relying on a MinGW-built DLL,
"longdouble.dll". The DLL is loaded on startup. If the DLL isn't
available, then `extflonum-available?' reports #f.

Instead of setting the floating-point mode globally to extended
precision, the mode is changed only just before (and restored right
after) extflonum arithmetic operations.
2013-03-18 07:42:32 -07:00
Eric Dobson
ccc8b85cef Fix parsing of dotted formals.
Closes PR 13576.
2013-03-17 18:52:47 -07:00
Robby Findler
1e910fcfbc make check-metafunction and check-reduction-relation
pay attention to the contract/#:domain spec

closes PR 13616
2013-03-17 20:50:23 -05:00
Robby Findler
b63aa6bbac adjust commit 99ff0adbfd to
be more friendly to the test suites
2013-03-17 20:50:22 -05:00
Robby Findler
4bfd6ff6e3 document define-metafunction's contract patterns properly
closes PR 13613
2013-03-17 09:47:42 -05:00
Robby Findler
0dd7d8f60b adjust docs for check-metafunction to make the example
use more representative

closes PR 13614
2013-03-17 09:47:42 -05:00
Robby Findler
99ff0adbfd check errors earlier in judgment-form
closes PR 13609
closes PR 13610
2013-03-16 21:32:14 -05:00
Jay McCarthy
fd9fce47d9 Turn off DrDr testing 2013-03-16 10:39:49 -06:00
Robby Findler
a50dfcc670 add a test for drdr's consumption to keep the ryr models in sync 2013-03-16 11:20:44 -05:00
Mike Sperber
0d17d2bdf4 Synch German string constants with latest. 2013-03-16 15:06:01 +01:00
Robby Findler
0c5c41fd54 add clause-name to define-metafunction, to be used with the
newly extended metafunction-cases
2013-03-15 23:00:50 -05:00
Robby Findler
551150e805 tweaks to option contract usage 2013-03-15 15:38:13 -05:00
Robby Findler
ac93509d95 sorry, didn't mean to push this
Revert "syntax/rect: IN PROGRESS"

This reverts commit 7880c6de3c.
2013-03-15 15:38:13 -05:00
Robby Findler
7880c6de3c syntax/rect: IN PROGRESS 2013-03-14 16:36:51 -05:00
Robby Findler
79b5e4dc3a fix a bug that inhibited online compilation from writing out .zo files
when it compiles required files

Now that this is fixed, the compilation manager will be (once again)
active when doing online compilation, so if the "Populate compiled
directories" checkbox is check (which it is by default) in the details
section of the language dialog, then online compilation will, as it
compiles your file, write out .zo files that will also be used by the
Run button.

The actual fix to this bug is the change in expanding-place.rkt (and
all it really does is move the setting of the
current-load/use-compiled and current-load parameters earlier so that
CM sees only the modified parameter settings and so doesn't give up on
compilation.

The rest of the changes are a test case (and change to drracket to
support the test case)
2013-03-14 16:36:51 -05:00
Robby Findler
3b0d2f16da change compiler/cm so that the default logs the messages to
a logger named compiler/cm
2013-03-14 16:36:50 -05:00
Robby Findler
3f6232bc2d note that the logger-callback's default argument is #f 2013-03-14 14:11:02 -05:00
Robby Findler
1bc82cc404 add an "install package" GUI to DrRacket that calls into planet2 2013-03-14 10:27:49 -05:00
Robby Findler
36e871264a sync scribble docs with cmdline help text 2013-03-14 10:27:49 -05:00
Robby Findler
4f3cd996b1 add contracts, fix a bug, add a test case 2013-03-14 10:27:49 -05:00
Robby Findler
84ce7fa762 make parametric->/c do first-order checks for the argument/result
contracts that it generates

closes PR 13600
2013-03-14 10:27:49 -05:00
Eli Barzilay
230f120a3d Fix CRLF-ed file. 2013-03-14 11:01:10 -04:00
Eli Barzilay
af6be85ff5 Fix lots of indentation mistakes.
(Found by my ayatollah script...)
2013-03-14 10:55:47 -04:00
Eric Dobson
71d6189132 Cleanup of subtyping, additional comments, and improved short circuting. 2013-03-13 22:59:27 -07:00
Eric Dobson
714f667cf1 Add more hacky things to make with-handlers typecheck.
Closes PR12644.
2013-03-13 22:29:41 -07:00
Eric Dobson
75f89107b1 Make PolyDots be subtypes even if they have different fixed arguments. 2013-03-13 22:29:41 -07:00
Eric Dobson
6335de099e Make PolyDots actually subtype correctly. 2013-03-13 22:29:41 -07:00
Eric Dobson
6105ce8b20 Check actual args when form looks like for/list. 2013-03-13 21:45:03 -07:00
chrdimo
9743afeebf replacing transfer-option with transfer/c 2013-03-13 21:15:00 -04:00
Robby Findler
11969cdfa6 trim the list of new dots down to those that our latex
setup seems to handle

(and actually add them to latex-render.rkt ...)
2013-03-13 10:13:34 -05:00
Robby Findler
6914451426 fix readtable composition in #2d reader 2013-03-13 10:13:33 -05:00
Stevie Strickland
4119fab3ff Tests for define/contract and keyword interaction. 2013-03-12 18:15:02 -04:00
Stevie Strickland
6aab2f1445 Look for defines and handle them directly.
Since keyword definitions expand into multiple defines, and inserting
the contract and external id definitions at the wrong point will cause
those to break, we handle define manually.

Hat-tip to Vincent for the idea.

Doing this means that we can't put a single splicing-syntax-parameterize
around the entire body, since it'll expand defines before we reach them,
so instead we add them around the expanded code.
2013-03-12 18:13:43 -04:00
Stevie Strickland
50c2c54950 Fix with-contract when the contracted identifier is defined as syntax. 2013-03-12 16:51:38 -04:00
Robby Findler
cbd8f073a9 forgot to add tabular.rkt 2013-03-12 15:04:35 -05:00
Robby Findler
bb0795c502 an attempt at 2d documentation 2013-03-12 14:53:16 -05:00
Robby Findler
8adbd7e836 Adjusted a literal scribble tabular to use 2d 2013-03-12 14:53:15 -05:00
Robby Findler
a00bcfd16e add various dots to tex-table and thus drracket keyboard shortcuts 2013-03-12 14:53:15 -05:00
Robby Findler
6ce8f20801 document c:x;r;c 2013-03-12 14:53:15 -05:00
Eric Dobson
4683be8793 Add checks for failing to parse types. 2013-03-11 22:53:29 -07:00
Eric Dobson
17cb4fd8d0 Make vector-set! type correctly on complicated inputs.
Closes PR13532.
2013-03-11 21:52:11 -07:00
Robby Findler
74d5706c20 properly compose readtables 2013-03-11 18:53:40 -05:00
Robby Findler
443f998531 improve the way the font size callbacks work, wrt to interactivity 2013-03-11 18:53:40 -05:00
Robby Findler
635efe78a0 added a keybinding to center a line within its cell in a table 2013-03-11 18:53:40 -05:00
Robby Findler
d652d69d14 adjust 2d reader so the keyword has its own source location
and is syntax-original?
2013-03-11 18:53:40 -05:00
Eli Barzilay
a1437e71f7 Two doc typos.
Closes PR 13590.
Closes PR 13591.
2013-03-11 09:06:46 -04:00
Robby Findler
3e27388571 missed some changes related to addition of dont-care values
in the lexers
2013-03-10 21:56:43 -05:00
Robby Findler
761054890d extend the lexer <-> framework's color:text api
to let lexers say "call me again before you change the buffer"

also, use this in the 2d lexer
2013-03-10 20:17:20 -05:00
Robby Findler
282cdcbb5b adjust xmethod macro to yield a more helpful error message 2013-03-10 17:33:55 -05:00
Matthew Flatt
3f9fea063f readline: explicitly load "libncurses"
Needed for OpenBSD
2013-03-10 07:20:38 -06:00
Chen Xiao
a3a610ed32 doc repair 2013-03-10 06:39:07 -06:00
Matthew Flatt
939b36d1fe slideshow: fix bug related to `interactive'
The viewer didn't remove interactives correctly.
2013-03-10 06:29:02 -06:00
Robby Findler
da7a525452 oops
(and the bigger mystery is why this didn't signal
an error when I ran the tests)
2013-03-09 19:01:31 -06:00
Robby Findler
e0aef0a575 fix two bugs in recent plai commit 2013-03-09 18:59:26 -06:00
Asumu Takikawa
2f0dee9270 Doc fixes for takef & friends 2013-03-09 17:13:59 -05:00
Asumu Takikawa
de99fdb867 Fix identifier typo 2013-03-09 17:13:59 -05:00
Asumu Takikawa
a764f20375 Minor sha1 doc fixes 2013-03-09 17:13:59 -05:00
Robby Findler
38f5823a59 adjust plai's gc2 language to use roots as the arguments
to gc:cons and gc:closure instead of passing locs

This enables the important change, namely that get-root-set
no longer returns roots corresponding to the arguments
of the allocation function that we're in the middle of.

This means that a common error students have (forgetting
to chase the 'hd' and 'tl' pointers in their GC) is
harder to make now, since get-root-set never contains
those locations as roots. (In the past you would have had
to write some pretty non-obvious mutator program to get
that behavior.)
2013-03-09 16:08:00 -06:00
Eli Barzilay
44c274e6c3 Actually swap the argument order.
(This was supposed to be included with the other commit.)
2013-03-09 16:05:01 -05:00
Eli Barzilay
c183711d34 Move the `define-inline' tests to "tests/racket/optimize.rktl".
Avoids a bad dependency.
2013-03-09 15:47:43 -05:00
Eli Barzilay
3af72ecab4 Added splitf-at', takef-right', dropf-right', splitf-at-right', and more.
* See comment about implementation issues.

* Removed the `list?' requirement on `takef' etc -- so it matches the
  non-*f versions.  (IMO, it'd be better to drop it from all of them.)
  This also changes the output of `dropf' to `any/c'.

* Swapped the argument order so the predicate is last -- this makes it
  uniform with the non-f* versions.  (IMO, it'b be better to use the
  popular order in all of them instead.)

* Includes tests, and also improved version of previous tests.

* Includes docs, and also fixes to previous docs (eg, drop* doesn't
  return a fresh list).
2013-03-09 15:47:43 -05:00
Eli Barzilay
0d217af2f0 Shuffle code for a more logical order. 2013-03-09 15:47:43 -05:00
Eli Barzilay
e47cc6efb1 Clean up source layout. 2013-03-09 15:47:42 -05:00
Eli Barzilay
2cdfe18beb Rename {take,drop}-while' -> {take,drop}f'.
Also, improve the tests a little.
2013-03-09 15:47:42 -05:00
Stevie Strickland
7d1ad25d6c Revert hack for top-level, institute real fix.
As a side-effect of this fix, we don't need the thunking behavior for
external identifiers anymore.  Even better!

Also include some other cleanups suggested by Ryan and moves from
quasisyntax/loc -> syntax/loc where we don't use the quasiquoting.
2013-03-09 10:46:12 -05:00
Robby Findler
ba3e676057 adjust the expansion of #%module-begin so it doesn't
generate so much code

(Mostly to avoid pain with the macro stepper, but also
reducing the amount of code macros generates is good
for performance reasons)
2013-03-09 09:22:18 -06:00
Robby Findler
46eb91b578 fix a bug in the way let-values decided which variables are roots
also, Rackety
2013-03-09 09:22:18 -06:00
Robby Findler
eb41882843 add tests for plai's get-root-set (in gc2) 2013-03-09 09:22:18 -06:00
Robby Findler
3311387201 when anormalizing, never lift out identifiers from application expressions
The code used to avoid lifting identifier in more restricted circumstances,
but it seems safe to alway avoid that, which can lead to a lot
less lifting
2013-03-09 09:22:18 -06:00
Robby Findler
87f76e94f7 allow quote require forms in the argument to allocator-setup
This is mostly to better support test cases so that we
can set up namespaces that have specific collectors in them
(easiest to do with quote-based requires)
2013-03-09 09:22:17 -06:00
Robby Findler
609672bfa1 bugfix in the closure support 2013-03-09 09:22:17 -06:00
Stevie Strickland
2fb49aca15 Use old inefficient implementation for top-level for now. 2013-03-09 09:09:20 -05:00
Mike Sperber
b1db073ab8 Synch German string constants with latest. 2013-03-09 14:34:33 +01:00
Stevie Strickland
71a64bfb77 Remove additional cruft. 2013-03-08 23:36:05 -05:00
Stevie Strickland
57e9001868 Fix a couple of identifer references that were overlooked. 2013-03-08 23:04:32 -05:00
Stevie Strickland
539c25bb37 Fix with-contract so that contracts are only applied per mutation.
There's still a function application (here, a thunk) lurking in
external accesses, but since that's a trade-off for an entire contract
application, we profit.
2013-03-08 18:11:27 -05:00
Eric Dobson
1334e8dcc7 Reduce usage of check-below.
This pushes almost all uses of check below into tc-expr and
tc-expr/check. This means that the optimizer sees more precise types
and can make more optimizations.
2013-03-08 09:00:58 -08:00
Eric Dobson
1fd21ef640 Avoid TR internal error, by checking shape of args. 2013-03-08 09:00:10 -08:00
Eric Dobson
df581c3e4f Remove unused argument to tc/rec-lambda/check. 2013-03-08 08:59:57 -08:00
Matthew Flatt
454f4c3f0e slideshow: add `interactive'
The `interactive' pict constructor is a hook for interactive GUI
elements on a slide. The callback associated with an `interactive'
pict gets a `frame%' instance for a frame that floats over the pict.
2013-03-07 21:46:48 -07:00
Matthew Flatt
81a0451849 ffi/unsafe/objc
Avoid crash on duplicate Objective-C class declaration.
2013-03-07 21:46:48 -07:00
Matthew Flatt
9e0e2b932d scribble/srcdoc: add `begin-for-doc' 2013-03-07 21:46:48 -07:00
Jay McCarthy
0720ad231e raco setup, ignore this collect 2013-03-07 15:27:12 -07:00
Robby Findler
308a65e6ca fix plai tests 2013-03-07 16:02:51 -06:00
Eli Barzilay
b9406e6a75 Style changes.
No need to stick with the srfi-1 style of `lis' and `recur'.  I also
removed the srfi-1 comment since this code is straightforward.  (I keep
such comments if there's something non-trivial that was taken.)
2013-03-07 16:43:02 -05:00
Eli Barzilay
bbeb293b2a Fix renamed file in props. 2013-03-07 16:43:02 -05:00
Eli Barzilay
95abacd088 GCalc updates.
* Lots of racket-isms.

* Add ".rktd" to the sample file.

* Fix an old bug where the large display wouldn't get refreshed.
2013-03-07 16:43:02 -05:00
Robby Findler
0889133ca1 unbreak get-root-set 2013-03-07 13:52:37 -06:00
Robby Findler
9ef439d31f add in documentation for plai/gc2 2013-03-07 13:52:37 -06:00
Robby Findler
49ffca8fc2 remove ->address 2013-03-07 13:52:36 -06:00
Robby Findler
5c90a7ba83 adjust gc2's mutator language so that void-producing expressions
are allowed only in places where the value is discarded
2013-03-07 13:52:36 -06:00
Asumu Takikawa
bb17b6a8f6 Add take-while, drop-while to racket/list 2013-03-07 12:26:36 -05:00
Jay McCarthy
6bf03c1244 Extending cookie support with expiration
Providing access to paths on id-cookies

Change PNR to limit checksum updating unless forced
2013-03-07 10:21:03 -07:00
Jay McCarthy
9d3a42f166 using bcrypt 2013-03-07 10:21:03 -07:00
Jay McCarthy
39ae7a834b Removing saltification compat 2013-03-07 10:21:02 -07:00
Matthias Felleisen
ec0398fcdd Racket rename 2013-03-07 11:41:28 -05:00
Matthias Felleisen
c13d603c0e fixed .ss name in title 2013-03-07 11:41:28 -05:00
Matthias Felleisen
ef189b8e6e Racket rename 2013-03-07 11:41:28 -05:00
Robby Findler
eee43eb32f like d9c81a593, but this time only 4 pixels
(and this time under linux, not mac os x)
2013-03-06 16:38:59 -06:00
Robby Findler
d9c81a5931 declare failing test should not have failed
This test started failing due to the additions of the calls
to clip, introduced in commit e6dc9c28b4.  The actual
difference is only 9 pixels out of about 100,000 relevant
pixels. Even better, here's the precise rgb values for the
mis-matched pixels (the alpha values don't change):

   (224 251 255) vs (229 255 255)
   (200 242 255) vs (205 247 255)
   (205 242 255) vs (210 247 255)
   (205 242 255) vs (210 247 255)
   (205 242 255) vs (210 247 255)
   (205 242 255) vs (210 247 255)
   (200 242 255) vs (205 247 255)
   (224 251 255) vs (229 255 255)
   (242 255 255) vs (247 255 255)

It isn't clear to me why clipping like this would have this
particular change, but I think it is safe to assume that
Redex shouldn't change in response to this!
2013-03-06 16:35:37 -06:00
Burke Fetscher
1ed7e8c234 Redex: generation for judgment-form side-conditions
- enable generation for the above by compiling to
a disequation with "#f"

- wrap bare terms in relation definitons in
  side-conditions (require they not be "#f")
2013-03-06 16:00:05 -06:00
Robby Findler
4997800a76 make-traversal's optional argument is now ignored
Recent changes eliminated it, but it seems better
(for backwards compatibility) to leave it there but
ignore it
2013-03-06 12:31:50 -06:00
Robby Findler
2170e172a4 tidy up gui
Also improve the speed of compute-diffs by approximately 350x
(from 18+ seconds to about 50 milliseconds on the test case
that's currently failing)
2013-03-06 12:31:49 -06:00
Eric Dobson
f428191e1c Fix type of split-at and vector-split-at.
Closes PR12700.
2013-03-06 08:49:50 -08:00
Eric Dobson
ddf0c39e98 Reduce unnecessarily complicated restrict case. 2013-03-06 08:48:44 -08:00
Eric Dobson
d59a600be6 Make kw/opt lambda special checks work with other expected values.
Closes PR13544.
2013-03-06 08:48:14 -08:00
Eric Dobson
9f01d26f98 Cleanup kw/opt lambda annotations. 2013-03-06 08:48:14 -08:00
Matthias Felleisen
74c3c130f0 added a void contract to fix setup 2013-03-06 08:55:33 -05:00
Robby Findler
e6dc9c28b4 use clipping in the recent commit to actually test bounding boxes 2013-03-06 07:45:39 -06:00
Robby Findler
1bd11a0b77 bring mac os x bitmaps in line with recent commit made for the linux bitmaps 2013-03-05 22:47:51 -06:00
Robby Findler
39e4ac15e5 bring 'jump to definition' more in line with online check syntax
That is, when right-clicking on an imported identifier, if the
file that has that identifier's definition is open and online
check syntax has completed, then offer a "jump to definition" menu
item that just jumps there with the already computed informtion.
If the file isn't open or online check syntax hasn't completed,
instead offer just to go to the file, without jumping to the definition

also
- things should generally work slightly better with submodules
- jumping to identifiers should do a better job with scrolling,
  specifically it should scroll so the jumped-to identifier is
  about 20% from the top of the window (unless it was already visible,
  in which case no scrolling should occur)
2013-03-05 22:39:34 -06:00
Robby Findler
c7810ba2ae fix a with-handlers to avoid catching break exns 2013-03-05 22:39:34 -06:00
Robby Findler
007d18d145 properly handle eof in the online expansion code
It used to just kind of give up processing which, from the outside,
watching looked like

  (begin-for-syntax (custodian-shutdown-all (current-custodian)))

and so fell into that case in the code. Now, by explicitly raising
an exception, we get a more accurate response
2013-03-05 22:39:34 -06:00
Robby Findler
2b8f58c755 tweak arrow contract expansion to make the output a little easier to read 2013-03-05 22:39:34 -06:00
Robby Findler
4483bb9045 Bitmap test adjustments
- fill in unix bitmaps
- combine the horizontal metafunction test cases into a single bitmap
2013-03-05 22:12:46 -06:00
Burke Fetscher
edcb13e206 Fix pattern unification to deal with #f correctly 2013-03-05 21:52:56 -06:00
Matthew Flatt
18ad15c659 redex: fix `metafunction->pict' width correction for linebreaks
The revised implementation is more clearly and directly expressed
in terms of table cells that span columns.

Also, avoid `panorama' by removing a useless `inset' that seems
likely to be the reason for the `panorama'.

Unix bitmaps to go with the new tests are missing; Robby plans to
add them.
2013-03-05 11:07:20 -07:00
Matthew Flatt
8d03995b62 scribble/manual: add #:id' option to defthing'
Use this open in the HtDP language documentation in the same
way as for `defproc', which fixes the docs for `pi', `e', etc.
2013-03-05 07:48:26 -07:00
Patrick Mahoney
a8e99fa572 Remove use of mzscheme fluid-let in favor of parameters. 2013-03-05 02:22:06 -05:00
Eli Barzilay
75ece5c330 Minor sandbox improvements.
* Check `sandbox-path-permissions' for bad values such as
  '(<perm> <path1> <path2>) where <path2> would get silently ignored.

* Try to clarify the intent of `call-in-sandbox-context' as a meta tool
  rather than a safe execution tool.
2013-03-05 02:22:06 -05:00
chrdimo
0939cfcaf9 adding common special for the wrap-proc of the chaperone for option contracts on procedures 2013-03-04 21:48:52 -05:00
Jon Rafkind
e98b56228d autobib: document #:spaces keyword 2013-03-04 19:00:03 -07:00
Jon Rafkind
37f47f7d68 autobib: add #:spaces argument to define-cite that puts N spaces between each bibliography entry 2013-03-04 18:48:41 -07:00
Jon Rafkind
81d58b1cb6 [honu] fix lexical context for require forms. fixup the module name to replace _ with - 2013-03-04 18:48:41 -07:00
Jon Rafkind
9a9b30c751 [honu] many small things: allow with syntax to bind arbitrary patterns. provide time and time-apply. make compress-dollars recurse on sub-expressions. add an implicit pattern variable that consists of the result with an ellipses depth of 1. fix the while form. allow require forms to contain mostly anything and be separated by commas. 2013-03-04 18:48:41 -07:00
Jon Rafkind
c3716d5a97 [honu] mark/unmark syntax parsed through the expression syntax class 2013-03-04 18:48:40 -07:00
Eric Dobson
22ef10c544 Fix heterogeneous vector typechecking. 2013-03-04 09:36:56 -08:00
Eric Dobson
485f246f39 Fix type of set?. Closes PR13509. 2013-03-04 09:17:40 -08:00
Matthew Flatt
114ab498d6 scribble: fix regression in HTML rendering
Fixes a problem with 2d5884b26a.
2013-03-04 07:53:18 -07:00
Matthew Flatt
5e20f51415 fix mark handling for impersonatored procedures to match docs
Using an impersonator property to represent an application mark was
a bad choice. The property gets propagated, so it is also on any later
chaperone layer, and then things go bad: the docs say that special
treatment is triggered by supplying an argument to `impersonate-property',
but it was actually triggered by the chaperone having the property.

Change the implementation to match the documentation. Using an
impersonator property to supply the mark should be regarded as a hack,
but now the implementaiton is at least consistent with the documentaiton.
2013-03-03 10:16:51 -07:00
Matthew Flatt
8c3eb7dcb4 slideshow/pict: add #:alpha' argument to pin-line' 2013-03-03 10:16:50 -07:00
chrdimo
7f67252cb3 replacing applicable structures for procedure options with chaperones + tweak-option + with-contract mode 2013-03-02 23:36:21 -05:00
Robby Findler
be0e32b224 remove a use of normal-case-path
closes PR 6086
2013-03-02 20:41:51 -06:00
Asumu Takikawa
855ce453a0 Fix docs on udp-open-socket 2013-03-02 13:37:29 -05:00
Asumu Takikawa
312792ac4d Set the socket protocol family
Allows the use of an IPv6 nameserver
2013-03-02 13:36:34 -05:00
Asumu Takikawa
3ab83001b4 Support reverse lookups with IPv6 addresses 2013-03-02 14:26:28 -05:00
Asumu Takikawa
cf4c71a51f Shorten IPv6 addresses for display 2013-03-02 14:26:28 -05:00
Asumu Takikawa
c2e8ef30e4 Support querying AAAA records for IPv6 2013-03-02 14:26:27 -05:00
Asumu Takikawa
621fc2b256 Start to add internal documentation 2013-03-02 14:09:30 -05:00
Robby Findler
3a40afaf05 used the wrong dir when checking the info.rkt santity
thanks to Jos Koot for pointing out this bug
2013-03-01 19:38:57 -06:00
Robby Findler
42847ea523 follow up to William J. Bowman's commit
- put the tests together with the other define-union-language tests
- fix the docs
- add a release note
- construct the merged language a bit more directly
- properly deal with this kind of thing:
  (define-language L1 (e f ::= 1 2 3))
  (define-language L2 (e g ::= 4 5 6))
  (define-union-language L L1 L2)
2013-03-01 19:38:57 -06:00
William J. Bowman
b0db8798b6 Changed `define-union-language' to merge nonterminals and their
right-hand-sides instead of causing an error when more than one language
in the union defines the same nonterminal.
2013-03-01 19:38:57 -06:00
Robby Findler
32774924e2 tweak docs 2013-03-01 19:38:57 -06:00
Matthew Flatt
0acb9b8432 doc correction and test additions for `atan'
Closes PR 10324
2013-03-01 15:28:39 -07:00
Matthew Flatt
5ab12b36cf openssl: remove special handling of OpenBSD
This special handling is now built into `ffi-lib'.
2013-03-01 15:20:17 -07:00
Matthew Flatt
cdf0f6b9ab add 'so-mode to `system-type'
To work better with OpenBSD (which has been a problem since we
changed `ffi-lib' to open libraries in "local" mode by default).
2013-03-01 15:20:17 -07:00
Matthew Flatt
174a80f078 doc repair 2013-03-01 15:20:17 -07:00
Matthew Flatt
cb8dd143d9 slideshow/balloon: add `balloon-enable-3d' 2013-03-01 15:20:17 -07:00
Asumu Takikawa
c4cdcafec4 Minor fix in Guide chapter 11 2013-03-01 16:22:36 -05:00
Asumu Takikawa
94b2ebddfa Add DNS tests 2013-03-01 16:22:36 -05:00
Asumu Takikawa
50cd4645c1 Another small contract fix 2013-03-01 16:22:36 -05:00
Asumu Takikawa
e74c8b1b01 Fix broken link 2013-03-01 16:22:36 -05:00
Asumu Takikawa
ef4b3feb8d Improve Guide chapter 7
* Typos/grammar
 * Fix breakdown of contract error message
 * Show `struct/dc` instead of deprecated lazy contracts
2013-03-01 05:16:43 -05:00
Asumu Takikawa
14c77c39d2 Fix net/dns contracts 2013-03-01 00:48:11 -05:00
Asumu Takikawa
9d08d69d07 Add contracts to net/dns functions. 2013-03-01 00:05:40 -05:00
Robby Findler
3d0af847b6 add macports default path as a place to look for aspell 2013-02-28 20:45:23 -06:00
Eli Barzilay
5e9d1ce92f Use the `not-on-the-web' style *around* the installation comment.
Otherwise making it have a "display: none" style leaves a visible empty
div.
2013-02-28 15:11:04 -05:00
Asumu Takikawa
2065c8203e Guide chapter 6 tweaks 2013-02-28 10:08:54 -05:00
Asumu Takikawa
48d067741b Improve Guide section 5 2013-02-28 10:08:54 -05:00
Asumu Takikawa
43912bef50 Some tweaks for Guide section 4 2013-02-28 10:08:54 -05:00
Asumu Takikawa
5790667054 Remove duplicate non-terminals in define-extended-language
Fixes a problem with `define-union-language`
2013-02-28 12:16:25 -05:00
Matthew Flatt
2236363696 fix bug in hashing shortcut for transparency 2013-02-28 10:06:36 -07:00
Chris K. Jester-Young
9e93ee2682 Convert srfi/61/cond to use modern module style.
This ensures that `=>` and `else` have the same bindings as the ones in
`racket/private/cond`; otherwise it would not be possible to use SRFI 61
`cond` from a `#lang racket/base` program/module.

Tested under both `#lang racket` and `#lang mzscheme`.
2013-02-28 10:05:50 -05:00
Robby Findler
8a08cfcbbf adjust plai test suite tests to check the ports that things now go to 2013-02-28 07:12:15 -06:00
Eli Barzilay
b84a7bce66 Fix typo in `string-replace' keyword name. 2013-02-28 01:49:50 -05:00
Robby Findler
27d79aac18 don't try to re-use the active frame when it isn't shown
This is a bit suspicious, since it isn't clear why a frame
whose show method has been called with #f should be considered
an active frame. Since changing that is a much more dangerous
change then, for now: closes PR 13564
2013-02-27 22:35:39 -06:00
Robby Findler
0d3fc7db93 adjust test case for improved ->i handling in check syntax 2013-02-27 21:30:37 -06:00
Robby Findler
b0ed3b49e0 adjust plai test & co. to print only failing tests to stderr,
instead of printing all of them

also, adjust the plai test suites to cope with test results going
to two different places
2013-02-27 21:30:37 -06:00
Robby Findler
48b2410755 fix a bug in ->i parsing 2013-02-27 19:20:27 -06:00
Robby Findler
03751b8f34 Rackety
This commit is to giure out just how much Rackety can combat rightward drift
in this file (this was a region of code edited recently for other reasons)
Turns out that the first hunk's rightmost column (of code, not counting
comments) moved left by 39 chars and the second by 40 chars
2013-02-27 19:20:26 -06:00
Robby Findler
727d11df83 adjust plai's test facility to print test failures to stderr
instead of stdout (in addition to making errors red in drracket,
this will also make some of the existing test suites more
drdr friendly)
2013-02-27 19:20:26 -06:00
Danny Yoo
f5e85a6503 Modify exn:test:check to support prop:exn:srclocs to produce good error messages even without debugging enabled.
Closes PR-13451.
2013-02-27 12:02:00 -07:00
Matthew Flatt
17a99bf1d8 docs tweak 2013-02-27 08:53:43 -07:00
Matthew Flatt
f8c30338db fix problem with `raco exe' and cross-phase persistent modules
Relevant test is "teaching-lang-executable-creation.rkt" iin
"tests/drracket".
2013-02-27 08:53:43 -07:00
Matthew Flatt
abf44f8b49 add `module-compiled-cross-phase-persistent?' 2013-02-27 08:53:43 -07:00
Matthew Flatt
88a36a077c terminology change again: "cross-phases persistent" modules 2013-02-27 08:53:43 -07:00
Matthew Flatt
c1469b9480 fix a test 2013-02-27 08:53:43 -07:00
Matthew Flatt
a46849f3b9 minor decompiler tweak 2013-02-27 08:53:43 -07:00
Eli Barzilay
ee69dc58bc Allow "*" directories in distribution specs.
Useful to avoid deleting stuff from directories that might have
non-distributed materials.
2013-02-27 10:31:28 -05:00
Robby Findler
574fc8f50f add a missing arg to jump-to-next-callback
closes PR 13560
2013-02-26 21:55:17 -06:00
Robby Findler
9621a58c4c change expansion of ->i to make renaming work better in check syntax
Specifically, when expanding in the body of a dependent argument, put
the original variable for the dependened on field into that code, but
changing the expansion so that the binder becomes the original field's
x, not the x in the dependent declaration list.

This means that, for example, in this program:

(->i ([x any/c]
      [y (x) (begin x any/c)]
      [z (x) (begin x any/c)]) any)

the first x will be the binder and the other four now count as
bound occurrences.

Also, rip off Casey's redex check syntax tests to add tests

closes PR 13559
2013-02-26 21:55:17 -06:00
Burke Fetscher
76421ee786 Fix expansion for relations in term positions.
Explicitly disables random generation for relations in term
positions, but fixes a problem with runtime functionality
for the same.
2013-02-26 21:11:06 -06:00
Matthew Flatt
a04bfa5ba2 fix phase-collapsing-module inference
This bug was causing a crash in some DrRacket tests.
2013-02-26 19:19:57 -07:00
Matthew Flatt
e15569e006 add `racket/kernel/init' 2013-02-26 19:01:36 -07:00
Matthew Flatt
2646ff6895 try "phase-collapsing" instead of "phaseless" 2013-02-26 19:01:36 -07:00
Matthew Flatt
2e652fc2b3 fix some "phaseless" module holes 2013-02-26 19:01:35 -07:00
Asumu Takikawa
30c381f0b1 Various improvements to Guide section 3
* Examples
  * Scheme -> Racket
  * Grammar & style
2013-02-26 19:30:54 -05:00
Asumu Takikawa
ef08cc41e7 Enable contract and add a purpose statement 2013-02-26 17:38:05 -05:00
Matthew Flatt
899a3279c2 add experimental support for "phaseless" modules
The intent is to support phase-crossing data such as the `exn:fail:syntax'
structure type that is instantiaed by macros and recognized by contexts
that use `eval' or `expand'. Phaseless modules are highly constrained,
however, to avoid new cross-phase channels, and a module is inferred to
be phaseless when it fits syntactic constraints.

I've adjusted `racket/kernel' and improved its documentation a little
so that it can be used to implement a phaseless module (which can
import only from other phaseless modules).

This change also adds a `flags' field to the `mod' structure type
from `compiler/zo-structs'.
2013-02-26 14:55:28 -07:00
Danny Yoo
9b86d4452f Modify the src-pos error reporting in parser-tools to better show the token context.
Addresses PR 9924.
2013-02-26 13:20:47 -07:00
Robby Findler
bc479b41c5 adjust scribble-lexer test to handle errors 2013-02-26 12:41:25 -06:00
Robby Findler
3c295d14d0 fix lexer contract 2013-02-26 12:41:25 -06:00
Robby Findler
478ec22d02 add with-roots to plai's gc languages 2013-02-26 12:41:25 -06:00
Robby Findler
87a8e6f677 fix unstable/2d's lexer to handle eof better 2013-02-26 12:41:19 -06:00
Eli Barzilay
8117b6b471 Change the symlink that serves docs to the one that holds the tweaked version. 2013-02-26 09:43:54 -05:00
Eli Barzilay
d746850664 Add template file for tweaked docs. 2013-02-26 09:43:54 -05:00
chrdimo
a3a98fd933 support for keyword argumnets + transfer-option, exercise-option and waive-option do not raise an error on values without an option 2013-02-25 22:18:17 -05:00
Vincent St-Amour
2846c17cb4 Fix the fix to TR contracts. 2013-02-25 20:10:14 -05:00
Vincent St-Amour
034aacafab Fix TR contracts. 2013-02-25 19:25:39 -05:00
Vincent St-Amour
088006413f Generalize type of curry to functions of arity 3+. 2013-02-25 14:03:17 -05:00
Eli Barzilay
2abcb883cd Minor improvements to version-specific download pages. 2013-02-25 11:08:30 -05:00
Matthew Flatt
d113e79fb5 file/untgz: fix race 2013-02-25 06:44:45 -07:00
Robby Findler
8c0291e2c6 traditional chinese string constants update, also from Chongkai Zhu 2013-02-24 16:40:23 -06:00
Robby Findler
18a5dcb3d3 add port-count-lines? to the lexer contract 2013-02-24 16:37:06 -06:00
Robby Findler
a0059f791a more 2d lexer repairs 2013-02-24 16:37:06 -06:00
Eli Barzilay
250880d2a4 Add links to old documentations.
* The all-versions page has a docs column with html/pdf links, and also
  two links in the nightly builds footer.

* Specific version download pages have a link to the docs for that
  version.  (Only html, to save space.)
2013-02-24 17:12:03 -05:00
Eli Barzilay
9b1247b00d Revert "Adding link to prior versions of the docs."
Instead, add links to the web pages.

This reverts commit 87a5280b13.

Conflicts:
	collects/scribblings/main/config.rkt
2013-02-24 16:59:52 -05:00
Eli Barzilay
c7173cd1c6 Improve `file' tests.
* Move sha1 test to the same place, to be run like the others.

* Unify tests for untar and unzip.

* Also improve them: test results instead of failing with errors.  Also,
  generate random text to archive, and use 0 for group+other permission
  bits (to avoid world writable results on an error).
2013-02-24 15:16:00 -05:00
Eli Barzilay
cae6b53178 Make cat%' into a macro so ~a' etc get a proper name. 2013-02-24 15:16:00 -05:00
Eli Barzilay
7d2aa88f3d Improve label generation code. 2013-02-24 15:16:00 -05:00
Matthias Felleisen
3818954dc3 properly named 2013-02-24 15:13:42 -05:00
Robby Findler
b3e803c757 add context information into the error messages for option contracts
Also, minor code cleanup (don't create a function and pass it
around when has only one thing in its closure and you can
just pass that around, especially when passing the function around
makes the code harder to read and the created function has to
have a "dot" arglist and use "apply" in its body)
2013-02-24 09:04:47 -06:00
Robby Findler
4b8813bb0e adjust syntax browser to work better for literal hashes and vectors
closes PR 13537
2013-02-23 20:26:57 -06:00
Robby Findler
814b9e490c add a keystroke to widen a rectangle 2013-02-23 20:12:56 -06:00
Robby Findler
fe515e3ac7 fix bugs in unstable/2d lexer 2013-02-23 20:12:56 -06:00
Robby Findler
40363da511 forgot to add this file in my previous commit 2013-02-23 19:50:34 -06:00
Robby Findler
d25cbed6c0 add scrollbars 2013-02-23 16:51:30 -06:00
Robby Findler
5e2cc344c8 change the option setup: everyone has an option contract now and
the module lexer either exercises or not, depending on its level of trust
2013-02-23 16:26:46 -06:00
Robby Findler
64d7911fe5 add has-option? to check if a value has an option contract or not 2013-02-23 16:26:46 -06:00
Robby Findler
18c009276d fix up tests to reflect the module-lexer now behaves a little
better wrt to its first result

That is, instead of just returning the string "#lang" it now
returns the actual text that was there (it was supposed to be
doing that all along and my recent commit fixed it, but I
missed the test cases)
2013-02-23 15:42:43 -06:00
Danny Yoo
18889de808 Add 'extra' to emphasize the intended meaning.
Closes PR 13550.
2013-02-23 13:59:07 -07:00
Danny Yoo
9dd81411b0 Use @racket[] on the unquote-splicing identifier so that we get good hyperlinking.
Closes PR 13548.
2013-02-23 13:43:36 -07:00
Robby Findler
b0343aa9f0 add a contract on the interaction between the module-lexer and the
lexers it defers to

also, remove the checks in color.rkt in the framework (they are not
all covered by the added contract, but they mostly are and when they
aren't, most of those times are using the heavily tested racket-lexer)
2013-02-23 14:35:25 -06:00
Matthew Flatt
4cc9eb0326 Revert "racket/draw win32: work around a Pango bug"
This reverts commit 8f9606007f.

Figured out how to compile and fix Pango after all.
2013-02-23 08:42:36 -07:00
Eli Barzilay
334e1cfdd9 Some style things. 2013-02-23 02:09:56 -05:00
Eli Barzilay
cec73f5652 Newlines at EOFs scan. 2013-02-23 02:09:56 -05:00
Patrick Mahoney
b265e260b2 Move eopl language to Racket.
- sllgen.rkt - use begin-for-syntax+define-syntax instead of
  define-syntax-set.
- eopl.scrbl - rewrite *3-columns so that it no longer errors when 3
  doesn't divide the number of reprovided lang forms.
- Removal of mzscheme and mzlib requires.
- Updated docs.
2013-02-23 02:08:30 -05:00
Eric Dobson
f6df93ed96 Make mutable lists be sequences. 2013-02-22 21:01:21 -08:00
Robby Findler
b40e38bb11 fix documentation errors
closes PR 13543
2013-02-22 15:55:10 -06:00
Robby Findler
d403f3c6db add docs to address how image equality, rounding, and alpha values
can conspire to confuse

closes PR 13541
2013-02-22 15:40:08 -06:00
Robby Findler
17d6e162bc minor clarifications of the docs (that would have helped me
understand some of the details better).
2013-02-22 15:40:08 -06:00
Danny Yoo
7558eb4c9e Conditionally link to the SRFI docs on docs.racket-lang.org when rendering PDFs.
Closes PR 11804.
2013-02-22 12:06:19 -07:00
Matthias Felleisen
200c20967d make read-csv-file/rows available in BSL; closes PR 13542 2013-02-22 12:39:12 -05:00
Robby Findler
09f9f31213 various 0-sized image repairs
closes PR 13540
2013-02-21 19:25:48 -06:00
Danny Yoo
61db1d6405 Add link to the syntax of the @-reader.
Also defines the "@-form" term in the @-syntax section due to its
frequency.

Closes PR-12589.
2013-02-21 15:03:01 -07:00
Asumu Takikawa
e8b49e2c82 Add doc subforms for keyword types 2013-02-21 15:35:14 -05:00
Asumu Takikawa
1cf1e1baa4 Add an example for local-require 2013-02-21 14:45:45 -05:00
Vincent St-Amour
e69f66fd00 Add examples of function types with keyword arguments. 2013-02-21 10:49:58 -05:00
Vincent St-Amour
034d7245a4 Filters for comparisons with inifinity. 2013-02-21 10:49:57 -05:00
Vincent St-Amour
12aaa229a3 Fix subtyping for Negative-Single-Flonum. 2013-02-21 10:49:57 -05:00
Matthew Flatt
42b8163f8f fix docs on `case'
The Guide was was out-of-date in several ways, and the Reference
didn't describe the dispatch-time guarantee.
2013-02-21 08:34:54 -07:00
Matthew Flatt
71cffcffdf fix Guide spec for when' and unless'
Closes PR 13538
2013-02-21 08:34:54 -07:00
Matthew Flatt
772afd94fd fix docs for `begin0'
It's body currently isn't an internal-definition position.
2013-02-21 08:34:54 -07:00
Robby Findler
c37cd388a2 adjust docs example to use collection-file-path and
to say a little more about checksums
2013-02-21 07:49:24 -06:00
Eric Dobson
18d90115e7 Make naturals be a sequence type. 2013-02-20 21:25:02 -08:00
Eric Dobson
4f9f00680e Make (Set a) a subtype of (Sequenceof a).
Closes PR13485.
Closes PR12615.
2013-02-20 21:25:02 -08:00
Eric Dobson
a7bc758505 Fix subtyping of invariant data structures.
Closes PR13521.
2013-02-20 21:25:02 -08:00
Eric Dobson
ddb8e7f807 Add subtyping for Parameters.
Closes PR11992.
This required moving more stuff in to base-abbrev so that it could be
used in subtype.
2013-02-20 21:25:02 -08:00
Eric Dobson
0b87c999b3 Make struct types overlap with procedures.
Closes PR11971.
2013-02-20 21:25:02 -08:00
Robby Findler
5eddac7482 fix the use of impersonator-ephemerons in the framework preferences library 2013-02-20 21:13:02 -06:00
Robby Findler
a25a073bc3 new simplified string constants; from Chongkai Zhu 2013-02-20 21:13:01 -06:00
Robby Findler
661c29b8d4 tweak 2013-02-20 21:13:01 -06:00
Danny Yoo
fa4fb3ebaf Add reference to the DrRacket interface essentials from the Quick Start guide.
This adds a tag to DrRacket File menu docs.  It adds two margin notes
to the quick start, one linking to the essentials for using DrRacket,
and the other for saving Definitions.

Addresses PR 9501.
2013-02-20 17:15:32 -07:00
Danny Yoo
0b0ce6574a Note that integer-sqrt produces exact output when given exact input.
Closes PR 9542.
2013-02-20 16:39:36 -07:00
Stephen Chang
9e26cd0b7a one more integer-set test 2013-02-20 18:34:58 -05:00
Stephen Chang
aeff5922b7 add test for integer-set:
- check that taking the rest of an integer-set results in a proper integer-set
2013-02-20 18:32:01 -05:00
Stephen Chang
bd1141c670 fix bug in getting "rest" of an integer-set 2013-02-20 17:54:17 -05:00
Matthew Flatt
5fcc96e41a add space before "View Prior Versions" 2013-02-20 06:51:34 -07:00
Robby Findler
2f50cde745 signal error when attempting to generate from a
metafunction with no cases

closes PR 13536
2013-02-19 22:08:31 -06:00
Robby Findler
c6f106d285 remove spurious printf 2013-02-19 19:18:17 -06:00
Matthew Flatt
0afcda2a5a fix error checking for flreal-part' and flimag-part' 2013-02-19 16:47:39 -07:00
Asumu Takikawa
5e37134d94 Index some info.rkt fields for raco setup 2013-02-19 16:36:16 -05:00
Asumu Takikawa
db4a1632e5 Minor doc fixes 2013-02-19 16:36:16 -05:00
Asumu Takikawa
ea0c14dac2 Rackety 2013-02-19 16:36:16 -05:00
Matthew Flatt
ce960756cb scribble: fix 'aux stripping for hyperlinks and HTML titles 2013-02-19 14:03:01 -07:00
Matthew Flatt
c9c4d33a2f scribble/sigplan: add `subtitle'
Based on David Van Horn's suggestion.

Also, make both `author' and `authorinfo' work (even when mixed).
2013-02-19 14:03:00 -07:00
Danny Yoo
87a5280b13 Adding link to prior versions of the docs. 2013-02-19 13:33:49 -07:00
Robby Findler
d3e1c16159 adjust the c:x;n and c:x;p keybindings to use the
same information as the yellow green bubbles

Before, when you typed c:x;n, drracket would look at the identifier
you're on, find its binder, find all bound occurrences of that binder,
sort them by position in the buffer, and then jump to the one that
follows where you are.

This works great for things like the "x" in "(let ([x 1]) x x)"
but not so great for things like the "define" in:

  #lang racket
  (define x '(+ 1 2))
  (define y '(+ 3 4))

since that would jump to the quote, since there are bindign arrows
going from the "racket" to the define and to the quote.

Now, since it is using information ultimately derived directly
from (and only from) free-identifier=? (the arrows also come from
identifier-binding, which is how we get those arrows in the second
example above) you jump from the first define to the second define,
which seems better.
2013-02-19 13:52:42 -06:00
Robby Findler
164a5831b8 use impersonator-ephemeron to allow a
real contract on preferences:add-callback
2013-02-19 13:52:42 -06:00
Danny Yoo
796550bd9f Add example of mixin form to guide documentation.
Closes PR 13445.
2013-02-19 12:44:21 -07:00
Matthew Flatt
e99fcf65c1 add ackn 2013-02-19 08:56:03 -07:00
Matthew Flatt
8f9606007f racket/draw win32: work around a Pango bug
Pango crashes (with an assertion failure) on characters U+1D173
through U+1D17A. Trying to fix (or even just compile) Pango for
Windows is hard, so skip the characters at the `draw-text' and
`text-extent' level.

The bug is unlikely to be specific to just those characters in the
long run, but only those characters appear to be problematic on my
Windows 7 installation. So, the workaround may be enough for many
installations, and hopefully the Pango bug wil be fixed one day.

Relevant to PR 13513
2013-02-19 08:48:04 -07:00
Matthew Flatt
ca951294d4 JIT: inline char->integer' and integer->char' 2013-02-19 08:43:50 -07:00