Commit Graph

26132 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
eed93825ab Track mutable variables across modules. 2012-08-31 17:45:11 -04:00
Asumu Takikawa
cd23fd48cf Comment and clarify top-level evaluation & barriers 2012-08-31 16:27:35 -04:00
Sam Tobin-Hochstadt
ab5403d1ed Simplifying case-> to union is only safe for 1-argument functions.
Closes PR 13002.
2012-08-31 10:27:51 -04:00
Matthew Flatt
d841ec1bd0 propagate prefix repair to to scribble/jfp' and scribble/lncs' 2012-08-31 07:33:08 -06:00
fbanados
0b19326ac6 include scribble/scribble-prefix.tex packages to scribble/sigplan 2012-08-31 07:33:08 -06:00
Matthew Flatt
d11e58b639 ffi/unsafe/atomic: add `in-atomic-mode?'
The new function can be useful for debugging, at least.
2012-08-31 07:33:08 -06:00
Ryan Culpepper
70a2ced71a syntax/id-table: simplify use of chaperones 2012-08-29 20:44:04 -04:00
Ryan Culpepper
3ccc93590a syntax/id-table: more work on *-id-table/c 2012-08-29 20:43:24 -04:00
Eric Dobson
e7c7e14485 Added tests to idtbl/c and fixed revealed bugs. 2012-08-29 20:25:32 -04:00
Eric Dobson
d4efe8f5aa Clean up creation of identifiers in id-table.rkt 2012-08-29 20:25:32 -04:00
Eric Dobson
4725775126 Implemented contract for immutable id-tables. 2012-08-29 20:25:32 -04:00
Eric Dobson
8f8bc76e39 Add idtbl-chaperone and implement contracts on top of that. 2012-08-29 20:25:32 -04:00
Eric Dobson
54b82871ab Add support for contracts on identifier tables. 2012-08-29 20:25:31 -04:00
Matthew Flatt
7291e1a24d racket/gui win32: atomicity repair 2012-08-29 17:45:59 -06:00
Robby Findler
977fd37913 adjust contract for test:button-push so it isn't so ugly 2012-08-29 14:52:56 -05:00
Matthias Felleisen
93ca0bf9f7 eliminated stateful variables from 16 year old code, and now I know it is correct
Closes PR 13074

set! sucks
2012-08-29 11:35:34 -04:00
Matthew Flatt
b4fea2ff36 fix `delay/thread' error when promise-running thread terminates 2012-08-29 09:32:54 -06:00
Matthew Flatt
6039e35afd fix race in `delay/sync' 2012-08-29 07:20:24 -06:00
Eli Barzilay
8a605626ac New Racket version 5.3.0.21. 2012-08-29 03:30:12 -04:00
Ryan Culpepper
8ad09dee8e fix bug typo
closes PR 13055
2012-08-28 23:37:00 -04:00
Ryan Culpepper
ae843f9a62 readline: prefer 5 (fast) over 6 (slow)
Running racket in a terminal with readline 6 has excruciating delays
in response and bizarrely slow pasting. The culprit is probably a bug
in readline v6.2 that causes the rl_event_hook to be called repeatedly
even when input is ready. See also the discussion here:
http://lists.gnu.org/archive/html/bug-readline/2012-06/msg00005.html

It's not clear whether racket can work around the issue in readline 6,
but it can at least use readline 5 instead when it is available.
2012-08-28 23:36:50 -04:00
Ryan Culpepper
ecb88ffd45 Revert "db: use channel instead of semaphore + result variable"
Using a sync. channel breaks kill-safety.

This reverts commit 8363db9258.
2012-08-28 22:04:05 -04:00
Matthew Flatt
d953bc27ba fix `ffi/unsafe/nsalloc'
Using `call-as-atomic' isn't right, because that allows an escape
via `call-as-nonatomic'. Assuming that `call-as-nonatomic' isn't
used, it seems like `call-as-atomic' should be ok, anyway, but
somehow its leads to unbalanced `end-atomic' calls.
2012-08-28 18:45:55 -06:00
Matthew Flatt
003613395d fix `font%' amnipulation to work in atomic mode 2012-08-28 17:27:14 -06:00
Matthew Flatt
dba3c14746 fix editor-canvas%' internal on-size' handling
The `on-size' method is called in atomic mode,
and we can't call into the editor's sizing functions
in atomic mode.

Watch out for refresh and/or window-sizing problems.
2012-08-28 17:21:45 -06:00
Matthew Flatt
b61f3f751c port position-tracking clean-ups
Add `file-position*', which can return #f instead of raising
an exception when a port's position is unknown. Change
`make-input-port' and `make-output-port' to accept more
kinds of values as the initial position.

These changes make it possible to synchronize a port's
position with a `port-commit-peeked' action. It's ugly,
which I think reflect something broken about position
tracking in the port protocol (which seems difficult to fix
without breaking compaibility).
2012-08-28 16:04:41 -06:00
Asumu Takikawa
466b4e2c60 racket/generic: eliminate ctc dependency in private interface
Closes PR 13051
2012-08-28 17:54:35 -04:00
Robby Findler
496bfd3b57 add anote about C-F6 and a pointer to how to search in
the keybindings window for more such bindings
2012-08-28 16:30:33 -05:00
Robby Findler
fc03ab6c69 add a mention of the flat/chaperone/impersonator contract hierarchy to the contract docs 2012-08-28 13:19:05 -05:00
Matthew Flatt
763882f651 add port shortcut for `make-{input,output}-port'
Providing a port instead of a reading or writing procedure
redirects the read/write to the specified port. This shortcut
is kind of a hack, but the run-time system can easily streamline
the redirection when it's exposed this way.

Using the new redirection feature reduces overhead in
`with-output-to-bytes' and `pretty-print'.
2012-08-28 08:54:26 -06:00
John Clements
2c93ccdf18 failed to include test file for example 2012-08-27 23:47:44 -07:00
John Clements
f107c4d265 finish adding stepper external interface 2012-08-27 22:23:27 -07:00
John Clements
f933535639 adding external interface 2012-08-27 22:23:26 -07:00
Matthew Flatt
fe1cc4f009 doc repair 2012-08-27 20:17:06 -06:00
Matthew Flatt
7e2bcfd994 change -e to flush aftering printing a result
Previously, the use of `pretty-print' for `print' by `racket/main'
and the use of `transplant-output-port' by `pretty-print' caused
a flush to happen.

This problem highlights a potential general issue, which is that
`pretty-print' happened to always flush its output before, and
some programs may accidentally depend on that behavior.
2012-08-27 20:15:43 -06:00
Matthew Flatt
85b99de7b1 ffi/unsafe/objc: more support for loading in unsupported contexts 2012-08-27 19:47:44 -06:00
Matthew Flatt
cb95a99d68 change `transplant-{input,output}-port' to propagate buffering
Affects derived functions, such as `dup-output-port' and
`relocate-output-port', and uses in `pretty-print'.
2012-08-27 19:44:06 -06:00
Matthew Flatt
704cb4bd01 make-output-port': fix enable-break?' argument to callbacks 2012-08-27 19:44:06 -06:00
Matthew Flatt
310945ee73 racket/pretty: replace internal table with `prop:output-port' structs 2012-08-27 19:44:05 -06:00
Robby Findler
8a4567f5aa adjust the tooltip position so it goes to the end of the line where the arrowhead sits 2012-08-27 20:13:49 -05:00
Robby Findler
9934f202c9 avoid allocating a bunch of boxes (instead use ones already lying around) 2012-08-27 20:13:49 -05:00
Jay McCarthy
9fdb0ac507 correct cut implementation without mutation 2012-08-27 15:13:18 -06:00
John Clements
614ff235fc remove dependencies on mz-testing.rkt 2012-08-27 13:35:38 -07:00
Sam Tobin-Hochstadt
514c1c5921 Refactoring of new tc-app. 2012-08-27 14:46:30 -04:00
Eric Dobson
1e15d4496e Fix errors in tc/app-hetero, cleanup tc/app. 2012-08-27 14:43:45 -04:00
Eric Dobson
5c7ed4a21d Cleaned up special cases by adding macros to reduce duplication. 2012-08-27 14:43:45 -04:00
Eric Dobson
ba7647d7e2 Moved the rest of special cases to reified syntax classes. 2012-08-27 14:43:45 -04:00
Eric Dobson
dda1d60211 Rough draft of syntax classes for tc-app. 2012-08-27 14:43:45 -04:00
Eric Dobson
020d053e0a Add back template require. 2012-08-27 14:43:45 -04:00
Eric Dobson
6c2be05749 Removed dependencies from tc-app-hetero. 2012-08-27 14:43:44 -04:00