Commit Graph

38582 Commits

Author SHA1 Message Date
Matthew Flatt
f6e863a4dd fix GC handling of unquoted-printing strings
Adds missing change to cbfcc904ab.
2017-08-04 09:18:15 -06:00
Matthew Flatt
05c5c4fa3e fix space-safety of JIT-generated apply
In a non-tail position, a JIT-generated application of `apply`
retained the argument list until the called function returned.
Fix it to drop the reference to the list before the function
is called.
2017-08-04 07:23:50 -06:00
Matthew Flatt
cbfcc904ab add unquted-printing strings
And unquoted-printing string contains a string to `display` in all
print modes. Although it could be implemented with a structure type
that has a printing function, `raise-arguments-error` further treats
unquoted-printing strings specially by not using the error value
conversion handler, so it reliably produces literal text in the error
message; that way, `raise-arguments-error` can be used to construct
more error messages.
2017-08-04 06:13:19 -06:00
Matthew Flatt
1ca8b6d533 bytes-utf-8-length: fix result contract in docs 2017-08-04 06:13:19 -06:00
Jordan Johnson
58dfcee14a Clearly distinguish ~datum/~literal in examples
As discussed on the racket users list (subj: ~literal vs ~datum) at https://groups.google.com/d/msg/racket-users/KWANfGc7qcI/G_MClWJpBAAJ
New example based on code from Jens Axel Soegaard.
Caveat: I've run this in DrRacket with (require (for-syntax syntax/parse)) to verify the three distinct outputs, but am submitting this PR in-browser, so I haven't run the doc build on it myself.
2017-08-03 22:26:43 -04:00
Matthew Flatt
04138340eb Unix: unbreak gracketcgc build 2017-08-01 10:05:10 -06:00
Matthew Flatt
34afef1c38 fix an error message 2017-07-31 17:33:21 -06:00
Weng Shiwei
12e497e0e8 adding file extension ".scrbl" to fix redirection
adding file extension ".scrbl" to fix url redirect error. Otherwises, it triggers a redirection error.

This link is just before [section 8.7.1 in reference of contract](https://docs.racket-lang.org/reference/Building_New_Contract_Combinators.html)

This fix works and I guess it's correct.

I didn't compile the document project but I searched other `@other-doc` tags in project, the link in lib are all ending with `.scrbl`

The current generated url is:
https://download.racket-lang.org/docs/6.9/html/local-redirect/index.html?tag=%28part._%28.%27%28lib._contract-profile%2Fscribblings%2Fcontract-profile..rkt%29.%27._.%27top.%27%29%29&version=6.9

If changing `rkt` to `scrbl` in the url:
[https://download.racket-lang.org/docs/6.9/html/local-redirect/index.html?tag=%28part._%28.%27%28lib._contract-profile%2Fscribblings%2Fcontract-profile..scrbl%29.%27._.%27top.%27%29%29&version=6.9](https://download.racket-lang.org/docs/6.9/html/local-redirect/index.html?tag=%28part._%28.%27%28lib._contract-profile%2Fscribblings%2Fcontract-profile..scrbl%29.%27._.%27top.%27%29%29&version=6.9)

The redirected result is correct.
2017-07-31 17:32:53 -06:00
Vincent St-Amour
029132e4c3 Update raco pkg new for v6.10.
(cherry picked from commit f75eced6f7c5cd452c2343c93b5ff71b96a909ae)
2017-07-31 15:54:24 -05:00
Ben Greenman
616315d5ff gitignore: vim swapfiles
Ignore the first 3 levels of Vim-generated swapfiles.
2017-07-29 11:53:06 -04:00
Weng Shiwei
4bad4d7655 should be "requiring" module invokes the function
Before this line, it says the function flows from providing module to requiring module.
After this line, it says the argument travels back from requiring moduleo to providing module.
I believe that argument supplying and function invoking should happen at requiring module, rather than providing module.
2017-07-28 10:43:10 -06:00
Carlo Dapor
1e9a56215f In English, "one" can be used both when counting (1, 2, 3, 4, 5, ...) as well as an atricle in front of a nouns (one tree, one bridge, ...). In German the two use cases are distinct. "One" as in counting is "eins, zwei, drei, vier, ...", but as an acticle it would be "ein" (for male or neutral nouns) or "eine" (for female nouns). Thus in the text the correct term would be "eins" in German.
For the French counting, "une" is not quite correct.  It is the female form for "one" as an article.  It is much more common to count "un", "deux", "troix", "quatre", "cinq", ....
2017-07-28 09:58:12 -06:00
Matthew Flatt
94b9b8f4dd document integer->integer-bytes and integer-bytes->integer change 2017-07-28 09:51:15 -06:00
rain
8ee5d18107 support 1-byte numbers in integer->integer-bytes and integer-bytes->integer 2017-07-28 09:39:49 -06:00
Matthew Flatt
2cf38ecad7 ffi/unsafe: attempt to improve _union
The hack to implement `_union` without help from libffi failed when
the total size of the variants is too large. Try a different approach,
which involves a bet that the total size plus whether the content is
all floating-point numbers will be enough information for most cases.

Relevant to #1351
2017-07-28 09:05:24 -06:00
Matthew Flatt
616d99fbdc Inside Racket: add a simpler embedding example
The simpler example uses `dynamic-require`, which will hopefully set
readers on a better path if they don't need a REPL and the associated
complexities of `load` and `eval`.
2017-07-26 08:25:28 -06:00
Matthew Flatt
45940f69a9 fix error-message typo 2017-07-25 08:12:11 -06:00
Matthew Flatt
9c48ee003a add missing lock on chaperoned/impersonated hash-table operations
For `equal?`-based hash tables, various operations are supposed to
take a lock on the table, but the lock was missing.
2017-07-24 19:25:17 -06:00
Ben Greenman
1f6b31aa3e doc: remove unmatched ] 2017-07-23 19:32:26 -04:00
Matthew Flatt
263e7b10d9 unsafe-vector-chaperone: repair a test 2017-07-23 08:57:08 -06:00
Matthew Flatt
e13d40c5ef vector-{ref,set!}: fix chaperone error for JIT-generated check 2017-07-23 08:27:14 -06:00
Matthew Flatt
e98cfeae5b chaperone-vector: adjust contract-error reporting
The convention is to check argumen contracts indpendently
first, then raise an eror there's a mismatch among pairs
of objects.
2017-07-23 08:21:33 -06:00
Matthew Flatt
d1fa65ac92 doc correction for chaperone-of? 2017-07-23 08:21:28 -06:00
Matthew Flatt
c54e671a14 change sigset() and signal() to sigaction()
The sigaction() API is the more modern, more portable one.
2017-07-22 06:41:56 -06:00
Ben Greenman
37006520d3 doc: path cleaner examples
Add quick examples for:
- `cleanse-path`
- `simplify-path`
- `normalize-path`
2017-07-21 16:08:36 -05:00
Ben Greenman
c15fd5045a doc: add grammar for 'recursive-contract' type option 2017-07-21 14:52:05 -05:00
Matthew Flatt
d818e8d996 rktio: fix SIGCHLD signal-handler installation on Solaris
The switch to rktio swapped the sense of "signal" and "sigset"
incompletely, and "signal" on Solaris is the one that resets
the signal handler to SIG_DFL.
2017-07-21 07:40:35 -06:00
Matthew Flatt
1d74c214a1 racket/HISTORY.txt: update for v6.10
Merge to v6.10
2017-07-19 08:00:32 -06:00
Matthew Flatt
0f549823c4 call-with-immediate-continuation-mark: fix docs
Closes #1747
2017-07-18 06:42:53 -06:00
Matthew Flatt
808bd1b897 raco setup: adjust --clean mode
Make `raco setup` propagate the original value of
`use-compiled-file-paths` in case it's reset to avoid loading bytecode
files. Then, `--clean` mode can remove bytecode relevant to that
setting, instead of always clearing "compiled" subdirectories.

There's no external way to initialize `use-compiled-file-paths` right
now, other than forcing it to `null` with the `-c` flag at the
`racket` level, but the current "racket7" implementation uses
different `use-compiled-file-paths` settings for different build
modes, and it seems to make sense in general.

Also, make `--clean` sensitive to `-D` and `-d`, so that it's easy to
clean just bytecode.
2017-07-17 14:45:43 -06:00
Robby Findler
5ecbc54fff fix recursive-contract's name patch up code 2017-07-16 16:52:14 -05:00
Ryan Culpepper
83540d1ae6 fix literal-set test
Merge to release branch.
2017-07-14 13:28:21 -04:00
Matthew Flatt
ac43a93a13 fix arg order in errors for JIT-inlined {string,bytes}=?
Closes #1741
2017-07-14 09:16:39 -06:00
Matthew Flatt
d081586959 fix immutability of some syntax-e results
Internally, when scopes are propagated to nested syntax objects,
vectors and boxes were not reconstructed as immutable.

Closes #1745
2017-07-14 07:37:55 -06:00
Matthew Flatt
2e77279be0 syntax: fix guard for multiple pattern variables under ...
Fix the part of `syntax`/`datum` that determines whether an exception
handler is needed to convert an error from `map` to one from
`syntax`/`datum`.
2017-07-14 06:58:58 -06:00
Matthew Flatt
a22a3852c6 remove unused code in "foreign.c" 2017-07-14 06:58:58 -06:00
Leif Andersen
cca6db4ff0
Add links for examples to contracted functions.
is-a?/c -> is-a?
implementation?/c -> implementation?
subclass?/c -> subclass?
2017-07-11 12:30:45 -04:00
Ben Greenman
5c382d7162 doc: typos in file/gif and file/unzip contracts
- missing `for-label` in `file/gif`
- typo in `file/unzip`
2017-07-10 16:52:06 -05:00
Ben Greenman
1a81f205cc doc: add missing 'for-label' to 'syntax/srcloc' 2017-07-10 16:52:06 -05:00
Vincent St-Amour
0f5e95ea33 Use actual contracts in json docs.
Closes #1725
2017-07-07 14:55:18 -05:00
Vincent St-Amour
5f740ffcac Fix typesetting of inpersonator-of docs. 2017-07-07 14:55:18 -05:00
Vincent St-Amour
73e08a2aa9 Post-release version for the v6.10 release 2017-07-07 14:19:46 -05:00
Matthew Flatt
f0fe0a4635 remove copy of startup code in racket/private/collect
The copy was made in c1c427a281 to help get "racket7" started, but
it's no longer needed. Using the copy had an unintended consequence of
duplicating the collection-search cache for phases other than phase 0,
so this change repairs that consequence.
2017-07-05 07:36:03 -06:00
Matthew Flatt
6d58b11af9 add racket/private/check
The `racket/private/check` module is dead code in this repo, but
having it simplifies the "racket7" bootstrap when "racket7" goes so
wrong that it can't rebuild itself.
2017-07-05 07:36:03 -06:00
Ben Greenman
5917f92ac1 typo: remove extra period in vectorof docs 2017-07-04 13:03:22 -04:00
Matthew Flatt
c082d77c97 raco exe: fix stripping of signature from Mach-O executables
To strip a signature, the old implementation effectively guessed
at the padding that was added to the original linkedit segment
to acommodate 16-byte alignment of the signature. The repaired
stripping works out the actual end of the linkedit segment based
on the various load commands that refer to it.
2017-07-03 09:33:17 -06:00
Matthew Butterick
442c2fdfaf Correct typo
`bust be an` → `must be a`
2017-07-02 22:58:33 -04:00
Matthew Flatt
b2b53d61a1 fix test that uses IPv6
Closes #1738
2017-07-02 20:07:55 -06:00
Matthew Flatt
340b878981 udp-send-to: fix deallocation bug related to rktio refactoring
The bug caused an attempt to free NULL as an addrinfo, which is
apparently ok on many OSes, but not all.
2017-07-02 14:27:59 -06:00
Matthew Flatt
ed8145e0d2 fix doc typo 2017-07-02 14:26:59 -06:00