Commit Graph

1766 Commits

Author SHA1 Message Date
Eli Barzilay
d88eef6bfb Some "@racket" fixes.
Two reported by Lee Duhem, and two more in other files.

Fixes PR 13092.
2012-09-08 15:17:04 -04:00
Matthew Flatt
a774cc93b9 move future-visualizer docs out of the Reference 2012-09-07 09:11:16 -06:00
Matthew Flatt
d92b9cb404 add `define-logger' and filtering based on logger name
The `make-log-receiver' function now includes a logger-name
filter. This filter is implemented as a low enough level that
it affects `log-level?' tests to check whether a log message
needs to be constructed at all.

The -W and -L flags and PLTSTDERR and PLTSYSLOG environment variables
support filters of the form "<level> <level>@<name> ...", where
<level>@<name> specializes filtering of events for a logger whose
name matches <name> to show <level> and higher.
2012-09-07 08:16:38 -06:00
Matthew Flatt
fc0d605d18 change `log-error', etc., to support format mode
One subexpression => string literal. Multiple subexpressions
=> arguments to `format'.
2012-09-07 08:16:37 -06:00
Matthew Flatt
b53e458e3f add `racket/format'
The new library is Ryan's `unstable/cat', but the names have been
changed. (The task of removing `unstable/cat' remains.)
2012-09-07 08:16:37 -06:00
Matthew Flatt
2f7d4b5eaf change a thread's initial prompt to use the default handler
The thread's initial prompt previously ignored its arguments.
2012-09-05 12:21:43 -06:00
Matthew Flatt
3a7724e422 fix documentation of the prompt installed by `module' 2012-09-05 12:21:43 -06:00
Matthew Flatt
ba56fd72da racket/class: add dynamic-get-field' and dynamic-set-field!' 2012-09-04 15:28:18 -06:00
Matthew Flatt
69d2adce4d racket/gui: new-style error messages 2012-09-02 16:38:43 -06:00
Matthew Flatt
b4fea2ff36 fix `delay/thread' error when promise-running thread terminates 2012-08-29 09:32:54 -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
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
Matthew Flatt
fe1cc4f009 doc repair 2012-08-27 20:17:06 -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
23722e64c2 change `exn:break:hang-up' handling to skip display
Since SIGHUP normally means that the output has gone away,
don't try to write to it.

Closes PR 13058 (although it doesn't solve the more general
problem that is noted in the PR)
2012-08-24 15:48:58 -06:00
Robby Findler
e4450e2705 make record-disappeared-uses call syntax-local-introduce
on the identifiers passed to it
2012-08-24 09:34:41 -05:00
Robby Findler
1ad2c75531 add the ability to specify #:parent to struct/dc (and fix struct/c to use it)
closes PR 13049
2012-08-23 18:59:11 -05:00
Matthew Flatt
ef525233a2 references: link "A parameter that..." to the definition of "parameter" 2012-08-22 10:28:56 -06:00
Asumu Takikawa
46ece20b09 Fix typo introduced by 965a74453f
(Moral of story: be careful with regexps)
2012-08-21 16:35:37 -04:00
Asumu Takikawa
9a65f9aaf0 Delete trailing whitespace 2012-08-21 16:20:26 -04:00
Asumu Takikawa
965a74453f Add #:forall, #:∀ to contract-out 2012-08-21 16:20:26 -04:00
Asumu Takikawa
47cb06f842 Fix docs for reencode-input-port & reencode-output-port
Closes PR 10545
2012-08-18 00:34:54 -04:00
Asumu Takikawa
6665053dad Fix contracts on several I/O functions
Closes PR 12599
2012-08-18 00:22:21 -04:00
Matthew Flatt
902016265b docs for `for/vector': warn about intreaction with continuations 2012-08-16 13:11:42 -06:00
Matthew Flatt
6e2bb58cce add a #:fill' clause to for/vector' et al. 2012-08-15 09:32:55 -06:00
Matthew Flatt
23bca99ba1 adjust `local-expand' to add 'submodule property 2012-08-13 17:11:20 -06:00
Matthew Flatt
b043da6ea6 SIGHUP and SIGTERM -> exn:break:hang-up' and exn:break:terminate'
The default uncaught-exception handler calls `exit' when it receives
one of the new exceptions.
2012-08-13 17:11:20 -06:00
Matthew Flatt
d38fa91792 doc fix
Closes PR 13007
2012-08-12 20:17:29 -06:00
Matthew Flatt
7aec4f6c7e doc corrections
Number-grammar problems reported by Milo Arvidsson.
2012-08-11 06:42:24 -06:00
James Swaine
6271556e1d Add GC display to future visualizer 2012-08-11 01:00:51 -05:00
Vincent St-Amour
a190ecfb7b Fic generics docs.
Closes PR 12988.
2012-08-08 17:26:55 -04:00
Matthew Flatt
13d7a37eb6 re-align expt' and flexpt' to match C99 pow() spec
Also, improve precision of some complex results to avoid
excessive `+nan.0's.

Closes PR 12935
2012-08-06 13:00:36 -06:00
Eric Dobson
b95dba9f19 Fix documentation on integer-sqrt/remainder. Closes PR 12971 2012-08-06 12:31:07 -04:00
Robby Findler
8a0b6549a5 adjust the contract error messages to follow the error message
conventions in 9.2.1 of the reference (altho the messages do
not yet do the extra level of indenting when a field is too
long, nor are there any field names ending in ...)

Also, fix the docs for the #:stronger argument to
make-contract, make-chaperone-contract, and make-flat-contract
2012-08-05 20:09:09 -05:00
Matthew Flatt
7c9e6d7193 improve port progress-evt guarantees; fix for `read-bytes-evt' et al.
A progress evt from a close input port must be initially ready,
and the primitive `peek-bytes-avail!' checks a progress evt
before checking whether the port is closed.

These changes resolve a race in `read-bytes-evt' and related evt
constructors.
2012-08-04 10:19:55 -06:00
Vincent St-Amour
800a328fe6 Fix documentation for packages and mutable lists.
As suggested by Matthew.
2012-07-31 17:12:30 -04:00
Kevin Tew
6b48d34867 [Distributed Places] added #:thunk and #:named keyword arguments to distributed place creation functions 2012-07-31 11:51:55 -06:00
Ryan Culpepper
d19137c998 fix name of function in docs
Closes PR 12950
2012-07-28 16:41:08 -04:00
Vincent St-Amour
52439d528b Move mutable list functions to the compatibility collect.
Mutable pair functions from racket/base are not moved.
2012-07-27 16:49:05 -04:00
Vincent St-Amour
ab2226a19e Add a `compatibility' collect for compatibility with other languages.
It includes `defmacro' and Chez-style modules (packages).
2012-07-27 16:49:05 -04:00
Asumu Takikawa
2dcf060774 Move engines from mzlib/thread to racket/engine
(they were previously called "coroutines" but
 the term "engine" is less ambiguous)
2012-07-26 14:47:29 -04:00
Matthew Flatt
4c3dd00d49 fix `port-commit-peeked' and mid-stream EOFs 2012-07-26 06:14:35 -06:00
Matthew Flatt
11be722a0f typo 2012-07-25 21:58:18 -06:00
Matthew Flatt
d1048406b5 typo 2012-07-25 21:32:33 -06:00
Matthew Flatt
7d894bfb63 Note require' of a main' submodule for -t', -l', and `-p'
In the output of `racket -h' and in the command-line docs.

Merge to v5.3
2012-07-25 20:07:23 -06:00
Asumu Takikawa
ea1636d4f1 Doc fixes reported by Gary Baumgartner
The typo on 'redex.racket-lang.org' still remains.

Relevant to PR 12680

Merge to v5.3
2012-07-23 13:10:05 -04:00
James Swaine
f0aaca0dde Change future visualizer trace collection slightly to be more composable 2012-07-22 20:03:22 -05:00
James Swaine
df54f8460b Fix future visualizer trace collection when running inside DrRacket 2012-07-22 20:03:21 -05:00
Eli Barzilay
476c270a66 Use a new evaluaor in "for.scrbl", have it require `racket/base' for syntax.
Also explicitly close the evaluator used in "block.scrbl".

Closes PR 12931.
2012-07-22 13:38:38 -04:00
Eli Barzilay
18883681a2 Convert all uses of (integer-in 0 255) to `byte?'. 2012-07-22 13:00:05 -04:00
Eli Barzilay
a6b20f01da Use string-no-nuls?' and bytes-no-nuls?' in more docs & error messages.
Also use `byte?' instead of (integer-in 0 255).

(This commit will most likely require some proof-reading.)
2012-07-22 13:00:05 -04:00
Eli Barzilay
c2fe7c4e35 Quick typo fix. 2012-07-22 10:11:37 -04:00
Asumu Takikawa
3582b57bcc Move mzlib/defmacro => racket/defmacro
With both @bold and @italics warning against its use.
No @blink though.
2012-07-20 16:00:47 -04:00
Matthias Felleisen
6768136144 docs for revised system error message completed 2012-07-20 12:30:30 -04:00
Asumu Takikawa
e14c5d61e9 Allow guards for impersonatable struct type properties 2012-07-19 22:46:14 -04:00
Eli Barzilay
6565538b09 Disable the #:before-first' and #:after-last' functionality in `add-between'.
Leave it working in splicing mode.  I prefer doing that over always
splicing them, since that would make a less uniform interface, so I
rather keep all options open.  There is no longer a `#:nothing' keyword,
which is the main point of this downgrade.

(See mailing list discussion on "no-argument" for the reason.)
2012-07-18 22:28:41 -04:00
Matthew Flatt
a3b316c02f typo 2012-07-18 03:52:20 -06:00
Matthew Flatt
5e4866e54c fill in one more corner of submodules and `namespace-attach-module'
When submodules are not independently loaded, then pull submodule
declarations along when attaching a module to a namespace.
2012-07-17 10:16:32 -06:00
Matthew Flatt
c8f4ac6ae4 submodules: make .zo path stick for consistent independent loading
When a module is loaded from bytecode and then the value of
`use-compiled-file-paths' changes, an attempt to load a submodule
would fail, because source isn't used if the main module is
already declared, and the bytecode code is not used according to
`use-compiled-file-paths'. Make the bytecode path stick when it
is used once, so that submodule loads succeed, and make it work
even with `namespace-module-attach'.

The module-attach part of this protocol requires a change to the
API of a module name resolver: the notification mode gets two
arguments, instead of one, where the second argument is an
environment.
2012-07-17 09:47:05 -06:00
Matthew Flatt
8718a5dd62 doc and error-message fixes for module name resolver 2012-07-16 19:22:30 -06:00
James Swaine
b987be068e Move racket/future/visualizer, racket/future/trace --> future-visualizer, future-visualizer/trace 2012-07-16 12:23:46 -05:00
Asumu Takikawa
403aaac7d4 Moved some mzlib library implementations to racket
The libraries moved were:
  - mzlib/control      => racket/control
  - mzlib/date         => racket/date
  - mzlib/deflate      => file/gzip
  - mzlib/inflate      => file/gunzip
  - mzlib/port         => racket/port
  - mzlib/process      => racket/system
  - mzlib/runtime-path => racket/runtime-path
  - mzlib/shared       => racket/shared
  - mzlib/unit         => racket/unit
  - mzlib/unit-exptime => racket/unit-exptime
  - mzlib/zip          => file/zip

The old modules in mzlib are now pointers to the
new modules. These are all modules that were already
redirected in the documentation.
2012-07-11 18:26:10 -04:00
Matthew Flatt
daa98b4e33 syntax/location: repair after `variable-reference->module-source' fix 2012-07-10 18:35:03 -06:00
Matthew Flatt
506b70f71f fix `variable-reference->module-source' for submodules
Unlike the `variable-reference->resolved-module-path', the module
source one doesn't include a submodule path.
2012-07-10 18:35:03 -06:00
James Swaine
dbec8765e3 Futures visualizer - reorganize modules, expose formerly private stuff as public (and docs) 2012-07-10 10:55:19 -05:00
James Swaine
b6f71ec4be Add futures visualizer, improvements to futures logging 2012-07-10 10:54:42 -05:00
Asumu Takikawa
a1aedaff1e Fix doc typos 2012-07-06 18:59:10 -04:00
Matthew Flatt
1d378186f4 repair to exn doc repairs 2012-07-06 16:48:36 -06:00
Matthew Flatt
4c469d5338 improve docs on gensym', generate-temporaries', and compiled code 2012-07-06 13:17:35 -06:00
Matthew Flatt
891b882ee6 doc clarification on exception handlers 2012-07-06 13:17:35 -06:00
Robby Findler
4cd26f828f typo in error docs 2012-07-03 19:55:08 -05:00
Asumu Takikawa
414ed2597e Reference: fix doc typos 2012-07-03 03:10:04 -04:00
Asumu Takikawa
e8dfd1d8df Improve docs for exn:fail:contract:blame 2012-07-03 02:16:13 -04:00
Matthew Flatt
aa68692b37 allow `begin' wrapper on a submodule to re-expand
Closes PR 12835
2012-07-02 10:02:41 -06:00
Asumu Takikawa
07d279e3ee racket/class: doc fixes and improvements
- actually fixed the grammar this time
 - examples for most class/object utils
 - consistency with naming conventions
 - interface ctc example
2012-06-30 15:13:53 -04:00
Asumu Takikawa
9e97ea4cae Fix class init grammar in docs 2012-06-29 14:40:27 -04:00
Asumu Takikawa
ad8b43e21f Add examples for most class clauses. 2012-06-29 14:40:27 -04:00
Stevie Strickland
d16c3f68fa Add empty case for with-contract's clause for free variable contracts.
Also reorder the single and multiple cases to match result-spec's ordering.
2012-06-28 03:28:04 -04:00
Matthew Flatt
1d25f698da doc clarifications 2012-06-27 13:20:18 -06:00
Eli Barzilay
81e0bd2382 Use `secref' instead of a direct link to docs.racket-lang.org. 2012-06-27 09:26:28 -04:00
Asumu Takikawa
095d47fc3d racket/contract: rename prompt/c & continuation-mark/c
The new names are `prompt-tag/c` and `continuation-mark-key/c`
to keep the names consistent with the values that are being
contracted. Also updated the HISTORY file.
2012-06-26 21:11:58 -04:00
Asumu Takikawa
fcab398081 racket/class: add send+ for functional style OO 2012-06-26 21:11:58 -04:00
Eli Barzilay
0c78194267 Adjust the keyword names for string-join' following the change to add-between'. 2012-06-26 13:45:16 -04:00
Asumu Takikawa
ddf91c201a Documentation for mark key proxies and contracts 2012-06-26 13:39:36 -04:00
Matthew Flatt
a6e263741a racket/list: adjust `add-between' keyword handling
Add a `#:nothing' argument so the no-value value can be
made explicit --- based on discussion with Eli, but pending
further review.

Also, renamed `#:first' to `#:before-first' and `#:last' to
`#:after-last' to be more clear, more parallel ro `#:before-last',
and avoid a collision with prominent function names.
2012-06-26 11:00:11 -06:00
Asumu Takikawa
552d6de953 racket/generics: add contract combinator
The generics library now generates a `name/c` macro
for a generic interface `name`. The combinator can be
used to contract instances (or constructors) of a
generic interface across standard contract boundaries.
2012-06-25 20:33:48 -04:00
Stephen Chang
91ea9ab309 add examples to read-language docs 2012-06-25 19:46:20 -04:00
Kevin Tew
89c7ba6493 Fix *channel-get's use of continuations
Cleanup map-reduce.rkt
Cleanup rmpi.rkt
Added create-place-node and distributed-place-wait
2012-06-25 14:03:05 -06:00
Matthew Flatt
2c1e02d148 fix `help' docs
Use one `defform*' instead of `deftogether' and many `defform/none's.
2012-06-25 08:21:55 -06:00
Matthew Flatt
0532baa228 doc correction and improvement 2012-06-25 08:17:17 -06:00
Matthew Flatt
c11527494e racket/port: fix problems with `read-bytes!-evt'
See PR 12860; some of problem related to the PR were "fixed" by
adjusting the guarantees that are specified in the documentation.

Another problem was that non-consecutive bytes could be returned.
2012-06-24 07:38:09 -06:00
Matthew Flatt
91791983aa fix indentation of some error messages
`raise-syntax-error' and `raise-arguments-error' do not
try to adjust indentation, anymore, because it's too confusing
2012-06-23 02:20:59 -07:00
Matthew Flatt
4323096a46 change contract on second' of date' to allow only 1 leap second 2012-06-23 02:04:55 -07:00
Matthew Flatt
ff8a062bfe guarantee `current-seconds', etc. from 1/1/1970 UTC
For all currently supported platforms, the result was already
portable, despite the documentation's hedging.

Also fixed up the documentation in other ways, such as the fact
that `seconds->date' returns a `date*'.
2012-06-23 02:04:55 -07:00
Matthew Flatt
b951978a77 fix `impersonate-struct' docs
Move some constraints from `chaperone-struct' docs to `impersonate-struct'
docs.

(Problem reported by Eric Dobson.)
2012-06-23 02:04:54 -07:00
Eli Barzilay
f0d856ab7a Extend string-join' in a similar way to add-between'.
(This is actually the extension that made me do the other too.)
2012-06-23 04:44:20 -04:00
Eli Barzilay
728687d9dc Extend `add-between'.
New keywords: `#:first', `#:before-last', `#:last', and `#:splice?'.
2012-06-23 04:44:20 -04:00
Asumu Takikawa
e4f216244a Fix typos and wording in chaperone docs 2012-06-22 17:57:58 -04:00
Eli Barzilay
7ec9975736 Move regexp-replaces' from ffi/unsafe' to `racket/private/string'.
* The old function was removed completely, people will get it from
  `racket/base' anyway.

* I also removed its documentation.  I thought about leaving a note in,
  but if `define-ffi-definer' is the preferred style, then this should
  be done when there's a way to make `define-ffi-definer' use it.  (Eg,
  some new #:keyword that adds a way to change the defined name.)

* Note that the function is added to `racket/private/string' and not to
  `racket/string' because the latter deals only with strings, and the
  new function accepts byte strings too.  It might be better to start a
  new `racket/regexp' module for these functions.
2012-06-22 14:27:14 -04:00