Commit Graph

6341 Commits

Author SHA1 Message Date
Matthew Flatt
fc77c91102 doc typo 2017-12-11 17:58:24 -07:00
Matthew Flatt
7aff978a1f fix merging of marks when applying a composable continuation
When a composable continuation has continuation marks that should
be merged with marks in the immediate continuation frame when
the continuation is applied, then mergeing did not always work.
It only worked in the case that the merge cadidates are the only
marks, because the merging check used the wrong end of the captured
sequence of marks.
2017-12-10 09:02:50 -07:00
Ryan Culpepper
e0a8058db5 syntax/parse: add docs for ~undo, #:undo 2017-12-09 13:42:12 +01:00
Ryan Culpepper
414fd515ab syntax/parse: make undo cooperate with ~commit and ~! (cut) 2017-12-09 13:42:12 +01:00
Matthew Flatt
f16576fff3 doc repair 2017-12-08 17:47:14 -07:00
Matthew Flatt
6a9a269546 bytes-utf-8-{length,index}: fix bytecode optimizer bug
The `bytes-utf-8-{length,index}` function was incorrectly marked as
always returning a fixnum.

Thanks to Jonathan Simpson for reporting the bug.
2017-12-08 17:47:14 -07:00
Matthew Flatt
1e1426a570 Revert "doc correction for will-execute"
This reverts commit 52e7267273.

The change was for `will-try-execute`. And while the change
is a good idea, `will-try-execute` doesn't acually accept
the extra argument.
2017-12-08 17:15:13 -07:00
dented42
167164b8a0 Fixed a typo (#1907)
Fixed a typo in the reference documentation for `impersonate-procedure*`.
2017-12-08 15:20:46 -05:00
Gustavo Massaccesi
516cb73034 remove scheme_complex_izi_type from docs 2017-12-05 08:39:19 -07:00
Greg Hendershott
1f4b989e48 CRLF terminate get-pure-port/headers; fixes #1901
Supply a final CRLF just like purify-port.
2017-12-02 22:34:04 -05:00
Matthew Butterick
b538d03d5a
Remove bold from inside title of Reference
So that the formatting doesn’t propagate throughout the docs.
2017-11-21 10:08:13 -08:00
Matthew Butterick
d2c36210ba
Remove bold from inside title of Guide
So that the formatting doesn’t propagate throughout the docs.
2017-11-21 10:08:09 -08:00
Sam Tobin-Hochstadt
ff5f5ff2af
Fix range for random-seed.
Closes #1892.
2017-11-16 12:52:34 -05:00
Matthew Flatt
b54ea8c5b1 try to make a network ::1 test adapt to an uncooperative environment 2017-11-10 08:08:29 -07:00
Daniel Feltey
c5cf7c1320 Avoid repeatedly constructing contracts as a result of checking a recursive contract
This may provide a speedup on Typed Racket programs that spend a lot of time
constructing contracts.
2017-11-09 22:07:54 -06:00
Matthew Flatt
ee19bf8c99 add missing history note for check-duplicates 2017-11-09 06:23:47 -07:00
Huma Zafar
4e864a5387 Adds optional keyword argument to check-duplicates to determine returned value when no duplicate found. 2017-11-08 18:47:19 -06:00
Stephen De Gabrielle
3cb7044976 filesystem-change-evt? typo
changed
Returns #f if v is a filesystem change event, #f otherwise.
to 
Returns #t if v is a filesystem change event, #f otherwise.
2017-11-06 16:25:37 -06:00
Ben Greenman
d0f5e37b39 typo: 'use do so' => 'do so' 2017-11-05 09:52:22 -05:00
Ben Greenman
4aaf4d88a5 doc: more links in 'json' docs
* Change 'any?' to 'any/c'
* Add for-label require so 'with-XXX-from-string' is a link in the examples
2017-11-05 00:00:34 -04:00
Milo Turner
27ec348a62 curry checks that a single argument is a procedure (notified by #1839) 2017-11-04 23:49:30 -04:00
Milo Turner
48092bdc0c tests for curry 2017-11-04 23:49:24 -04:00
Ben Greenman
64a9791031 doc: index 'RED' and 'REL' 2017-11-04 22:41:10 -04:00
Spencer Florence
4f1ef42d07 replace { with [ to fix exn reference 2017-11-02 13:53:12 -05:00
Sam Tobin-Hochstadt
4f2956917b Add module to run the pack tests (runs on DrDr). 2017-11-01 18:24:21 -04:00
Robby Findler
b9cd60010f correct path examples 2017-10-31 16:12:46 -05:00
Matthew Flatt
512910c83f expander: fix 'module-begin expansion with definition contexts
Using `(local-expand <expr> 'module-begin <stops> def-ctx)` didn't
work right, because definitions added to `def-ctx` were not visible.
(While adding definitions before `module-begin` expansion is an unusual
thing to do, there's no reason that it has to fail.)
2017-10-28 10:15:39 -06:00
سليمان السهمي (Soulaïmane Sahmi)
12febe5cc2 Perhaps you mean O(n) space (#1871) 2017-10-28 01:15:06 -04:00
Robby Findler
259e3a6fe1 use the right identifier
closes #1845
2017-10-26 16:48:12 -05:00
Matthew Flatt
dfa5d48092 unbreak JIT and check limits
Repairs a problem with ce9894c8bf, where a large "inlined" vector
allocation is not actually inlined, but other parts of the JIT
assume that it will behave as inlined --- which implies that the
runstack will be left unchanged after the call.

Closes #1868
2017-10-25 17:48:31 -06:00
Matthew Flatt
55c1685526 JIT: inline vector and struct CAS primitives 2017-10-25 17:36:03 -06:00
Matthew Flatt
c52bd91c54 add unsafe-struct*-cas! 2017-10-25 17:36:03 -06:00
Daniel Mendler
bc26d29bf8 add vector-cas! and unsafe-vector*-cas! 2017-10-25 17:36:03 -06:00
Matthew Flatt
d8e2192145 Revert "Revert "JIT: fix inline allocation for large vectors""
This reverts commit f7b3d3f4b4.
2017-10-25 17:34:54 -06:00
Matthew Flatt
f7b3d3f4b4 Revert "JIT: fix inline allocation for large vectors"
This reverts commit ce9894c8bf.

I don't immediately see what has gone wrong, so reverting for now.
2017-10-25 17:18:32 -06:00
Matthew Flatt
ce9894c8bf JIT: fix inline allocation for large vectors
Cloaes #1800
2017-10-25 09:55:41 -07:00
Matthew Flatt
ae4e85a6a7 evt:struct with unsafe-poller: skip sleep if poll reports ready
Intended to fix racket/gui#80
2017-10-23 06:03:25 -07:00
Rommel Martinez
81d51789ad Fix typo 2017-10-22 01:48:21 -04:00
Jay McCarthy
2b9b1b22f2 raco test --deps docs 2017-10-20 11:34:40 -04:00
Jay McCarthy
5662ed8e99 Adding --deps 2017-10-20 11:34:40 -04:00
Jay McCarthy
62b17db270 Adding docs for new proxy settings 2017-10-20 11:34:40 -04:00
Jay McCarthy
06e3205787 Fix PR1859 2017-10-20 11:34:40 -04:00
Matthew Flatt
e255c737b5 rktio: fix bug in 'text mode on Windows
If a #\return lined up in just the wrong way with a file-read
request, then the #\return could get mishandled.
2017-10-19 19:55:38 -06:00
Andrew Kent
9e16d3f9c9 add #:result clause to for/fold forms 2017-10-18 07:15:15 -04:00
Andrew Kent
3119c5b732 better stx errs for/fold and for*/fold 2017-10-18 07:15:15 -04:00
Alexis King
1e38918aa9 Improve how splicing-syntax-parameterize interacts with module* forms
Commit 00d438cfbe made an attempt at this,
but this commit does it in a much more careful way, based on manually
emulating how the macroexpander expands module* forms in order to allow
splicing-syntax-parameterize to apply even within #%module-begin forms
introduced by the expander.
2017-10-17 14:57:09 -07:00
Leif Andersen
b940ee8440 tag-id -> tag-expr
This is because the optional tag argument can be any expression,
as pointed out by Matthew.
2017-10-16 16:31:38 -04:00
Leif Andersen
2a8bece8de Add #:tag to the docs for define-cpointer-type 2017-10-16 13:07:07 -04:00
Matthew Flatt
2454fd6931 Fix hashing on lists containing self-references
The hashing function was bounded, but with an accidental backtrack
so it could take time exponential in the intended bound.

Closes #1842
2017-10-16 09:27:50 -06:00
Alexis King
00d438cfbe Make splicing-syntax-parameterize recur into module* without a mod-path 2017-10-15 15:53:59 -06:00
Matthew Flatt
0f425f2029 fix "subprocess.rktl" test to run in quiet mode 2017-10-12 17:45:04 -06:00
Matthew Flatt
402bf2173d subprocess: fix problems with adding subprocess to a group 2017-10-12 14:40:23 -06:00
Matthew Flatt
1cc55f30fe subprocess: support adding to an existing subprocess group 2017-10-12 12:37:21 -06:00
Matthew Flatt
9f5e9c8db3 fix documented contract for {absolute,relative,complete}-path?
They accept any string, instead of just path strings.
2017-10-12 12:37:20 -06:00
Matthew Flatt
afc5f919f1 ffi/unsafe/schedule: expose some scheduler internals
These internals are needed for `racket/gui`, which currently
accesses them via C functions.
2017-10-12 12:37:15 -06:00
Vincent St-Amour
fadf0d4a7d Post-release version for the v6.11 release 2017-10-12 13:15:45 -05:00
Justin Slepak
3935824922 Fix bug in hash-table key-value match pattern (#1532)
Match pattern allowed `(hash-table)' to match on non-empty hashes
2017-10-12 01:11:00 -04:00
Andrew Gwozdziewycz
0130662581 Update syntax/readerr documentation to match code. (#1838)
* Update syntax/readerr documentation to match code.

This change simply updates the documentation to match the contract that's actually enforced on `raise-read-eof-error` and `raise-read-error`. 

Fixes #1837.

* Fix additional typo noticed by @bennn
2017-10-10 15:24:08 -04:00
Robby Findler
404539c894 only do the in-tail-position contract elimination with chaperone (or flat)
contracts

closes #1829
2017-10-06 13:30:05 -05:00
Robby Findler
ce30687ec6 fix construction of test case failure message 2017-10-06 13:30:00 -05:00
Matthew Butterick
43caae97b7 Doc typo 2017-10-04 21:14:12 -04:00
Daniel Feltey
3b56866fc1 Fix object/c contract-stronger? 2017-10-02 15:12:17 -05:00
Daniel Feltey
ed5911e531 make contract-stronger? return #f for impersonator contracts that don't implement stronger 2017-09-29 15:57:56 -05:00
Robby Findler
39dea70732 fix promise/c in the case of multiple values coming out of the promise
closes #1821
2017-09-29 07:11:48 -05:00
Leif Andersen
e5a14c4f9d Add make-serialize-info example. 2017-09-28 13:53:19 -04:00
Ben Greenman
56443e76a9 doc: remove extra '}' 2017-09-28 00:48:51 -04:00
Ben Greenman
7d2e23dc28 setup-scribblings: guard against missing 'scribblings
Since `get-info/full` may return a function that is undefined
 for the symbol 'scribblings, pass a failure thunk.

The function can be undefined for 'scribblings if:

1. Install a package with a `scribblings` in its info.rkt
2. Remove `scribblings` from the info file
3. Run `raco setup`
2017-09-25 22:20:32 -04:00
Ben Greenman
f29d77d3d8 doc: swap takef / dropf codomain contracts
The codomain for `takef-right` didn't match `take-right`.
Same for `dropf-right`.
2017-09-25 16:35:39 -04:00
Ben Greenman
1933501658 doc: fix hash-union contracts
Changed to match `hash-set` and `hash-set!` contracts

- `hash-can-functional-set?` => `immutable?
- `hash-mutable?` => `(not/c immutable?)`
2017-09-25 16:35:23 -04:00
Matthew Flatt
d4f2f01c80 ffi/unsafe: add void/reference-sink 2017-09-24 08:27:48 -06:00
Eric Dobson
2825d4bebb Fix duplicate doc of atomic mode. 2017-09-23 16:57:38 -06:00
Leif Andersen
5e3a23886a Make compute-offsets public. (#1814)
Make compute-offsets public.
2017-09-22 23:15:28 -04:00
Ben Greenman
807ce8d495 typo: 'namesapce' 2017-09-18 15:14:52 -04:00
Michael Ballantyne
7c3ff9da18 Improve namespace-attach-module example
The current example fails to illustrate the complete use, as the final evaluation of `apple` would succeed even without the `namespace-attach-module` call. This updated example demonstrates that `namespace-require` is still needed after the module is attached, and also shows how the behavior differs from `namespace-attach-module-declaration`.
2017-09-18 14:57:41 -04:00
gus-massa
93112c4557 fix typos 2017-09-10 21:26:28 -04:00
Matthew Flatt
c8ecb5e5fe fix URL parsing in search-in-context browser trampoline
Use the `URL` class in JavaScript instead of manually parsing a URL
string.

Related to #1798
2017-09-09 19:48:20 -06:00
Vincent St-Amour
bc3e661181 Post-release version for the v6.10.1 release 2017-09-08 13:45:54 -05:00
Matthew Flatt
1f02cf226e fix eq[v]? hashing with many collisions
Normally, it's impossible to generate lots of `eq?`-hashing
collisions, but when the compiler inlines a function, it can duplicate
variables in a way that gives each copy the same `eq?` hash code. The
immutable-hash tree implementation failed when more than 32 collisions
occurred (which triggers a subtree in the collision node).

It's similarly very difficult to generate > 32 values that collide on
`eqv?` hashes but are not `eqv?` (although it must be possible using
exact rationals or complex numbers).
2017-09-07 17:42:29 +01:00
Jay McCarthy
0d59486839 Remove inline style 2017-09-05 15:15:38 +01:00
Jay McCarthy
db82df1295 Make decision on helper text dynamically 2017-09-05 11:13:01 +01:00
Jay McCarthy
d325e03782 Redirect users attention to local vs global documentation search distinction 2017-09-05 09:42:29 +01:00
Milo Turner
361442c197 require racket/contract/base in generic.scrbl to fix label links 2017-09-04 10:50:40 -05:00
Ben Greenman
b743544806 doc: example recursive-contract (#1785) 2017-08-28 16:15:51 -04:00
Sam Tobin-Hochstadt
3dd17c73ed Clarify current-future. (#1780) 2017-08-23 16:58:52 -04:00
Ryan Culpepper
e61d8aa1b2 syntax/parse template: update docs 2017-08-23 02:01:27 -04:00
Ryan Culpepper
5fba2ee9c7 syntax/parse template: move quasitemplate support to pre-pass
Note: quasisyntax has a bug: #`(... (1 2 #,@(list 3) 4)).
Within an escape, no way to express splicing desugaring.
So add a private variant of ?@ that is interpreted even escaped.
2017-08-23 02:01:27 -04:00
Ryan Culpepper
a3511fbafb syntax/parse template: separate guide for re-syntax
Make datum->syntax explicit in guide rather than combined with
constructors like t-cons/x and t-dots (conditional).
This will make datum support easier, later.
For now, it makes it easier to do relocate correctly.

Also, make t-metafun, h-splice inlinable.
2017-08-23 02:01:27 -04:00
Ryan Culpepper
723140720e syntax/parse template: add simple ellipsis special case 2017-08-23 02:01:27 -04:00
Ryan Culpepper
d8b80d7e1d syntax/parse template: add newlines in stress-test output 2017-08-23 02:01:27 -04:00
Ryan Culpepper
eb65a859cd syntax/parse template: remove syntax-property handling
Since template was written, Racket has added a notion of preserved
syntax properties.
2017-08-23 02:01:27 -04:00
Matthew Flatt
ff1ec66c7f pkg catalog operations: store and propagate ring number
Although `raco pkg` doesn't use a package's ring number, it's useful
to preserve for other tools (like the pkg-build service). Adjust `raco
pkg catalog-copy` and `raco pkg catalog-info` to recognize and store a
ring number.
2017-08-22 16:55:10 -06:00
Matthew Flatt
8257a592a0 avoid unnecessary security-guard invocations in ffi-lib
Relevant to racket/sandbox-lib#1
2017-08-21 19:19:57 -06:00
Robby Findler
67ac06e6ed fix some issues surrounding the #:list-contract? argument to various contract combinator utilities
closes #1756
2017-08-21 14:39:52 -05:00
Matthew Flatt
c87cdf5988 fix docs for list->cblock and vector->cblock 2017-08-19 19:02:06 -06:00
Matthew Flatt
52e7267273 doc correction for will-execute 2017-08-19 19:02:06 -06:00
Ben Greenman
3e2325acaf doc: #lang racket does not reprovide 'racket/logging' 2017-08-19 00:53:42 -04:00
Matthew Flatt
93ea42d7b7 tcp-addresses: fix result for a connection peer
In the rktio conversion, the peer-address results were incorrectly
wired to the local-address function.
2017-08-18 09:27:23 -06:00
Matthew Flatt
d6fdabd691 fix doc typo 2017-08-18 09:27:23 -06:00
Jay McCarthy
d1749329a6 fixes pr15467, thanks 2017-08-17 10:40:35 -04:00
shhyou
e997bb96ea Point make-meta-reader to the document of read
- Point read, read-syntax and make-meta-reader to
  the documentation explaining the arguments of
  read and read-syntax.
2017-08-15 07:12:40 -06:00
Matthew Flatt
1a9dee59da deregister semaphore for a blocking file descriptor
The rktio conversion lost the deregistration of file descriptors in an
internal fd-to-semaphore table building on kqueue/epoll, causing the
wrong semaphore to be checked for a later recycling of the file
descriptor. This bug mainly affects Linux and ports created by
`subprocess`, since kqueue is not used for pipes on Mac OS and BSD
variants. The bug does not affect network sockets (which are the
primary intended clients of epoll/kqueue support), since the relevant
semaphore is deregistered when a socket is closed.

Thanks to James Bornholt for discovering the problem and providing the
repair.

Closes #1769
2017-08-10 19:54:04 -06:00
Matthew Flatt
664bec2040 repair a problem with module->namespace
Fix a problem with compile-time bindings added to a
namespace created by `module->namespace` for a module
that does not have a source file.

Possibly, there's a different fault that should be fixed that caused a
binding to use the module's instantiation-time module path index
instead of its compile-time module path index (which is what happens
when a file is involved). This repair fixes the problem in a general
way, though, and leaves further improvement to the reimplementation of
the expander in Racket (which already does not suffer from the bug).

Thanks to Alexis for providing the example.
2017-08-10 18:33:49 -06:00
Matthew Flatt
59fc3758f0 thread-suspend-evt: doc correction 2017-08-10 18:33:49 -06:00
Matthew Flatt
f790084e11 call-in-nested-thread: add missing info in docs 2017-08-10 18:33:49 -06:00
Ryan Culpepper
5519a8ab45 example of unquoted-printing-string in make-constructor-style-printer 2017-08-04 12:24:13 -04:00
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
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
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
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
d1fa65ac92 doc correction for chaperone-of? 2017-07-23 08:21:28 -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
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
Ryan Culpepper
83540d1ae6 fix literal-set test
Merge to release branch.
2017-07-14 13:28:21 -04: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
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
Ben Greenman
5917f92ac1 typo: remove extra period in vectorof docs 2017-07-04 13:03:22 -04: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
ed8145e0d2 fix doc typo 2017-07-02 14:26:59 -06:00
Matthew Flatt
63146e5451 ffi/unsafe/custodian: handle already-shutdown custodians 2017-06-29 14:36:42 -06:00
Matthew Flatt
eb24c1e0b1 find-relative-path: correct contract in docs
Also, avoid a test on Windows that can't work there.
2017-06-29 13:26:24 -06:00
Matthew Flatt
7939e32a57 docs: fix {read,peek}-{byte,char}-or-special argument order 2017-06-29 13:20:57 -06:00
Daniel Feltey
e289750b03 Fix box/c typo/bug
Previously non-flat box/c contracts would always use the `write` contract to
check the contents of the box rather than the `read` contract.
2017-06-28 14:48:35 -05:00
Ben Greenman
04c1c15d89 bug: add guard against string-paths in 'find-relative-path'
Add guard, if first argument to `find-relative-path` is not a path,
 then don't call `path-convention-type` on it.

Thanks to Jack Firth for reporting:
https://github.com/racket/rackunit/pull/46
2017-06-28 10:19:50 -04:00
Sam Tobin-Hochstadt
f9a39531e9 Fix a very old race condition in this test.
Probably exposed by the rktio changes.
2017-06-26 17:56:23 -04:00
catull
95ddfa4972 Typo: (fir l) was probably meant to be (fist l). 2017-06-25 01:18:50 -04:00
Ryan Culpepper
44eb5532ad syntax/parse: add ~or* and ~alt, like ~or{S,H} and ~or{EH}, respectively 2017-06-24 17:07:55 -04:00
Matthew Flatt
81f1c90ee0 small corrections reader docs
Fixes inaccuracies discovered when reimplementing
the reader in Racket.
2017-06-22 15:00:00 -06:00
Matthew Flatt
3c07250db4 fix printer for (unquote @d)
Avoid printing `(unquote @d)` or `(unsyntax @d)` as `,@d` or `#,@d`,
which would mean `(unquote-splicing @d)` or `(unsyntax-splicing @d)`
to the reader, by adding an extra space before the `@`.
2017-06-22 15:00:00 -06:00
Matthew Flatt
4bbe7a241d doc clarification for parameterize-break 2017-06-22 12:59:02 -06:00
Matthew Flatt
0d2908f824 regexp docs: minor corrections
Fixes inaccuracies discovered when reimplementing
regexp matching in Racket.
2017-06-22 12:25:43 -06:00
Matthew Flatt
36e2155b91 tcp-addresses: fix docs to note that a UDP socket is accepted 2017-06-22 12:25:43 -06:00
Daniel Feltey
87e4bdbec8 Fix segfault on accessing non-present impersonator properties of property-only vector chaperones
Additionally this adds macros that distinguish between the chaperone redirects of prop-only vector
chaperones, function chaperones, and structure chaperones since each of these may store a vector
in the redirects field.
2017-06-22 12:46:58 -05:00
Matthew Flatt
f8c7feaf88 fix problem with prefabs, auto fields, and construction via a key
Auto fields were incorrectly recorded as immutable in a structure type
that is first generated from the prefab struct key instead of
`make-struct-type`.

Thanks to Deren Dohoda for the report.
2017-06-22 10:46:49 -06:00
Matthew Flatt
31d82eb9a6 raco setup: add note in docs for --tidy
Related to #1718
2017-06-22 08:39:39 -06:00
Matthew Flatt
30e4e812ba raco test: doc and help tweaks
* Clarify shell context for `++args` note on quotes

 * Add `history` notes

 * Make the help output fit in 80 columns

 * Bump "compiler-lib" version
2017-06-22 08:36:30 -06:00
Conor Finegan
9852afe1b1 raco test: support ++arg <arg> and ++args <args>
Add a way for `raco test` to pass along arguments to the test program.
2017-06-22 08:09:22 -06:00
Matthew Flatt
a7d161cfac raco pkg update: fix --update-deps and cross-scope deps
When `--update-deps` (which is implied by `--all`) was used on
user-scope packages that depend on installation-scope packages, the
installation-scope dependencies were treated as missing, which forced
an update of the user-scope packages. Check both scopes for
dependencies.

Closes #1730
2017-06-22 07:33:08 -06:00
Matthew Flatt
a15b16cfd9 repair expand-user-path 2017-06-21 16:19:14 -06:00
Matthew Flatt
83cb1a0d00 repair and tests for Windows path handling
In the process of extracting minimal Windows path encoding for rktio,
I noticed a decoding issue with a path that ends with an unpaired
high-surrogate value. Add a suitable tests and fix the old decoder
(although it will probably go away).
2017-06-21 05:23:53 -06:00
Matthew Flatt
d4742a0618 fix bytes-convert-end
The `bytes-convert-end` function didn't set up a proper decoding.
Make sure that it at least does nothing for encodings where
there's nothing to do.
2017-06-21 05:23:53 -06:00
Ben Greenman
a915433b02 doc: add tech link for box in 'immutable?' description 2017-06-21 01:47:01 -04:00
Matthew Flatt
8094ef7a02 clarify free docs: don't use with malloc modes other than 'raw
Closes #1708
2017-06-20 11:59:26 -06:00
Matthew Flatt
d8fcbc7b56 remove incorrect claim about identifier-binding
It was true for the old macro system, but it isn't true now.

Closes #1485
2017-06-20 11:59:26 -06:00
Matthew Flatt
20f1f146c7 raco exe: fix incorrect shortcut in submodule checking
Closes #1712
2017-06-20 08:28:54 -06:00
Matthew Flatt
51bf69e356 switch for/list back to a loop plus reverse
Closes #1721, which points out that the `for/list` expansion
introduced in commit 5e94a906cd interacts badly with a body
that captures a continuation plus Racket's current implemenation
of continuations.

When Racket one day gets a better implementation of continuations,
this change could be considered again, but the general question is
whether programs can detect or be affected by the size of the
continuation (when the programs don't directly control the
continuation creation --- otherwise continuation marks obviously
expose the size).
2017-06-20 08:28:53 -06:00
Matthew Flatt
54f16758a5 bump version number to reflect rktio refactoring 2017-06-19 06:45:54 -06:00
Matthew Flatt
60e85fcaf3 rktio: document 'replace and 'replace/truncate changes 2017-06-19 06:45:18 -06:00
Matthew Flatt
c02eacd5d2 rktio: repairs to kqueue-based fs-change events 2017-06-19 06:45:18 -06:00
Matthew Flatt
c4b3b19c1e rktio: repairs
All tests now pass for MacOS.
2017-06-19 06:45:17 -06:00
Sam Tobin-Hochstadt
5d4bf33906 Tests keep taking longer. 2017-06-09 18:08:12 -04:00
Matthew Flatt
dc14a68162 fix performance problem in expander
For a term

 (lambda (arg-id ...) (define def-id _rhs) ... (arg-id def-id) ...)

the expander could take quadratic time in the number of `def-id`s
due to walking an environment to remove use-site scopes. (The
variant of the expander rewritten in Racket didn't have this
problem.)
2017-06-08 07:01:31 -06:00
Ben Greenman
5cfe5619de style: document '/', as in 'call/cc'
Add row to the table in the section on "Names".

Also clarify that the nearby margin note is about `#%`
2017-06-07 14:29:33 -04:00
Leif Andersen
40d4a35329
Add documentation for scheme_atexit 2017-06-04 18:52:09 -04:00
Leif Andersen
2f6c42f3c1 Add a #:make-c-id flag to define-ffi-definer
This make-c-id allows an author to specify a convention for how
to connect and identifier defined with define-ffi-definer and
the actual symbol in the file.

* Adds docs.
* Adds tests.
* Adds history.
2017-06-02 10:26:57 -04:00
Matthew Flatt
f459dd9eb7 make collapse-module-path-index work on a "self" modidx 2017-06-01 19:37:18 -06:00
Leif Andersen
3364dba903 Another typo in the docs:
type? -> ctype?
2017-06-01 15:37:16 -04:00
Leif Andersen
cac1266d05 Fixed documentation for cblock->vector.
It defined cblock->vector as cblock->vector, rather than
comparing it cblock->list.
2017-05-31 15:46:54 -04:00
Alexis King
69fb636a1c Add a missing for-label require in the contracts section of the guide 2017-05-30 20:09:50 -07:00
Ben Greenman
6d7f075ec5 typo: set 'subset?' functions take 2 arguments, no more 2017-05-30 17:47:53 -04:00
Leif Andersen
ea778e1dd9 FIx typo in #:retry docs for _fun. 2017-05-30 08:46:10 -04:00
Matthew Flatt
06b69c625f repair chainges to ffi/file
Bring back the exported `_file/guard`, `_file/r`, and `_file/rw`;
restore/move tests in "file.rktl" test suite; and add docs for new
functions.
2017-05-27 07:29:47 -06:00
Matthew Flatt
87c0ca84a8 add ffi/unsafe/global and switch openssl to use it
Continues the move away from using the FFI to access unsafe Racket
functionality.
2017-05-26 17:49:16 -06:00
Matthew Flatt
bf83d1126d add some unsafe operations as an alternative to FFI access
Accessing unsafe functionality through the FFI seemed like a good way
to avoid writing C code, but it made things more complicated instead
of easier, and it interacts badly with a more agressive shift away
from C (such as porting to Chez Scheme). So, add functions to the
primitive `#%unsafe` module, instead.
2017-05-26 16:26:06 -06:00
Leif Andersen
8f6ec91fb1
code-define-id -> core-define-id
Just another small typo.
2017-05-25 14:48:53 -04:00
Leif Andersen
3f61100dcc
ctype -> ctype?
Also void -> void?

These two forms are now documented using contracts, which matches
with the rest of the FFI docs.
2017-05-25 13:48:48 -04:00
Milo Turner
cc25a27f87 fix id-set-symmetric-difference, same as 4716a6e fixed for sets 2017-05-24 15:55:03 -04:00
Stephen Chang
7620bfcb7c fix and actually run id-set tests 2017-05-24 13:25:15 -04:00
Robby Findler
ffe07718b8 adjust browser-run to include any stderr message into the error dialog box 2017-05-23 08:46:21 -05:00
Robby Findler
f175148ca3 attempt to fix the "cannot visit documentation because the anchors
are dropped in the urls" problem

inspired by Greg's approach, as discussed here:

  http://www.greghendershott.com/2017/03/please-scroll.html
2017-05-19 15:18:26 -05:00
Alexis King
699dd39b1e Fix square brackets in benchmark that is supposed to be R5RS Scheme
This issue was uncovered by a change to the r5rs package in
racket/r5rs@ecbe26bb8b.
2017-05-18 14:39:26 -07:00
Ryan Culpepper
81cb99038c add note about spurious test failure 2017-05-18 12:54:26 -04:00
Ryan Culpepper
c082f130cb support string, bytes (bindings from racket) as stxclass refs
add compile-time table as alternative to stxclass binding
2017-05-18 12:54:26 -04:00
Ryan Culpepper
ce9b309dbc defstxclass uses #:kind "syntax class" for better labeling 2017-05-18 12:54:26 -04:00
Daniel Feltey
ab2b36175b Add vectorof first-order test cases
Previously none of the test cases would execute the `check-vectorof` function's
`first-order?` case in the implementation of `vectorof` contracts.
2017-05-17 13:31:45 -05:00
Daniel Feltey
8bc9cef7a9 Fix typo in vector contract implementation leading to wrong error message 2017-05-15 17:33:24 -05:00
Robby Findler
f2a29515d1 adjust invariant-assertion error message to avoid blame
closes #1681
2017-05-13 11:12:25 -05:00
Georges Dupéron
5904cea99a Small changes to the documentation
* Fixed typo in the docs for serialization (serializable-struct/version → serializable-struct/versions)
* Fixed typo in scribble documentation (head pattern → a-pattern)
* Made the order of the argument descriptions match the order of the arguments in the documentation for import and export
2017-05-12 16:01:29 -05:00
Leif Andersen
cd1e56bfaf Improve docs for FFI custodian API. (#1684)
Improve docs for FFI custodian API.

The docs were unclear on when an object goes from weakly to strongly
held.

Also add a missing space
2017-05-12 16:32:25 -04:00
Matthew Flatt
f43234e1cb add prop:authentic and (struct .... #:authentic ....)
An authentic structure type is one whose instances cannot be
impersonated or chaperoned. The intended use of `prop:authentic` is to
annotate a library-private data structure where impersonators are
never needed internally for the data structure, and the declaration
lets the compiler produce less code and fewer branches by omitting
impersonator support.
2017-05-12 12:40:57 -06:00
Robby Findler
65beb4de4c fix cons/dc's predicate 2017-05-12 11:26:49 -05:00
Robby Findler
8f34b702ab improve flat-contract test suite so that it checks
the predicate-ness of the contracts
2017-05-12 11:26:49 -05:00
Matthew Butterick
7908be8ce9 Fix spelling errors (#1687)
“cooresponds” → “corresponds” x2
2017-05-11 10:08:26 -04:00
Matthew Flatt
e6793c4598 fix variable-reference->module-path-index on primitive refs 2017-05-09 20:28:25 -06:00
Matthew Flatt
26c4dd6909 add #%unsafe exports to implement ffi/unsafe/atomic
Export functions through the usual `#%unsafe` primitive module,
instead of using the FFI to get at unsafe operations.
2017-05-09 09:32:34 -06:00
Robby Findler
79cef0a96e clean up a bunch of contract names 2017-05-06 22:10:41 -05:00
Robby Findler
2db8523eb5 add dependency on the icons pkg 2017-05-02 15:32:28 -05:00
Ben Greenman
11484b9d34 doc: explain blame object passed to late-neg
The blame object passed to a late-neg-proj function will be missing
 one party. The missing party is sometimes the negative party and
 sometimes the positive party.
2017-05-01 18:26:01 -04:00
Sam Caldwell
a666f1b0c1 typo 2017-05-01 16:34:26 -04:00
Vincent St-Amour
4ffd2fc1b8 Restore docs about impersonator-of? and immutable hash tables.
In the impersonate-hash docs, this time.
2017-04-30 13:44:49 -05:00
Vincent St-Amour
206ced8d47 Add examples for impersonator-of?. 2017-04-30 13:44:49 -05:00
Vincent St-Amour
d9b39eac1f Add back desciption of impersonator-of?'s behavior on impersonator subparts. 2017-04-30 13:44:49 -05:00
Daniel Feltey
e29dba115b New impersonator-of? docs 2017-04-30 13:44:49 -05:00
Matthew Flatt
de0d84f7b3 racket/serialize: repairs for structs that have auto fields
Closes #1650
2017-04-29 13:20:25 -07:00
Matthew Flatt
bb2f1998f1 document binding structure of for/fold
The binding structure is not natural, but changing the binding rules
would risk breaking existing code.

Closes #1659
2017-04-29 11:08:42 -07:00
Vincent St-Amour
13443dec92 Add chaperone-vector*, unsafe-chaperone-vector, and property-only vector chaperones.
By analogy with the procedure chaperone equivalents.
2017-04-28 14:27:53 -05:00
Matthew Butterick
6e64da6880 Fix typos (#1651)
Fix typos

`sourve` → `source` x4
2017-04-27 09:16:22 -06:00
John Clements
473a3f5573 doc update for info.rkt files
specifically, mention that info.rkt files do
not provoke package conflicts
2017-04-27 09:15:03 -06:00
Matthew Flatt
608e6cc2a2 add tests for racket/port
Also, fix some doc typos.
2017-04-26 17:16:59 -06:00
Matthew Flatt
d469265a6e Makefile: support both cross-platform and non-cross installers
In non-cross mode, `-C` needs to go after `-G` and `-X` when setting
up a "bundle" directory to turn into an installer, because that mode
needs to use foreign libraries (such as SQLite) at build time, and it
can use the instances that are being set up for the installer.

Meanwhile, improve the advice for setting `PLAIN_RACKET` to use `-C`
for a cross-platform build mode, even though things tend to work
anyway without it.
2017-04-26 15:59:04 -06:00
Matthew Flatt
6de3659664 repair for hash-keys-subset?
When comparing a part of a hamt that is a collision node versus a
subtree node, a "hash code" was extracted from the collision node ---
but that's really a code for an integer key is that used for the
collision element. The comparison should instead use a code extracted
from the reference to the collision node (which is the code that is
common to all colliding keys).
2017-04-26 15:27:39 -06:00
Matthew Flatt
f8aeed279b Windows: fix 64-bit mzdyn.exp
Also, make the `raco exe` tests more accommodating to uncooperative
Windows configurations.
2017-04-25 16:31:51 -07:00
Philip McGrath
e9cd1e5595 Corrected Racket Reference for get/build-late-neg-projection
and `get/build-val-first-projection`.
Both had incorrectly shown that the returned function took
a `contract?` as an extra first argument.
2017-04-25 14:57:50 -05:00
Matthew Flatt
c0f158b38c Makefile: add a client-testing entry for use by distro-build
Also, add a "distro.rkt" test to "tests/racket/test" to hold
basic checks to run in a client build.
2017-04-25 11:12:01 -06:00
Matthew Flatt
c917434a86 improve cross-platform support
Detangle the target and host DLL and library directories by
making `get-lib-search-dirs` and `get-dll-dir` report the
host system's directories, and add `get-cross-lib-search-dirs`
and `get-cross-dll-dir`.

A new `-C`/`--cross` flag causes `racket` to save a host config and
collection directory and make them available via `(find-system-path
'host-{config,collects}-dir)`, while plus `(system-type 'cross)`
reports whether `-C` mode is in effect. Besides making the host paths
available, this change allows a same-platform build to run in
corss-platform mode.

The immediate problem to solve was the creation of Windows installers
on Windows, where recent changes to support 'gui-bin-dir configuration
need a clear distinction between the host Racket and the target Racket
being built, even if they're the same platform. (The "GRacket.exe"
executable didn't work, for example.)

The changes in this commit are more than needed for the immediate
problem, but they naturally build on the necessary `-C` flag, and they
support cross-platform package setup where native libraries are needed
during setup.
2017-04-25 08:31:26 -06:00
Matthew Flatt
a71d87c5a9 optimizer: remove incorrect assertion 2017-04-21 14:28:57 -06:00
Matthew Flatt
9cb8c8fdd9 avoid O(n^2) GC time with ephemeron chains
Avoid the well-known possibility of quadratic handling of ephemeron
chains, where all ephemerons are immediately known, no keys are
immediately known, and each link in the chain has a value that refers
to the next link's key.

To aviod quadratic behior, attach a list of ephemerons to each page of
allocated objecst, where marking any object on the page triggers a
rescan of the ephemerons without waiting to rescan all ephemerons.
2017-04-20 20:48:55 -06:00
Scott Moore
54bd21e65a Discuss security considerations of racket/sandbox in Reference 2017-04-20 16:23:00 -05:00
Matthew Flatt
3bc3fe9e26 fix dynamic-wind matching for continuation jumps
Thanks to Gustavo and Robby for tracking down the relevant feature
of a complex example that was found by random testing.
2017-04-19 07:00:34 -06:00
Vincent St-Amour
c652afa894 Document surprising behavior of in-range with floats and zero. 2017-04-17 20:23:28 -05:00
Leif Andersen
47a2d4a879 Fixed tests for log function.
The test cases relied on arity and changing log to have an arity
of both 1 and 2 activated new (incorrect) tests. I fixed the
incorrect tests as they applied to the log function.
2017-04-16 15:34:13 -04:00
Leif Andersen
922b5f06e9 Make log also accept a base. (#1667)
Make `log` in `racket/base` optionally accept a second argument.

The second argument is the log `base`. The docs also recommend
`fllogb` when precision is important.

* Error message when base is 1
* Added docs.
* Add tests.
2017-04-15 10:40:41 -04:00
Robby Findler
6492226411 add a #:name argument to flat-contract-with-explanation 2017-04-13 10:19:20 -05:00
Robby Findler
e7f68472e5 the "I don't konw what name to give" name has changed; update the guide to reflect that
closes #1661
2017-04-13 09:37:25 -05:00
Robby Findler
b3d3bf7c01 improve the guide section on how to use the contract library
to build new combinators
2017-04-12 21:27:50 -05:00
Philip McGrath
8bb8365a38 Revise Racket Guide 7.8 Building New Contracts
to use late neg projections in the examples, rather val first projections.
2017-04-12 21:27:50 -05:00
Matthew Flatt
662fd84eda raco: fix command name selection by prefix
Repairs a problem with 409321c03b.

Merge to v6.9
2017-04-10 08:22:49 -06:00
Ben Greenman
50f67cf6e4 remove @history for flat contracts #:exercise
Remove the history annotation on `build-flat-contract` property
 about removing the `#:exercise` keyword.

Because the keyword wasn't actually removed from the function,
 only from the (incorrect) documentation. So there aren't any
 legal programs that depend on the removed keyword argument.
2017-04-09 11:36:06 -04:00
Ben Greenman
3bb131ecb2 add #:generate keyword to build-flat-contract-property
the public function was missing the `#:generate` keyword,
 added this and documented why `#:exercise` is missing
2017-04-08 21:37:39 -04:00
Robby Findler
d224da3105 document the #:missing-party argument to raise-blame-error
closes #1658
2017-04-08 18:55:58 -05:00
Sam Tobin-Hochstadt
9d26d675a7 Provide srcloc when constructing define in define/contract. (#1660) 2017-04-08 14:38:59 -04:00
Vincent St-Amour
73d28d88d2 Post-release version for the v6.9 release 2017-04-07 13:30:52 -05:00
Matthew Flatt
5fb86dc55e fix ad-hoc hash-ref optimizaiton
Optimization to convert `(hash-ref <ht> <key> (lambda () <constant>))`
to `(hash-ref <ht> <key> <constant>)` didn't check that the `lambda`
for had zero argument.

Closes #1648
2017-03-30 18:45:26 -04:00
Matthew Flatt
92a0dcbcb0 fix problems with chaperoning/impersonating keyword functions 2017-03-29 12:26:48 -06:00
Matthew Flatt
1030e079c4 raco ctools docs: improve xref docs and mention "cext-lib" package 2017-03-28 19:11:44 -06:00
Ben Greenman
30aa951db8 gzip: use path-add-extension as default
instead of `string-append`-ing the extension,
 because that doesn't work for all path strings
2017-03-26 20:58:59 -04:00
Ben Greenman
2cbd44d64d add optional 'sep' argument to path-add-extension
New optional argument to 'path-add-extension',
 a byte string to replace for the '.' in the argument path.
2017-03-26 20:58:53 -04:00
Matthew Flatt
e22a5da06c find-relative-path: case-normalize for comparison by default
This change affects programs only on Windows. For example, `C:\a\b`
relative to `c:\A\c` is `..\b`, instead of not relative.

Closes #1603
2017-03-24 20:00:03 -06:00
Matthew Flatt
41e3deab97 racket/cmdline: fix table filtering when #:ps is used 2017-03-24 17:28:22 -06:00
William G Hatch
144486dcc0 add more plugins to emacs section of guide (#1510)
Add more plugins to Emacs section of guide, including
a section for Evil Mode
2017-03-24 17:28:10 -06:00
Gustavo Massaccesi
cf22b1bc7d add test for ormap 2017-03-24 17:09:17 -06:00