Commit Graph

5164 Commits

Author SHA1 Message Date
Robby Findler
5c109946c2 add support to struct/dc to name the selector directly
and use that in struct/c

closes PR 13054
closes PR 13461
related to PR 13050
2013-02-16 17:24:11 -06:00
Ryan Culpepper
44e26d493d try to make tmp file path shorter (for drdr) 2013-02-16 15:18:55 -05:00
Matthew Flatt
9b04aef0f8 fix a problem with `syntax-local-lift-require' at top level
The problem was exposed by improved error checking
in the expander to detect references to exports of a module that
is not yet visited, and as triggered by the documentation for
`2htdp/planetcute'.
2013-02-16 09:29:16 -07:00
Matthew Flatt
72c39ca7ff test fixups 2013-02-16 08:56:21 -07:00
Robby Findler
fbeecdc1aa add gc log following info to the drr performance monitor 2013-02-16 07:39:33 -06:00
Robby Findler
1ee765c7e3 fix bad test 2013-02-16 00:09:25 -06:00
Matthew Flatt
0c37849f81 racket/gui: fix contract of set-value' in gauge%' 2013-02-15 16:02:53 -07:00
Asumu Takikawa
9ef9330d4e Informative error message for raco pkg remove
When a user tries to remove a package installed in a
different scope, notify them.
2013-02-15 15:44:31 -05:00
Michael Filonenko
840fc9c657 full unboxing for extflonums, plus `ffi/unsafe' support
Includes a repair for floating-point `min' and `max' that affects all
x86 builds that use SSE arithmetic, leaving the (otherwise unused)
floating-point stack in a bad state, which might have affected
x87-using C/foreign libraries running alongside Racket.
2013-02-15 12:15:34 -07:00
Robby Findler
93bf0cd663 fix 2d lexer for the case when the #2d expression
isn't in the leftmost column
2013-02-15 10:29:34 -06:00
Matthew Flatt
d5c1a75e38 racket/gui cocoa: fix over-eager refresh for 'gl canvas% 2013-02-14 19:47:40 -07:00
Robby Findler
30ca1f0baf add syntax coloring for 2d syntax 2013-02-14 19:51:08 -06:00
chrdimo
26726ba26f tests for option contracts 2013-02-14 19:55:10 -05:00
Matthew Flatt
ccabbaa36e fix `current-subprocess-custodian-mode' for a #f argument 2013-02-14 17:30:10 -07:00
Eric Dobson
5ed26e806b Make lists with minimum lengths be a subtype of sequences. 2013-02-14 18:24:52 -05:00
Eric Dobson
b4beabc977 Make tc-let do unions correctly. 2013-02-14 18:24:52 -05:00
Vincent St-Amour
60959467cf Fix optimization of unary complex - and /. 2013-02-14 18:24:52 -05:00
Vincent St-Amour
29a181175f Improve a number of numeric function types.
Closes PR13468.
2013-02-14 18:24:52 -05:00
Matthew Flatt
3cd4ee1c0d ffi/unsafe: allow multiple values for a `(_fun ... -> _racket)' result
Closes PR 13496
2013-02-14 15:45:26 -07:00
Matthew Flatt
421cb24138 add `port-counts-lines?' 2013-02-14 15:45:26 -07:00
Tobias Hammer
7e2b443fa9 Support for multiple value return from wrap-evt and handle-evt
wrap/handle-evt that receives multiple values must have a handler function with adequate arity.

struct.c:
  change contract for wrap/handle-evt from (any/c -> any) to procedure?
thread.c:
  adjust sync processing
sync.rktl:
  add test for handle-evt, wrap-evt and prop:evt
2013-02-14 15:45:26 -07:00
Ryan Culpepper
b3afbdd485 added unstable/socket 2013-02-14 17:19:08 -05:00
Ryan Culpepper
7a0b100ce0 tests for unstable/macro-testing 2013-02-14 17:19:08 -05:00
Matthew Flatt
294bed209e macro expander fix
Repair 73e07f576b added an item to a list without incrementing a
counter for the list length, which cause a different element of
the list to be dropped, which could mess up binding resolution in
arbitrarily bad ways.

(Ths bug falls into the "how did this not get exposed earlier?"  bin,
although part of the answer is that it requires a combination of
module re-expansion and simplification of syntax objects in the
residual program.)

Closes PR 13428
2013-02-14 07:11:16 -07:00
Ryan Culpepper
fbee1ed9c7 change stxparse tests to use unstable/macro-testing 2013-02-13 16:14:49 -05:00
Matthew Flatt
c6eb82524b fix `syntax-local-module-exports' for submodules in expand mode 2013-02-13 08:28:23 -07:00
Matthew Flatt
8c2c84f74f fix context for `#%module-begin' form in a submodule 2013-02-13 08:28:22 -07:00
Matthew Flatt
4a0adb6a74 fix syntax-local-submodules' in expand' mode 2013-02-13 08:28:22 -07:00
Jay McCarthy
6ae2c71ed5 Add raco show -d and showing package deps on failed remove 2013-02-13 07:47:59 -07:00
Eric Dobson
67c6d7804d Add tests for subtyping -poly. Closes PR13510. 2013-02-12 17:07:02 -05:00
Matthew Flatt
7f5b295308 fix problem with the initial continuation prompt
(Got it wrong in 2f7d4b5e.)

Closes PR 13494
2013-02-12 14:17:57 -07:00
Robby Findler
8edd010bec improve ->'s source location tracking
closes PR 13514
2013-02-11 20:37:15 -06:00
Vincent St-Amour
0bccf6b0b0 Forbid singleton types for integers whose type is platform-dependent.
Closes PR13501.
2013-02-11 14:30:19 -05:00
Jay McCarthy
2e7f4ba54a Allowing github URLs from PNRs to use illegal package names 2013-02-11 06:10:58 -07:00
Matthew Flatt
2fc7cad446 racket/enter: fix for `enter!' related to submodules
The load handler didn't obey the protocol with respect to a second
argument that is a list starting with #f.

Closes PR 13096
2013-02-10 05:57:25 -07:00
Matthew Flatt
dd50ac8652 catch module-not-available mimatches earlier 2013-02-08 22:57:37 -06:00
Matthew Flatt
d73ae88220 test case for `for' repair
Provided by Ryan to go with a85a71984d.
2013-02-08 22:57:37 -06:00
J. Ian Johnson
469a69772c For/product treated like for/sum for special annotation. Also allowed no annotation to be consistent with the docs. 2013-02-08 11:32:21 -05:00
Eric Dobson
19241c0979 Make overlap more precise. 2013-02-08 11:19:10 -05:00
Eric Dobson
c2b8671169 Fix :print-type. Closes PR13503. 2013-02-08 11:19:09 -05:00
Jay McCarthy
cd202f5411 Supporting headers and stateless in web-server/test 2013-02-08 07:01:36 -07:00
Robby Findler
995d4a4704 adjust test cases for recent changes to the lexers 2013-02-07 21:25:02 -06:00
Vincent St-Amour
830db3c908 Add extra tests and warning about -PosIntNotFixnum. 2013-02-07 15:19:42 -05:00
Eric Dobson
9030da217b Make static single flonum checks correct.
Closes PR13499.
2013-02-07 15:19:42 -05:00
Asumu Takikawa
9636a70f8b Add a test for PR 13490
The bug itself was already fixed by Eric Dobson
2013-02-07 13:49:50 -05:00
Robby Findler
4b9d43ce00 unbreak plai random mutator tests 2013-02-07 11:16:04 -06:00
Robby Findler
bb216d142c 2d 2013-02-06 15:55:20 -06:00
Robby Findler
e7e64f4006 a better version of deac3fa2b3
This time with test cases, and also without changing the
semantics of unhighlight-range

related to PR 13488
2013-02-05 20:52:35 -06:00
Danny Yoo
31b66484b3 Add test case to show bug with inflate.
related to PR 13489.
2013-02-05 17:02:21 -07:00
Vincent St-Amour
bf2768f2c5 Allow cast in typed/racket/no-check. 2013-02-05 16:57:42 -05:00
Jay McCarthy
fb915825e9 Allowing PNR to decide which github checksum is used 2013-02-05 07:25:31 -07:00
Matthew Flatt
442f6eaaae fix `regexp-match' variants given a long string and an output port
... again; commit d194fa6245 turned out to be incomplete.
2013-02-05 11:44:38 +01:00
Vincent St-Amour
b42034f98b Exclude the right zeroes when checking for equality. 2013-02-04 14:32:44 -05:00
Vincent St-Amour
568f401bdc Don't special case typechecking of =.
Its type is more useful than the special typing rule.
2013-02-04 14:32:44 -05:00
Vincent St-Amour
ec04467282 Add extra tests for contract generation and float zeroes. 2013-02-04 14:32:44 -05:00
Eric Dobson
e656bdb1c5 Make generated contracts for Floats include NaN.
Closes PR13464.
2013-02-04 14:32:44 -05:00
Robby Findler
ab55d43312 give up on the "find the close paren strategy that doesn't
edit the buffer" attempt

In other words, go back to (a rackety version of) the old
implementation of the get-close-paren method
2013-02-03 11:22:46 -06:00
Robby Findler
25f92f8e9e fix a problem with the way that check syntax's interval map
tracks information about the program
2013-02-02 19:35:09 -06:00
Sam Tobin-Hochstadt
2e8ffe7400 Fix sequence-lift for multiple valued sequences.
Also minor fixups of the rest of `unstable/sequence`.
2013-02-02 18:16:35 -05:00
Robby Findler
8aa3e1d473 another close-paren insertion repair
(this one causes runtime errors, not
bad behavior)
2013-02-02 09:10:17 -06:00
Matthew Flatt
0583616dd7 racket/date: change current-date', add date*->seconds' 2013-02-01 15:00:24 -08:00
Matthew Flatt
f8c7a79b36 fix `raco link' test 2013-02-01 15:00:23 -08:00
Matthew Flatt
c0c2eda628 Scribble: add 'grouper and 'hidden-number part style properties
Also, clean up documentation and implementation of 'unnumbered and
'hidden.
2013-02-01 10:15:53 -08:00
Robby Findler
8aadc03719 more close paren adjustment repairs 2013-01-31 21:11:11 -06:00
Robby Findler
219f9dc358 fix close paren correction code 2013-01-31 15:07:20 -06:00
Vincent St-Amour
5efaa004f0 Fix test for invalid fixnum quotient optimization.
The test depended on fixnum width, which is not portable.
2013-01-29 16:15:00 -05:00
Vincent St-Amour
0bc60a77c8 Improve type of exact? and exact->inexact.
Adapted from a pull request by Eric Dobson.
2013-01-29 12:35:29 -05:00
Vincent St-Amour
32b3dfc528 Fix type of quotient on fixnums.
Closes PR13466.
2013-01-29 12:35:29 -05:00
Eric Dobson
10655a8373 Fix syntax/c. Closes PR13447. 2013-01-29 06:34:51 -06:00
Michael Filonenko
17b8092641 extflonums
An extflonum is like a flonum, but with 80-bit precision and
not a number in the sense of `number?': only operations such as
`extfl+' work on extflonums, and only on platforms where extflonums
can be implemented by hardware without interefering with flonums
(i.e., on platforms where SSE instructions are used for
double-precision floats).

[Patch provided by Michael Filonenko and revised by Matthew.]

The compiler tracks information about bindings that are known to
hold extflonums, but the JIT does not yet exploit this information
to unbox them (except as intermediate results).
2013-01-28 18:17:06 -07:00
chrdimo
e0a7329d86 Merge branch 'master' of pltgit:plt 2013-01-28 19:36:45 -05:00
chrdimo
5348a4d2de fixing docs and tests for maybe/c (old option/c) 2013-01-28 16:55:33 -05:00
Eric Dobson
3c02bb1abb Type check with expected type when checking recursive loops.
Closes PR12678.
2013-01-28 16:03:01 -05:00
Eric Dobson
13ff5883fe Do not update subtype and resolve caches when subtyping.
Closes PR13412.
2013-01-28 15:35:56 -05:00
Robby Findler
c8bee5acf7 disable a broken responsiveness optimization 2013-01-28 10:30:46 -06:00
Sam Tobin-Hochstadt
295bb1e85e Switch to pkg.racket-lang.org. 2013-01-26 15:59:33 -05:00
Robby Findler
e43583c444 make sure the framework tests run with the proper environment 2013-01-26 07:49:14 -06:00
Jay McCarthy
8ce9b4eb10 Adding failing test for submodules in web-server lang 2013-01-25 07:42:05 -07:00
Jay McCarthy
74429db650 Ignoring submodules in web-server lang 2013-01-25 07:42:05 -07:00
Jay McCarthy
545009a48a Catching contract violation error discovered by Danny Yoo 2013-01-25 07:42:05 -07:00
Matthew Flatt
9210437b3f fix internal-definition expansion
The code added to handle expressions mixed with definitions was
not introduced in the right way; fix it to be like macro-introduced
code.

Closes PR 13452
2013-01-25 05:08:46 -07:00
Matthew Flatt
00362a273f fix `string-normalize-nf[k]c' when composed is much smaller then decomposed
For composed normalization, space is initially allocated based on the
decomposed length. The clean up step to avoid wasted space was wrong.
2013-01-24 06:43:10 -05:00
Asumu Takikawa
14c970b490 Fix contract name of parameter/c
Made it more backwards compatible
2013-01-23 21:20:29 -05:00
Eric Dobson
5a43a5c730 Made tc/exprs check its non final terms with the correct type.
Closes PR12974.
2013-01-23 16:41:09 -05:00
Eric Dobson
05e53a0de5 Add tc-any-results as new result-type. 2013-01-23 16:41:09 -05:00
Eric Dobson
aac25b42c9 Make AnyValues but don't actually start using it yet. 2013-01-23 16:41:09 -05:00
Asumu Takikawa
4b279eaf6a Use new parameter/c argument for contract generation
Closes PR 13446
2013-01-23 14:45:59 -05:00
Asumu Takikawa
3ddde6a7e9 Equip parameter/c with separate in/out contracts 2013-01-23 14:45:59 -05:00
Ryan Culpepper
d5fe602131 added #:datum-literals, like #:literals but for ~datum patterns 2013-01-22 21:35:53 -05:00
Vincent St-Amour
193bff7a2b Fix collatz typed benchmark for fix to odd? and even?. 2013-01-18 18:25:19 -05:00
Vincent St-Amour
091e26cde8 Fix TR optimizer tests for TR info logging. 2013-01-18 18:25:18 -05:00
Asumu Takikawa
e1b6e84089 Fix filters on odd? and even?
Closes PR 13233
2013-01-18 18:25:18 -05:00
Asumu Takikawa
688511aec5 Fix year day for srfi/19-produced date*s
srfi/19's `date-year-day` indexes from 1 and Racket
indexes from 0.
2013-01-18 15:48:11 -05:00
Matthew Flatt
48e0509381 add `file-truncate' 2013-01-18 11:03:46 -06:00
Asumu Takikawa
7e679597f1 Update srfi/19 for latest leap seconds
Closes PR 13390
2013-01-18 10:44:58 -05:00
Jay McCarthy
850069ec83 Adding test for lex-name change 2013-01-18 06:35:52 -07:00
Asumu Takikawa
28d46105c9 Add tests for PR 13094.
The bug itself was fixed already when ordinary
type variable scoping was fixed.

Closes PR 13094
2013-01-15 15:44:34 -05:00
Sam Tobin-Hochstadt
b6564980ab Typed modules as languages doesn't currently work. 2013-01-14 14:27:33 -05:00
Asumu Takikawa
1ae216ec94 Delete trailing whitespace 2013-01-14 10:35:44 -05:00
Asumu Takikawa
8d1c56cb6f Rackety 2013-01-14 10:35:44 -05:00
Asumu Takikawa
d406e2db57 Make srfi/19 compatible with date* structs
- srfi/19 functions now produce and accept date*s
 - some functions produce lax-dates for backwards compat.
2013-01-14 10:35:43 -05:00
Ryan Culpepper
1109e0f86d fix rounding in ~r, docs
Merge to 5.3.2.
2013-01-13 15:52:08 -05:00
Matthew Flatt
b5d874e35d raco pkg: allow read operations on read-only package data
In particular, `raco pkg show' should work when the user does not
have write access to the installation directory or installation-wide
package database.

Merge to v5.3.2
2013-01-13 07:56:46 -07:00
Asumu Takikawa
2ac6615da9 Use correct parent for date* in makeexn
Please merge to 5.3.2
2013-01-11 21:22:20 -05:00
Matthew Flatt
5ab048bb5c scribble/decode: fix contract on `decode-compound-paragraph'
Add a test suite that at least tries each export of `scribble/decode'.

Merge to v5.3.2
2013-01-09 18:52:16 -07:00
Greg Hendershott
4d3a5bad04 Use Racket lexer for code blocks.
Had been specifying Scheme lexer for code blocks, while waiting for
new Racket lexer to wend its way from Pygments to Pygments.rb to
Linguist to GitHub.

That day is almost here: Linguist will soon update and deploy to
GitHub.  And Racket 5.3.2 is about to release.  As a result, I think
this is the correct time to switch to the Racket lexer: It should be
live on GitHub by the time people are using Racket 5.3.2.

/cc @rmculpepper -- I think this commit should go into the 5.3.2
release.
2013-01-09 18:52:16 -07:00
Asumu Takikawa
c5c6280d87 Change exception predicate for a test
For some reason, the other predicate breaks on some
test setups, even though it usually succeeds.

Please merge to 5.3.2
2013-01-09 18:12:45 -05:00
Asumu Takikawa
f577b49a4d Fix polydots
- parsing of polydots values was fixed
 - certain polydots error cases are now reported
 - the custom application rule for values was fixed

Closes PR 13365

Please merge to 5.3.2
2013-01-09 18:12:45 -05:00
Jay McCarthy
9d4e47a96e Update URLs again to r-l.o domain 2013-01-09 06:31:02 -07:00
Asumu Takikawa
27d3042ad6 Use correct contract for Procedure type
The only problem with this contract is that it does
not produce a very good error message
2013-01-08 20:03:16 -05:00
Asumu Takikawa
9c0a611b59 Disallow duplicate type variable declarations
Closes PR 13416

Please merge to 5.3.2
2013-01-08 14:50:08 -05:00
Jay McCarthy
b0f3f03412 Removing exotic ports for PNRs 2013-01-08 07:42:51 -07:00
Ryan Culpepper
929f37df62 fix db test script 2013-01-07 19:52:51 -05:00
Vincent St-Amour
057a2bd0d2 Extend type of min to preserve fixnumness. 2013-01-07 17:00:32 -05:00
Robby Findler
84c0208d99 add check for number of result values in ->i (that signals blame)
closes PR 13417
2013-01-07 11:04:24 -06:00
Matthew Flatt
e66cd6f9c7 raco exe: yet another submodule repair
Closes PR 13410
2013-01-05 09:12:47 -07:00
Robby Findler
d53d3c3528 try to make this test's timing better behaved 2013-01-04 16:59:00 -06:00
Matthew Flatt
67f0af387b fix problems with single-flonum (versus flonum) results
The problems were with

 * `sqrt' and `expt' on single-flonum complex numbers
 * `asin' and `acos' on single-flonum arguments and complex results
 * `atan' on mixtures of single-flonum and exact arguments
 * `gcd' on mixtures of single-flonum and flonum arguments
2013-01-04 08:00:24 -07:00
Matthew Flatt
43e01d7f4e rename test file
":" is not allowed in a file name on Windows.
2013-01-02 06:33:10 -07:00
Matthew Flatt
3c5135fc7a `expt' repair, again
Previous repair wasn't general enough; negative powers can also
go wrong.
2013-01-01 18:05:37 -07:00
Vincent St-Amour
678451f8c4 Fix tests. 2013-01-01 18:14:52 -05:00
Vincent St-Amour
4137eb9e73 Make let: annotations optional. 2013-01-01 18:14:52 -05:00
Matthew Flatt
07d5a9e385 fix `expt' on small negative number and large positive odd
The pow() function apparently gets it wrong on some platforms.

Closes PR 13391
2013-01-01 12:33:59 -07:00
Matthew Flatt
cdfc4912ad racket/base: add exn:fail:filesystem:errno and exn:fail:network:errno
Provide raw error codes when available, which is mostly from filesystem
and networking primitives.
2012-12-31 12:04:03 -07:00
Matthew Flatt
f2d870859a logging: allow name in `log-message', report it in a log-receiver evt
The synchronization result of a log receiver is now a vector of four
values, instead of three, where the last one reports the name.

Also, an optional argument to `make-logger' provides a notification
callback for each event sent to the logger.

These changes enable more control over loggers and events. Suppose
that you have processes A and B, and you want all log events of A
to be visible to B, but not vice-versa. Furthermore, you want the
log events to appear at B in the right order: if A logs an event
before B, then A's event should arrive at a log receiver's before
B's. Now that a log receiver gets the name associated with the
original event, and now that the name can be re-sent in a
`log-receiver', it's possible to give A and B separate loggers and
send all of the events from A's logger to B's logger. Furthermore,
you can use the notification callback so that when an event is logged
in B, you can make sure that all available events from from A's
logger have been transferred to B's logger.
2012-12-27 14:12:40 -06:00
Robby Findler
a412ab8411 add a basic test of the logger GUI 2012-12-27 10:23:48 -06:00
Robby Findler
f6805ea0c2 remove fancy delay dance around load-collections-xref 2012-12-26 22:37:45 -06:00
Matthew Flatt
c162657685 racket/class: fix interaction of class/c' and send-generic' 2012-12-25 07:20:57 -06:00
Robby Findler
1298c11d2f adjust find-string in text% so it doesn't allocate as many temporary strings
Also, Rackety
2012-12-24 23:35:12 -06:00
Asumu Takikawa
f3fa5d1669 More precise syntax errors for let and friends 2012-12-24 16:50:58 -05:00
Robby Findler
6a69da76e2 adjust ascii-box => unicode-box algorithm so that
it only looks left and right at hyphens and only
up and down at pipes, etc. This better handles the
case where you have something like this:

  +--------------+
  | (<= a-x b-y) |
  +--------------+

Before this commit, it would have adjusted the hypens
inside the identifiers
2012-12-24 13:49:32 -06:00
Robby Findler
042bbbefe7 add an ASCII art rectangle => unicode rectangle keybinding to drracket 2012-12-24 11:38:54 -06:00
Matthew Flatt
4a57db4448 add (system-type 'word)
Returns 32 or 64 to indicate whether Racket is running as a
32-bit program or a 64-bit program.
2012-12-24 06:38:53 -07:00
Robby Findler
58e15cc2c7 fix tests for the "class:"-less object-name results 2012-12-22 18:25:43 -06:00
Robby Findler
b112a7ef0a adjust object-name on classes and interfaces to drop the prefix
Before this commit, things like this:

  (define c% (class object% (super-new)))
  (object-name c%)

would produce

   'class:c%

but now classes and interfaces will be more like procedures and, in
the example above, just produce:

   'c%

The underlying goal is to make error messages generated from contracts
like

  (is-a?/c frame%)

have "(is-a?/c frame%)" in the message, instead of "(is-a?/c
class:frame%)"
2012-12-22 15:00:54 -06:00
Matthew Flatt
1545ed42c8 racket/draw: fix problem with concurrent PNG read and write
Same memory-management mistake as for the JPEG binding.
2012-12-22 09:43:20 -07:00
Matthew Flatt
fdcd030e54 raco pkg show: tweak output format 2012-12-22 09:43:19 -07:00
Matthew Flatt
0e140a8173 planet2: versions for dependencies 2012-12-21 11:51:08 -07:00
Matthew Flatt
bfe9548aa6 planet2: "package name service" => "package name resolver" 2012-12-21 11:51:08 -07:00
Greg Hendershott
faeba879e2 Fix bug with pound signs used to mark sections.
Also update tests/scribble/markdown-docs files accordingly.
2012-12-19 19:32:00 -07:00
Greg Hendershott
a3800cdc94 Render Scribble margin-note as Markdown block-quote.
More precisely, do this for nested flows with the "refcontent" style.

For instance this Scribble:

    @margin-note{Note: This is a note. Let's make it long enough that the
    markdown output will have to line-wrap, to make sure the > mark starts
    each line properly.}

Will render as this Markdown:

    > Note: This is a note. Let's make it long enough that the markdown output
    > will have to line-wrap, to make sure the > mark starts each line
    > properly.

A site like GitHub.com will render this in a block-quote style
suitable for notes:

> Note: This is a note. Let's make it long enough that the markdown output
> will have to line-wrap, to make sure the > mark starts each line
> properly.
2012-12-19 19:31:15 -07:00
Matthew Flatt
aa08a68424 add phantom byte strings
A phantom byte string is a small object that the memory
manager treats as an arbitrary-sized object, where the
size is specified when the phantom byte string is created
or or when size is changed via `set-phantom-bytes!'.
2012-12-19 18:42:14 -07:00
Vincent St-Amour
67af968a73 Add failing test case for instantiation and special typing rules. 2012-12-19 13:45:49 -05:00
Asumu Takikawa
acda049f7d Add define: form variant for polymorphic non-function values 2012-12-19 13:08:41 -05:00
Matthew Flatt
c5c5e6959d racket/draw: fix memory-management problems with JPEG binding 2012-12-19 11:07:48 -07:00
Matthew Flatt
4fc71951ee change subprocess handling to avoid waitpid(0, ...)
Keep track of whether any Racket-managed subprocesses are pending,
and use waitpid(0, ...) only if there is one, to better cooperate
with an embedding environment.

Also, add a chapter to the "Inside" manual to explain the issues.
2012-12-19 08:54:32 -07:00
Matthew Flatt
d88e26d7a1 racket/date: fix 'iso-8601 formatting
Closes PR 13372
2012-12-18 06:39:59 -07:00
Jay McCarthy
1b41456c7f Adding a test case for post bindings and improving error message 2012-12-17 16:28:46 -07:00
Vincent St-Amour
8c66be33e7 Fix contract generation for functions with optionals and keyword arguments.
Closes PR13354.
2012-12-17 13:57:32 -05:00
Vincent St-Amour
ec673fd58d Allow #:unless' in for:'.
Also allow `#:break' and `#:final' in all the `for:' macros.

Unfortunately, the expansion of `#:break' and `#:final' cannot be
typechecked at the moment.
2012-12-17 13:57:31 -05:00
Matthew Flatt
b8b8260379 net/url: add `current-url-encode-mode'
Changing `current-url-encode-mode' from 'recommended to 'unreserved
causes `url->string' to encode !, *, ', (, and ) using %, which
can avoid confusing some parsers.

See also https://github.com/plt/racket/pull/198
2012-12-17 06:56:38 -07:00
Matthew Flatt
3d1f1289ef net/uri-codec: added `uri-path-segment-unreserved-encode' 2012-12-17 06:32:59 -07:00
Ryan Culpepper
a2ae813739 replace db's sql-bits with data/bit-vector 2012-12-16 22:39:02 -05:00
Ryan Culpepper
810d07d8d5 added bit-vector <-> {string,list} operations 2012-12-16 22:29:43 -05:00
Ryan Culpepper
e4da3edeec fix popcount bug in bit-vector 2012-12-16 22:29:43 -05:00
Ryan Culpepper
28f1d4ff5d make argument order of heap-sort consistent with sort
Old order is also accepted for backwards compatibility.
2012-12-16 22:29:43 -05:00
Matthew Flatt
22f9c8509f fix optimizer bug, again
Corrects ef824351a1.
2012-12-16 16:04:19 -07:00
Matthew Flatt
ef824351a1 fix optimizer bug
Moving an expression that is referenced through a level of copy
propagation did not fix up a nested static distance correctly.

Closes PR 13355
2012-12-16 13:11:57 -07:00
Asumu Takikawa
2676beaa7c Make integer-sets implement generic interfaces
Supports gen:stream, gen:equal+hash, gen:custom-write
2012-12-14 16:21:07 -05:00
Asumu Takikawa
891ee1b19e Fix missing set-integer-set-contents!
Closes PR 13368

This was a MzScheme -> Racket transition issue. Also
added tests and fixed some docs as well.
2012-12-14 10:56:29 -05:00
Matthew Flatt
5baf63f821 syntax-local-get-shadower: fix interaction with marked bindings
Getting a shadower should not drop module context if the context
determines a binding that has marks.
2012-12-13 19:34:32 -07:00
Asumu Takikawa
ece218fc85 Rackety 2012-12-13 17:54:58 -05:00
Asumu Takikawa
13b831f0ec Fix unsound type variable scoping
Closes PR 13123
2012-12-13 17:54:58 -05:00
Asumu Takikawa
28108884ab Fix tests where type variable scoping is wrong 2012-12-13 17:54:58 -05:00
Matthew Flatt
e0de33a005 net/ftp: make progress proc keyword, change progress protocol
The revised protocol for a progress procedure doesn't create
the thread automatically, and it provides an event to indicate
when the progress count changes.
2012-12-13 07:45:26 -07:00
Chenxiao
4cc287f7e5 Improve ftp client. Add upload, progress monitor and something else. 2012-12-13 07:09:04 -07:00
Greg Hendershott
00a5bf63b1 Render italic and bold in Markdown.
Scribble => Markdown
  @bold{text}    **text**
@italic{text}     _text_
2012-12-12 20:58:44 -07:00
Matthew Flatt
dd5b999c64 fix `quasisyntax' to better preserve syntax properties
Closes PR 13357
2012-12-12 08:34:19 -07:00
Greg Hendershott
dbffc840a9 Render @hyperlink in Markdown.
Render Scribble like

    @hyperlink["url" "content"]

as Markdown like

    [content](url)

Note that this only works for `@hyperlink`. The motivation is to
preserve content the author has explicitly written. (Previously,
`markdown-render.rkt` was discarding this; `text-render.rkt` still
does so.)

This does _not_ attempt to handle everything that `html-render.rkt`
would automatically generate and render as `<a>`. It simply can't --
things like hotlinked Racket keywords in code blocks simply won't work
in Markdown.
2012-12-11 12:40:54 -07:00
Jay McCarthy
9a0e948a58 Fixing regression re path restriction patch 2012-12-11 10:47:54 -07:00
Jay McCarthy
b843a45cd8 Fixing in an error in how paths that went outside the filesystem to
URL map were handled.

Previously, only ".." at the beginning of the URL were checked; now it
looks at the entire URL for a path that ultimately leaves the base.
2012-12-10 11:54:31 -07:00
Greg Hendershott
6aa6dc0400 Add a Markdown rendering mode to Scribble.
Uses "Github flavored markdown". Specifically, code blocks are opened
using ```scheme so that Github will lex and format them as Scheme code
rather than generic monospace.

Note: I would have used ```racket, but we are still waiting for the
pygments.rb project to pull again from pygments-main -- to which I
contributed a Racket lexer back in August. After pygments.rb pulls,
can update this to use ```racket instead.
2012-12-09 15:17:36 -07:00
Matthew Flatt
5b016b4c32 win32: support MinGW build
A MinGW build is the same shape as a MSVC build (but without
MzCOM), unlike a Cygwin build.
2012-12-09 11:26:02 -07:00
Robby Findler
8907daf65f make the queue-callback/res function queue low-priority callbacks
This should have been like this all along; I think it can lead to
race-conditions with high-priority events. In particular, something
might be pending in the event queue and then the test suite might
queue a high-priority event to check for it, which could happen before
the event that actually does the work that's being checked for!
2012-12-09 08:55:09 -06:00
Jay McCarthy
9b9a2f4280 Make simplified P2 index to remove dep on meta 2012-12-08 09:09:40 -07:00
Jay McCarthy
1b6c4f0e72 Disabling the other screen->client call on X, re: DrDr 2012-12-08 09:09:40 -07:00
Jay McCarthy
1d36492f51 Remove build location from the test zo to satisfy zo-path 2012-12-08 09:09:40 -07:00
Jon Zeppieri
8489448e42 ffi: fix prop:cpointer so that it works with a procedure value 2012-12-07 06:43:30 -06:00
J. Ian Johnson
a193cd9efb Peephole optimization for iterating over an empty set (no allocation). 2012-12-07 06:39:27 -06:00
Matthew Flatt
4721a79c8f define-logger: make (define-logger X)' define X-logger' 2012-12-07 06:36:31 -06:00
Matthew Flatt
ea79cc4417 benchmark noise
Remove an unnecessary manual unrolling
2012-12-07 06:36:31 -06:00
Matthew Flatt
a6eb219305 avoid spurious arity mismatch in {s,n}boyer benchmarks 2012-12-07 06:36:31 -06:00
Neil Toronto
f607a3b061 Added stress test: libmpfr C struct accessor vs. Racket struct accessor 2012-12-06 22:52:22 -07:00
Vincent St-Amour
cc8bd4f294 Make srclocs serializable. 2012-12-06 17:53:04 -05:00
Asumu Takikawa
c7162ec533 Fix TR error for missing mandatory keywords 2012-12-06 12:20:54 -05:00
Matthew Flatt
fc7fa68039 remove test for removed library
And remove the `props' entry again.
2012-12-05 11:18:02 -06:00
Matthew Flatt
64f0273829 fix printing problem with flvectors 2012-12-05 05:56:59 -06:00
Nadeem Abdul Hamid
c0a412ed0e fix close parens behavior in interactions and comments 2012-12-04 20:39:10 -06:00
Vincent St-Amour
9a5db10124 Fix tests. 2012-12-04 19:29:16 -05:00
Vincent St-Amour
fb73bc8b0e Fix partial bounds checking elimination.
Closes PR13341.
2012-12-04 19:29:16 -05:00
Asumu Takikawa
5802b42f66 Support path/object reasoning for promises 2012-12-04 18:03:11 -05:00
Asumu Takikawa
3f2d4663a8 Fix call/comp's type 2012-12-04 16:10:39 -05:00
Matthew Flatt
bd1a63a43a racket/pretty: fix `print' mode for fxvectors and flvectors
Closes PR 13340
2012-12-03 22:44:21 -07:00
Vincent St-Amour
ee0a1d4b89 Randomly test the TR optimizer.
Compares results of a Racket and a TR sandbox.
2012-12-03 21:54:01 -05:00
Matthew Flatt
adee7494b4 fix printing test
I missed some test updates with the fxvector/flvector change to
printing.
2012-12-03 18:57:53 -07:00
Vincent St-Amour
9f9092b762 Fix optimization of unary float subtraction.
Closes PR13339.
2012-12-03 19:46:29 -05:00
Asumu Takikawa
0252207e38 Support Any wrapping for promises
Closes PR 13326
2012-12-03 17:59:55 -05:00
Matthew Flatt
9e8477dd45 racket/serialize: serialize fxvectors and flvectors 2012-12-03 10:42:35 -07:00
Matthew Flatt
9cf821b301 disallow #fx()' and #fl()' notation in `read-syntax' mode
Allowing them would require support for immutable fxvectors and
flvectors, interning, and more. Since the motivation for reader
support is to make marshaling and unmarshaling easier, allow
them only in `read' mode. Change printing to make then unquotable.
2012-12-03 10:42:35 -07:00
Kevin Tew
492167c23f read and write support for fxvectors and flvectors 2012-12-03 10:42:35 -07:00
Ryan Culpepper
5470899d6e fix shadowing (caused unwanted state threading)
closes PR 13327
2012-12-01 11:17:13 -05:00
Robby Findler
17c3203ae4 the test case should have been checking for 6 builds all along.
Not sure why it only saw 4 in the past but now it properly sees all 6
so we just change the expected result.
2012-12-01 10:11:44 -06:00
Matthew Flatt
7b3bb4a3ba make splicing-syntax-parameterize' work with begin-for-syntax'
More generally, a `splicing-syntax-parameterize' wrapping immediate
compile-time code effectively parameterizes the compile-time code as
well as any macro-triggered compile-time code. This is implemented by
using a compile-time parameter that complements each syntax binding.
2012-12-01 08:12:33 -07:00
Ryan Culpepper
05e7e61d85 added #:option to start-transaction, call-with-transaction 2012-12-01 01:33:56 -05:00
Matthew Flatt
b83804c153 raco pkg: normalize error reporting
Use `raise-user-error' for `raco pkg ...' errors, so that stack
traces don't print out for external errors. Reformat error messages
generally to match current conventions. Use logging for debugging
output.
2012-11-30 19:09:19 -07:00
Matthew Flatt
59f289249f raco pkg: user-specific and version-specific by default
The default `raco pkg' mode should work right for a
multiple-version installation (because everything in
Racket should work in a multiple-version installation).
Along the same lines, `raco pkg' should work if the
installation directory is unwriteable. So, the default
mode is user-specific and version-specific.

Use `--shared' or `-s' for user-specific, all-version
installs.

By default, `raco pkg show' now shows packages installed
in all three modes (installation-wide, user- and version-
specific, and user-specific all-version). Use `-i', `-u',
or `-s' to show just one of them.
2012-11-30 19:09:19 -07:00
Matthew Flatt
381d9d84d6 raco pkg: switch from "METADATA.rktd" to "info.rkt"
For now, "METADATA.rktd" is still recognized as a fallback.

Also, rewrite package source type and name inference,
make ".zip" the default format for `raco pkg create',
and many doc edits.
2012-11-30 19:09:19 -07:00
Asumu Takikawa
a42cc9a001 Add more tests for continuation marks & Any wrapping 2012-11-30 17:37:33 -05:00
Asumu Takikawa
904db66f65 Rename control types to be consistent with other types 2012-11-30 17:37:33 -05:00
Asumu Takikawa
4e0b38ea79 Improve type of call-with-continuation-prompt
Now works with the handler argument omitted, in which case
the default handler is used. Note that the default handler
cannot be used in conjunction with the default prompt tag
because it is unsound to do so.
2012-11-30 17:37:33 -05:00
Asumu Takikawa
42b07475e9 Apply Any wrappers for default-continuation-prompt-tag in TR 2012-11-30 17:37:33 -05:00
Asumu Takikawa
d6b0c71a91 Fix up old TR tests that should fail now 2012-11-30 17:37:33 -05:00
Asumu Takikawa
3ed1d56b05 Add new tests for typed control 2012-11-30 17:37:33 -05:00
Matthew Flatt
cbe0831956 fix problem with re-expansion and renamed imports 2012-11-30 07:26:52 -07:00
Asumu Takikawa
d7163142be Forgot to add the test for commit b4dd3b5e1d
Relevant to PR 13209
2012-11-30 00:12:35 -05:00
Matthew Flatt
6bfc03d625 add tests for in-list', in-mlist', and `in-set' shortcut 2012-11-29 06:57:34 -07:00
Matthew Flatt
15cbfa1947 `raco pkg': fixes for package source inference and handling
Also, test additions and documentation adjustments.
2012-11-29 06:43:51 -07:00
Jens Axel Søgaard
07b8507ce9 Rename to bit-vector-popcount 2012-11-28 22:04:25 +01:00
Robby Findler
a5961dcf36 make the drr log follower show its results in a separate window 2012-11-27 22:56:44 -06:00
Jens Axel Søgaard
64f64a3607 Added bit-vector-count 2012-11-27 21:53:30 +01:00
Philippe Mechai
201534b7ad Added path->url tests for directory paths
This check that no regression was introduced with 733d95b.
2012-11-27 08:46:40 -07:00
Matthew Flatt
4ed45a6aef data/bit-vector: some adjustments for consistency
Change `bit-vector-count' to `bit-vector-length', add arguments
to `bit-vector-copy', use `racket/private/vector-wraps' (which
should be moved to a public place) to implement things like
`for/bit-vector'.
2012-11-27 07:26:39 -07:00
Jens Axel Søgaard
028d14a877 Initial import of bit-vectors 2012-11-27 07:26:39 -07:00
Matthew Flatt
c0abe85d30 make case' in r5rs' and r6rs' still use eqv?'
Also, make both `case' and `cond' disallow internal definitions,
instead of inheriting the `racket' behavior.
2012-11-26 19:49:36 -07:00
Jon Zeppieri
486e95049f change 'case' to use equal? 2012-11-26 17:58:04 -07:00
Nadeem Abdul Hamid
8f3343cd01 automatic parenthesis mode improvements
Handle close parentheses in a smarter way while in
auto-parens mode and be a little more smart about
inserting brace pairs in general.

In summary:

 - Add some "smart-skip" behavior to insert-close-paren,
   described in the documentation.
    - When auto-parens mode is enabled,
      the existing "balance-parens" keybinding invokes
      insert-close-paren with a smart-skip argument of
      'adjacent
    - A new "balance-parens-forward" keybinding invokes
      insert-close-paren with a smart-skip argument of
      'forward (whether or not auto-parens mode is
      enabled)

 - Enable basic smart-skip behavior for
   strings ("...") and |...| pairs, specifically, typing
   a double-quote or bar character when the cursor
   immediately precedes one causes the cursor to simply
   skip over the existing one

 - Tweak auto-insertion of block comment pairs; i.e.
   typing hash and a bar results in a properly balanced
   #||# pair. Also, when you type a bar character when
   the cursor immediately precedes a closing bar and
   hash of a comment, then the cursor skips over both
   characters (this seems better than having it just
   skip over the bar, and then having to introduce a
   new keybinding to detect when a hash is typed while
   the cursor is between a bar and a hash)

 - In strings and line/block comments, auto-parens mode
   no longer has any effect (you can still use the M+..
   keybindings to force insertion of a particular brace
   pair)

 - Detect when a character constant is being typed, and
   don't insert brace pairs if so; i.e. if the cursor
   is immediately after #\ , then typing any open parens,
   double quote, or bar, does _not_ result in the
   insertion of an open/close pair even in auto-parens
   mode

 - Add a bunch of tests related to auto-parens, matching
   pairs of braces, strings, comments, etc. to
   collects/tests/framework/racket.rkt
2012-11-25 21:57:52 -06:00
Robby Findler
5197649cb7 improve the interactivity of DrRacket's search
Changes the implementation of highlight-range so that it
only recomputes all of the new locations from the positions
when on-reflow is called (otherwise only computing the
relevant ones) and make the on-reflow callback chop itself
up, in case there are lots of highlighted ranges to avoid
tying up the event loop.

Changes searching so that it doesn't neccessarily compute
the entire search results in a single event callback
(but also make it start the computation more aggressively)

Overall, this changes the strategy from one that, for any potentially
long-running callback, just tried to push it off into the future, into
a strategy that tries to avoid long-running callbacks by breaking the
work up into chunks, but starting the first chunk immediately (in a
low-priority callback).

Also, misc other changes to make this work better and generally clean
things up.
2012-11-25 20:58:13 -06:00
Eli Barzilay
dd9d85feec Cleanup junk files in a bunch of racket tests. 2012-11-24 16:37:36 -05:00
Jay McCarthy
34d2c7b263 Removing usable of lib paths and collection paths in Web server re: Planet 2 extensions 2012-11-24 09:22:14 -07:00
Matthew Flatt
a73dc50224 break cross-reference info for document into pieces
For example, the cross-reference information for the
Reference is now broken into about 16 pieces, so that
resolving a cross-reference into the Reference doesn't
require loading all cross-reference information for
the Reference.

Every document is split into two pieces, so that the title
of a document is roughly in its own piece. That way,
re-building the page of all installed documentation can be more
scalable (after some further changes).
2012-11-23 18:44:51 -07:00
Matthew Flatt
9f5324b754 fix quoted submodule path in `all-from-out' 2012-11-23 08:30:01 -07:00
Matthew Flatt
4e0fac0477 JIT: fix allocation of came-lambda closures over flonums
Also, clean up code and assumptions related to fixnum-producing
functions and unboxing (not related to the bug).
2012-11-23 08:20:05 -07:00
Matthew Flatt
961f5e40bf fix untagged cpointer as place-channel message
(repair by Kevin)

Closes PR 13282
2012-11-23 08:20:05 -07:00
Robby Findler
475822b44a fix a bug in a syntax-case keywords spec
closes PR 13237 (turns out not to be planet-specific)
2012-11-22 13:54:32 -06:00
Robby Findler
98633665b3 extend data/queue library
- add enqueue-front!

- add queue-filter!

- use the predicates instead of the /c contracts

- make queue-length take constant time

- add some random tests

- note the running times of all of the operations in the docs

- make queues be sequences directly (and use make-do-sequence
  to implement in-queue instead of building a list)

- added non-empty-queue? (note extra hypen as compared
  to the past; this seems better since the function
  wasn't exported before and we already have other
  functions named "non-empty-<something>" but not
  others namedn "nonempty-<something>")
2012-11-21 11:10:02 -06:00
Robby Findler
ac7c37812b fix dequeue! to actually not hold onto queue elements
(the comments on line 11-13 said that it did this already,
but it didn't)

also add a test case to be sure that it stays this way
2012-11-21 11:10:02 -06:00
Vincent St-Amour
95d51fc892 Add new versions of for/hash: and co that the typechecker can handle.
Based on Eric Dobson's implementation.

Closes PR13248. Closes PR13249.
2012-11-20 17:45:15 -05:00
Vincent St-Amour
e2007abd7a Heterogenous -> heterogenEous.
Found by Ray Racine.
2012-11-20 17:06:51 -05:00
Vincent St-Amour
d994ba1914 Fix types of variable arity functions to work with 0-argument return values.
Closes PR13218.
2012-11-20 16:15:20 -05:00
Matthew Flatt
8a77d87a30 add file/unzip
Based on Dave Herman's "zip.plt" Planet package.
2012-11-20 10:12:27 -07:00
Joe Gibbs Politz
e264e41488 Add check-match to rackunit
check.rkt:
  Added the actual check-match macro.

test.rkt:
  Just a provide statement

check-test.rkt:
  7 additional tests for check-match, and a macro to help create tests

check.scrbl:
  Documentation and examples for check-match
2012-11-20 13:02:31 -05:00
Matthew Flatt
0f47069f98 add file/untgz 2012-11-19 17:01:01 -07:00
Matthew Flatt
3a76581a36 add file/untar 2012-11-19 17:01:00 -07:00
Vincent St-Amour
6a7b971cd6 Only generate ->* contracts when arguments are really optional arguments.
Closes PR13274.
2012-11-19 17:35:07 -05:00
Vincent St-Amour
bdfd7f8d6f Add -d0 flag to Chicken benchmarks.
Recommended by Mario Goulart.
2012-11-19 17:35:07 -05:00
Vincent St-Amour
29cfc48c5e Fix citation disabiguation when authors differ. 2012-11-19 17:35:07 -05:00
Matthew Flatt
702df4b07a racket/gui/dynamic: make gui-dynamic-require' pull from racket/gui/base'
It was pulling from `scheme/gui/base', instead. The one from `scheme/gui/base'
is now different and still pulls from `scheme/gui/base'.

This could break some programs that accidentally depended on `scheme/gui/base'
exports from `gui-dynamic-require', but it's more likely to fix problems.
2012-11-19 08:13:48 -07:00
Matthew Flatt
d90fbaeff4 scheme/gui/base: fix module-attach problem in `make-gui-base-namespace'
The `scheme/base' module had become unreachable from the `mred' module.
While that normally would be a good thing, it lead to troublesome
multiple instantiations of `scheme/base' that caused problems for
attaching further modules to the namespace.
2012-11-19 07:56:48 -07:00
Matthew Flatt
be4ce3ed66 skip some unneeded fixnum tests in JIT-generated code 2012-11-18 10:31:20 -07:00
Matthew Flatt
c3cd089758 fix error message for `map', etc. on arity mismatch
Closes PR 13244
2012-11-16 14:10:32 -07:00
Robby Findler
12e8332c55 move follow-log.rkt to tests/drracket 2012-11-16 07:26:38 -06:00
Matthew Flatt
a89963d0a8 remove unneeded "info.rkt"
It's not needed, and it also overrides the enclosing `omit-compiled-paths'
specification, which in turn triggers a failure of the "zo-path.rkt" test.
2012-11-15 07:03:24 -07:00
Matthew Flatt
ed89b32de4 fix argument checking of semi-inlined `continuation-mark-set-first'
Closes PR 13256
2012-11-15 07:03:24 -07:00
Robby Findler
8a45494872 make drracket's test util use a relative path for things
inside the same collection so this file can (when other
things aren't too different) be used in a version of racket
that doesn't generally have the tests
2012-11-15 07:49:04 -06:00
Robby Findler
bfa6f374ff test that you can use flat-named-contract with a contract
that already has a name (and get the new name)

closes PR 8050 -- this PR was fixed at some point in
the past; this commit just adds a test case
2012-11-15 07:49:03 -06:00
Matthew Flatt
719ada1baa fix benchmark on empty input 2012-11-15 06:18:05 -07:00
Matthew Flatt
bdf1c3e165 bytecode compiler: generalize local-type tracking for unboxing
Track fixnum results in the same way as flonum results to enable
unboxing, if that turns out to be useful. The intent of the change,
though, is to support other types in the future, such as "extnums".

The output `raco decompile' no longer includes `#%in', `#%flonum',
etc., annotations, which are mostly obvious and difficult to
keep in sync with the implementation. A local-binding name now
reflects a known type, however.

The change includes a bug repair for he bytecode compiler that
is independent of the generalization (i.e., the new test case
triggered the old problem using flonums).
2012-11-14 19:37:01 -07:00
Matthew Flatt
447db085dc benchmark improvement
Hash to a box, because finding and updating a box is faster than
updating a hash-table entry.
2012-11-14 19:17:42 -07:00
Matthew Flatt
91a5347d5b JIT: push alternate target-register handling into inlined code
This change streamlines generated code slightly.

New release checklist item: double-check by building with
TEST_ALTERNATE_TARGET_REGISTER.
2012-11-14 19:17:42 -07:00
Ryan Culpepper
ab88a2a9bd add table-based db tests
Allows testing for mysql char type (see previous commit comment)
2012-11-14 20:40:52 -05:00
Ryan Culpepper
4cdcfd6a3b improve db tests 2012-11-14 18:30:03 -05:00
Jay McCarthy
f5995ec0cc Removing default from 'raco pkg create' 2012-11-12 12:03:40 -07:00
Jay McCarthy
a2b1d4186b Requiring -a on 'raco pkg update' to update all packages 2012-11-12 12:03:40 -07:00
Robby Findler
9ad93eaa2d update drracket tests to the new name of
the top radio button in the language dialog
 # Please enter the commit message for your changes. Lines starting
2012-11-11 20:13:25 -06:00
Matthew Flatt
6b16679b39 fix `lazy-require' in phase levels other than 0
The `lazy-require' form expands to `define-runtime-module-path-index',
whch doesn't work right at phase levels other than 0. Work around the
problem by generating a submodule to hold the
`define-runtime-module-path-index' form.

This repair fixes `raco exe' on certain uses of `match', which in turn
uses `lazy-require' at compile time.

Also, use `register-external-module' to generate appropriate
dependencies on lazily loaded modules.
2012-11-11 09:38:16 -07:00
Matthew Flatt
a6cfe3d5fb fix `resolve-module-path-index' when w.r.t. is submodule
A submodule path on the w.r.t. path was incorrectly (in most
cases) added to the resolved path.
2012-11-11 09:38:15 -07:00
Matthew Flatt
9c4cfdecc4 fix problem with require' inside begin-for-syntax'
The dependency wasn't recorded under the right phase.
2012-11-11 09:38:15 -07:00
Matthew Flatt
4ca7e6bc77 ffi/unsafe: fixes related to `define-cstruct' and properties
Fix the binding context for property and property-value
expressions. Propagate wrappers (and therefore properties)
to cstruct subtypes.
2012-11-11 09:38:15 -07:00
Matthew Flatt
b223ad2d90 x86_64 JIT: use 32-bit jumps until forced to allocate far away
The JIT was pessimistically using 64-bit jumps for long branches
or any jump between code that is allocated at different times.
Normally, though, code allocation stays within the same 32-bit
range of the heap, so stick to 32-bit jumps until forced by
allocation addresses to use 64-bit jump targets.
2012-11-11 09:38:15 -07:00
Asumu Takikawa
90f6f1b300 Adjust benchmark test driver for TR 2012-11-10 19:28:56 -05:00
Asumu Takikawa
7c5db431a0 Add typed version of collatz benchmark 2012-11-10 19:28:56 -05:00
Asumu Takikawa
b4a98af319 Fix whitespace in test 2012-11-10 12:03:47 -05:00
Asumu Takikawa
d22532db16 Fix Custodian type 2012-11-10 11:12:06 -05:00
Claire Alvis
2f426943f0 Implementation of #:defaults keyword for define-generics 2012-11-09 20:14:56 -05:00
Asumu Takikawa
daca1c0d5b Fix a free variance bug
Commit ffe45ecce had introduced a regression with some
polymorphic functions imported between typed modules due to
miscommunicated variance information.
2012-11-09 01:43:57 -05:00
Jay McCarthy
fae660b0e4 Release Planet 2 (beta)
This was developed in a different repository, so the history will be
archived there:

https://github.com/jeapostrophe/galaxy
2012-11-08 06:16:42 -07:00
Matthew Flatt
7b04571fac racket/gui: add `get-current-mouse-state' 2012-11-07 14:37:39 -07:00
Danny Yoo
5c6498b355 Fix for PR 13234. xexpr-core: added more test cases to
correct-xexpr?.  Inverted the logic and replaced the
continuation-passing style with simpler test-for-error logic.  Also
corrected typo in attribute symbol checker that could otherwise lead
to a contract error.  (taking the cadr of a non-cadrable value)
2012-11-07 11:46:32 -07:00
Eli Barzilay
672910f27b Lots of bad TAB eliminations.
I started from tabs that are not on the beginning of lines, and in
several places I did further cleanings.

If you're worried about knowing who wrote some code, for example, if you
get to this commit in "git blame", then note that you can use the "-w"
flag in many git commands to ignore whitespaces.  For example, to see
per-line authors, use "git blame -w <file>".  Another example: to see
the (*much* smaller) non-whitespace changes in this (or any other)
commit, use "git log -p -w -1 <sha1>".
2012-11-07 11:22:20 -05:00
Matthew Flatt
891932074c adjust run length of short R5RS benchmarks 2012-11-07 07:46:26 -07:00
Matthew Flatt
ab5bbb5b37 flatten simple `define-values' within a module
This flattening is useful for the definition of `assq', for example.
2012-11-07 07:46:25 -07:00
Matthew Flatt
8033900674 add ad hoc optimization of car' to unsafe-car', etc.
In `(if (pair? x) E1 E2)', convert `(car x)' in E1 to
`(unsafe-car x)', and similarly for `(cdr x)'. Also,
`(begin (car x) (cdr x))' converts to `(begin (car x)
(unsafe-cdr x))' since `(car x)' implies a `pair?' test
on `x'.
2012-11-07 07:46:25 -07:00
Jay McCarthy
b778e4e03c enabling shared in plai with some shameless copying of kernel code 2012-11-06 19:53:03 -07:00
Eli Barzilay
14d8c8b5a5 Newlines at EOFs. 2012-11-06 14:07:15 -05:00
Stevie Strickland
7acfc80d79 Fix bogus method name in interface contract errors.
Closes PR 13238
2012-11-05 18:54:57 -05:00
Matthew Flatt
25f142299b fix propagation of "multiple result" flag when optimizing `begin0' 2012-11-05 16:15:48 -07:00
Asumu Takikawa
68dd17bf08 Make control contracts play nice with has-contract? 2012-11-05 18:08:10 -05:00
Matthew Flatt
bd0e6ae941 fix problems with chaperones, printing, and cycles 2012-11-05 10:48:46 -07:00
Matthew Flatt
f21280e24d fix problems with non-parallel places
The implementation of message passing in thread-simulated
places had not kept up with the parallel implementation.
2012-11-05 10:48:45 -07:00
Matthew Flatt
885382e12e benchmark tweaks and addition 2012-11-05 10:48:45 -07:00
Matthew Flatt
1126f02ddd change JIT inlining of `/' to be fast on a fixnum result 2012-11-04 17:20:11 -07:00
Robby Findler
f3a060ccc1 insert examples directly into drracket instead of simulating
typing them in, in the module language test suite

this speeds it up; going from 140 to 105 seconds on my (mac)
machine. (drdr was taking 240 or so seconds, tho)
2012-11-04 14:39:54 -06:00
Matthew Flatt
0c82f54912 racket/gui: add delete' to choice%' and `list-control<%>'
Closes PR 13230
2012-11-04 08:25:43 -07:00
Matthew Flatt
4c61dfc217 fix test to not depend on network connection 2012-11-04 06:09:21 -07:00
Robby Findler
4669b6bfed adjust tests for the new language dialog
(the names of the textbooks are no longer explicit
in the hierarchy of the languages so just specify
"Beginning Student", for example)
2012-11-03 15:49:33 -05:00
Robby Findler
5768009e3b Revise the language dialog to emphasize the teaching
languages and the 'in the source' language at the expense
of all other dialog-based languages
2012-11-03 13:54:48 -05:00
Robby Findler
e1760fa7c0 add find-labelled-windows 2012-11-03 13:54:48 -05:00
Matthew Flatt
f232e56623 tweak optimization tests
Use `racket/base' to speed up the test suite
2012-11-02 10:54:23 -06:00
Matthew Flatt
56a4691664 tweak test to hit a less bad overflow point 2012-11-02 10:34:17 -06:00
Asumu Takikawa
948e898406 Fix continuation mark chaperones
Failed to redirect correctly on `continuation-mark-set-first`
when the mark set argument was #f.
2012-11-02 11:26:40 -04:00