racket/pkgs/racket-doc/scribblings/reference
Matthew Flatt 37a985a681 compile expander in "static" linklet mode
The expander as a linklet will be instantiated once, so there's no
need to capture references in closures among functions within the
expander. Add a "static" linklet compilation mode to inline the
variable addresses that would otherwise be referenced via a closure.

Although the change is intended to speed up the expander by avoiding
some indrections, it also reduces the bytecode size of the expander.
Bitmaps that track which linklet variables are used in closures turn
out to have been about 25% of the expander's bytecode size, since the
linklet has so many definitions.
2018-03-17 07:24:50 -06:00
..
async-channels.scrbl use `scribble/examples' for the Reference 2015-12-11 12:29:41 -07:00
block.scrbl use `scribble/examples' for the Reference 2015-12-11 12:29:41 -07:00
booleans.scrbl doc: add tech link for box in 'immutable?' description 2017-06-21 01:47:01 -04:00
breaks.scrbl doc clarification for parameterize-break 2017-06-22 12:59:02 -06:00
bytes.scrbl doc repair 2017-12-08 17:47:14 -07:00
channels.scrbl Fix docs on channel synchronization 2015-06-29 17:34:57 -06:00
chaperones.scrbl document/test optional argument of impersonator propertry accessor 2017-12-22 19:07:36 -07:00
chars.scrbl Unicode 7.0 2015-02-09 11:33:13 -07:00
class.scrbl Add links for examples to contracted functions. 2017-07-11 12:30:45 -04:00
cmdline.scrbl fix command-line docs for flags that start "--" 2015-05-31 06:06:22 -06:00
code-inspectors.scrbl non-original code inspector => mark loaded bytecode as non-runnable 2018-03-13 17:26:50 -06:00
collects.scrbl sandwitch -> sandwich 2016-08-01 12:41:56 -04:00
concurrency.scrbl
cont-marks.scrbl call-with-immediate-continuation-mark: fix docs 2017-07-18 06:42:53 -06:00
cont.scrbl doc typo 2017-12-11 17:58:24 -07:00
contracts-struct-prop.scrbl
contracts.scrbl Fix contract in docs. 2018-02-22 12:04:41 -06:00
control-lib.scrbl
control.scrbl
custodians.scrbl add custodian-shut-down? 2017-12-18 15:37:04 -07:00
custom-ports.scrbl docs: fix {read,peek}-{byte,char}-or-special argument order 2017-06-29 13:20:57 -06:00
custom-write.scrbl Fix for-label requires for some struct documentation 2016-07-28 15:33:13 -05:00
data.scrbl switch to a new, Racket-implemented expander & module system 2018-02-26 13:19:53 -07:00
debugging.scrbl
define-struct.scrbl doc: remove unmatched ] 2017-07-23 19:32:26 -04:00
dicts.scrbl Add example for dict-implements/c 2016-11-15 08:29:51 -05:00
ellipses-defn.rkt
ellipses.rkt
encodings.scrbl "Mac OS X" -> "Mac OS" 2016-12-23 12:18:36 -07:00
engine.scrbl
enter.scrbl
envvars.scrbl fix wrong pluralization 2016-07-28 15:33:13 -05:00
eval-model.scrbl fix tiny typo (#1630) 2017-03-07 22:20:56 -05:00
eval.scrbl switch to a new, Racket-implemented expander & module system 2018-02-26 13:19:53 -07:00
evts.scrbl attempt to improve the evt guide section 2018-02-22 17:37:58 -06:00
exit.scrbl
exns.scrbl add unquted-printing strings 2017-08-04 06:13:19 -06:00
extflonums.scrbl typo 2015-12-26 17:01:22 -06:00
extras.css
extras.tex
fasl.scrbl racket/fasl: switch to version-independent format 2018-03-13 16:32:01 -06:00
file-ports.scrbl rktio: document 'replace and 'replace/truncate changes 2017-06-19 06:45:18 -06:00
filesystem.scrbl Filesystem doc wording improvements. (#1923) 2018-01-08 01:42:42 -05:00
fixnums.scrbl use `scribble/examples' for the Reference 2015-12-11 12:29:41 -07:00
flonums.scrbl use `scribble/examples' for the Reference 2015-12-11 12:29:41 -07:00
for.scrbl docs: fix delimiter typo in for's scribblings 2018-01-31 15:05:10 -05:00
format.scrbl option to limit prefix in ~a,~s,~v,~e,~.a,~.s,~.v 2016-02-11 19:51:47 -05:00
futures-logging.scrbl
futures.scrbl Clarify current-future. (#1780) 2017-08-23 16:58:52 -04:00
generic.scrbl require racket/contract/base in generic.scrbl to fix label links 2017-09-04 10:50:40 -05:00
hashes.scrbl doc: fix hash-union contracts 2017-09-25 16:35:23 -04:00
help.scrbl
include.scrbl
info.rkt
init.scrbl Moved racket/gui/init and racket/gui/interactive to the gui-lib 2016-07-26 10:14:38 -04:00
interactive.scrbl
io.scrbl
kernel.scrbl
linklet.scrbl compile expander in "static" linklet mode 2018-03-17 07:24:50 -06:00
load-lang.scrbl
logging.scrbl add stdout logging in the same style as stderr logging 2018-02-28 06:52:55 -07:00
macros.scrbl
match-grammar.rkt Add prefab structs to match grammar 2015-08-07 20:11:52 -04:00
match-parse.rkt Add prefab structs to match grammar 2015-08-07 20:11:52 -04:00
match.scrbl clarify the purpose of the (bad) match expander example 2016-12-30 08:51:00 -06:00
memory.scrbl switch to a new, Racket-implemented expander & module system 2018-02-26 13:19:53 -07:00
model.scrbl
module-reflect.scrbl typo: description of module-compiled-name argument 2016-07-30 02:14:01 -04:00
mpairs.scrbl
mz.rkt "Mac OS X" -> "Mac OS" 2016-12-23 12:18:36 -07:00
namespaces.scrbl variable-reference->namespace: ensure that module is available 2018-03-09 11:06:49 -07:00
networking.scrbl fix doc typo 2017-08-18 09:27:23 -06:00
notation.scrbl switch to set-of-scopes expander 2015-07-16 14:20:00 -06:00
numbers.scrbl Fix range for random-seed. 2017-11-16 12:52:34 -05:00
os-lib.scrbl Fix history annotations to refer to 6.3. 2015-10-12 13:49:55 -05:00
os.scrbl Add racket/os library. 2015-10-05 11:59:38 -06:00
pairs.scrbl doc: notes about permutations 2018-02-07 22:21:29 -05:00
parameters.scrbl
paths.scrbl racket/path: add #:more-than-same? argument to find-relative-path 2018-03-13 20:14:04 -06:00
pipes.scrbl
places-logging.scrbl
places.scrbl "Mac OS X" -> "Mac OS" 2016-12-23 12:18:36 -07:00
plumbers.scrbl typo: pluber? -> plumber? 2017-02-22 23:20:12 -05:00
port-buffers.scrbl
port-lib.scrbl input-port-append: add #:name argument 2018-03-06 20:01:47 -07:00
port-line-counting.scrbl
port-procs.scrbl add @tech links in input-port? and output-port? 2016-04-04 19:03:16 -04:00
ports.scrbl
pretty-print.scrbl Doc typo 2017-10-04 21:14:12 -04:00
printer.scrbl non-original code inspector => mark loaded bytecode as non-runnable 2018-03-13 17:26:50 -06:00
procedures.scrbl unsafe-{impersonate,chaperone}-procedure: to racket/unsafe/ops 2016-01-16 08:20:36 -07:00
prog-steps.rkt
promise.scrbl Fix history annotations to refer to 6.3. 2015-10-12 13:49:55 -05:00
prop-port.scrbl
read.scrbl reference: fix link to DrRacket docs 2017-12-18 06:52:13 -07:00
reader-example.rkt small corrections reader docs 2017-06-22 15:00:00 -06:00
reader.scrbl replace { with [ to fix exn reference 2017-11-02 13:53:12 -05:00
readtables.scrbl switch to a new, Racket-implemented expander & module system 2018-02-26 13:19:53 -07:00
reference.scrbl Remove bold from inside title of Reference 2017-11-21 10:08:13 -08:00
regexps.scrbl regexp docs: minor corrections 2017-06-22 12:25:43 -06:00
rerequire.scrbl
running.scrbl
runtime.scrbl switch to a new, Racket-implemented expander & module system 2018-02-26 13:19:53 -07:00
rx.rkt regexp docs: minor corrections 2017-06-22 12:25:43 -06:00
sandbox.scrbl Discuss security considerations of racket/sandbox in Reference 2017-04-20 16:23:00 -05:00
security-guards.scrbl
security.scrbl switch to a new, Racket-implemented expander & module system 2018-02-26 13:19:53 -07:00
semaphores.scrbl
sequences.scrbl Edit out another “performant” 2018-01-06 15:13:14 -07:00
serialization.scrbl Add make-serialize-info example. 2017-09-28 13:53:19 -04:00
sets.scrbl Edit out “performant” 2018-01-06 15:13:14 -07:00
shared.scrbl use `scribble/examples' for the Reference 2015-12-11 12:29:41 -07:00
splicing.scrbl Add splicing-parameterize to racket/splicing 2018-02-01 10:28:20 -08:00
startup.scrbl add stdout logging in the same style as stderr logging 2018-02-28 06:52:55 -07:00
string-input.scrbl peek-{char,byte}-or-special: add 'special option 2018-02-27 18:14:54 -07:00
string-output.scrbl doc clarification on output functions and mutable arguments 2015-05-16 15:04:32 -06:00
string-ports.scrbl use `scribble/examples' for the Reference 2015-12-11 12:29:41 -07:00
strings.scrbl Fix typo in string-ci=? docs (#1424) 2016-08-19 06:33:45 -06:00
struct-inspectors.scrbl Fix the document of struct-type-make-constructor 2018-01-02 14:27:18 -06:00
struct.scrbl example of unquoted-printing-string in make-constructor-style-printer 2017-08-04 12:24:13 -04:00
stx-comp.scrbl remove incorrect claim about identifier-binding 2017-06-20 11:59:26 -06:00
stx-expand.scrbl add module-compiled-indirect-exports and co. 2016-05-18 13:13:15 -06:00
stx-ops.scrbl use `scribble/examples' for the Reference 2015-12-11 12:29:41 -07:00
stx-param.scrbl Add define-rename-transformer-parameter and friends 2016-01-08 11:03:33 -05:00
stx-patterns.scrbl add support for ... to -> contracts to indicate repeated arguments 2016-01-28 15:34:57 -06:00
stx-props.scrbl add syntax-property-remove 2018-03-11 11:31:56 -06:00
stx-taints.scrbl fix typo in the syntax-arm docs (#1447) 2016-09-07 14:27:35 -04:00
stx-trans.scrbl restore syntax-local-make-delta-introducer 2018-02-27 20:23:12 -07:00
subprocess.scrbl subprocess: support adding to an existing subprocess group 2017-10-12 12:37:21 -06:00
surrogate.scrbl Correct the docs for surrogate's augment form. 2018-01-08 16:04:37 -05:00
symbols.scrbl
sync.scrbl Add docs for fsemaphores in the Synchronization section. 2015-03-26 11:23:53 -06:00
syntax-model.scrbl expander: fix problems with cross-phase persistence 2018-02-26 20:29:22 -07:00
syntax-util.scrbl Improve with-disappeared-uses and add record-disappeared-use 2016-06-29 12:50:14 -05:00
syntax.scrbl add docs for lazy-require-syntax 2017-12-15 21:19:12 +01:00
thread-cells.scrbl
thread-groups.scrbl
thread-local.scrbl
threads.scrbl thread-suspend-evt: doc correction 2017-08-10 18:33:49 -06:00
time.scrbl scalinger -> scaliger 2016-03-10 15:08:48 -06:00
trace.scrbl use `scribble/examples' for the Reference 2015-12-11 12:29:41 -07:00
undefined.scrbl
units.scrbl signature-members: adjust element ids based on reference 2015-08-13 10:44:26 -06:00
unix-paths.scrbl "Mac OS X" -> "Mac OS" 2016-12-23 12:18:36 -07:00
unsafe-undefined.scrbl
unsafe.scrbl switch to a new, Racket-implemented expander & module system 2018-02-26 13:19:53 -07:00
values.scrbl use `scribble/examples' for the Reference 2015-12-11 12:29:41 -07:00
vectors.scrbl switch to a new, Racket-implemented expander & module system 2018-02-26 13:19:53 -07:00
windows-paths.scrbl doc: index 'RED' and 'REL' 2017-11-04 22:41:10 -04:00
write.scrbl doc repair 2018-03-06 09:12:48 -07:00