racket/pkgs/racket-doc/scribblings/reference/mz.rkt
Matthew Flatt 710320e3dc "Mac OS X" -> "Mac OS"
Although "macOS" is the correct name for Apple's current desktop OS,
we've decided to go with "Mac OS" to cover all of Apple's Unix-like
desktop OS versions. The label "Mac OS" is more readable, clear in
context (i.e., unlikely to be confused with the Mac OSes that
proceeded Mac OS X), and as likely to match Apple's future OS names
as anything.
2016-12-23 12:18:36 -07:00

154 lines
4.8 KiB
Racket

#lang at-exp racket/base
(require scribble/struct
scribble/manual
scribble/examples
scribble/decode
racket/contract
"../icons.rkt")
(provide (all-from-out scribble/manual)
(all-from-out scribble/examples)
(all-from-out racket/contract))
(require (for-label racket))
(provide (for-label (all-from-out racket)))
(provide mz-examples)
(define mz-eval (make-base-eval))
(define-syntax mz-examples
(syntax-rules ()
[(_ #:eval . rest)
(examples #:eval . rest)]
[(_ . rest)
(examples #:eval mz-eval . rest)]))
(define AllUnix "Unix and Mac OS")
(provide AllUnix)
(provide note-lib)
(define-syntax note-lib
(syntax-rules ()
[(_ lib #:use-sources (src ...) . more)
(begin
(declare-exporting lib racket #:use-sources (src ...))
(defmodule*/no-declare (lib)
(t (make-collect-element
#f null
(lambda (ci)
(collect-put! ci `(racket-extra-lib ,'lib) (racketmodname lib))))
"The bindings documented in this section are provided by the "
(racketmodname lib)
" and "
(racketmodname racket)
" libraries, but not " (racketmodname racket/base)
"."
. more)))]
[(_ lib . more)
(note-lib lib #:use-sources () . more)]))
(provide note-init-lib)
(define-syntax note-init-lib
(syntax-rules ()
[(_ lib #:use-sources (src ...) . more)
(begin
(declare-exporting lib racket/init #:use-sources (src ...))
(defmodule*/no-declare (lib)
(t "The bindings documented in this section are provided by the "
(racketmodname lib)
" and "
(racketmodname racket/init)
" libraries, which means that they are available when "
" the Racket executable is started with no command-line arguments."
" They are not provided by " (racketmodname racket/base)
" or " (racketmodname racket) "."
. more)))]
[(_ lib . more)
(note-init-lib lib #:use-sources () . more)]))
(provide note-lib-only)
(define-syntax note-lib-only
(syntax-rules ()
[(_ lib #:use-sources (src ...) . more)
(defmodule lib #:use-sources (src ...)
(t "The bindings documented in this section are provided by the "
(racketmodname lib)
" library, not " (racketmodname racket/base)
" or " (racketmodname racket)
"."
. more))]
[(_ lib . more)
(note-lib-only lib #:use-sources () . more)]))
(define (*exnraise s)
(make-element #f (list s " exception is raised")))
(define-syntax exnraise
(syntax-rules ()
[(_ s) (*exnraise (racket s))]))
(define-syntax Exn
(syntax-rules ()
[(_ s) (racket s)]))
(provide exnraise Exn)
(provide margin-note/ref
refalso moreref Guide guideintro guidealso guidesecref
raco-doc)
(define (margin-note/ref . s)
(apply margin-note
(decode-content (cons magnify s))))
(define (refalso tag . s)
(apply margin-note
(decode-content (append (list magnify (secref tag) " also provides information on ")
s
(list ".")))))
(define (moreref tag . s)
(apply margin-note
(decode-content (append (list magnify (secref tag) " provides more information on ")
s
(list ".")))))
(define (guidesecref s)
(secref #:doc '(lib "scribblings/guide/guide.scrbl") s))
(define (guideintro tag . s)
(apply margin-note
(decode-content (append (list finger (guidesecref tag) " in " Guide " introduces ")
s
(list ".")))))
(define (guidealso tag)
(apply margin-note
(decode-content (append (list finger "See also " (guidesecref tag) " in " Guide ".")))))
(define Guide
(other-manual '(lib "scribblings/guide/guide.scrbl")))
(define raco-doc
'(lib "scribblings/raco/raco.scrbl"))
(provide see-read-print)
(define (see-read-print tag-part #:print [print-tag-part tag-part] vals)
@elem{See @secref[(string-append "parse-" tag-part)]
for information on @racket[read]ing
@|vals| and @secref[(string-append "print-" print-tag-part)]
for information on @racket[print]ing @|vals|.})
(provide speed)
(define-syntax speed
(syntax-rules ()
[(_ id what)
(t "An " (racket id) " application can provide better performance for "
(elem what)
" iteration when it appears directly in a " (racket for) " clause.")]))
(provide resultItself ResultItself)
(define (esultItself T x)
(make-element #f (list T "he "
(tech "synchronization result")
" of a " x " is the " x " itself")))
(define (ResultItself x) (esultItself "T" x))
(define (resultItself x) (esultItself "t" x))