ShortName.mx
Copyright Ó 1989 by Xerox Corporation. All rights reserved.
Created by YourName, January 26, 1989 5:39:12 pm PST
YourName, January 26, 1989 5:38:34 pm PST
Michael Plass, February 14, 1989 1:31:12 pm PST
Cedar Primitives
(
cedar-imports "Rope" "
more
" "
more
" "
more
")
add strings to DIRECTORY and IMPORT clauses
(
cedar-directory "Ascii" "
more
" "
more
")
add strings to DIRECTORY clause only
(
cedar-install "
component
1
" "
component
2
")
add lines to the generated install file
(
define-ref-type "
module-name
" "
type-name
")
Defines TheFoo procedure for narrowing a "Foo"
(
define-rep-type "
module-name
" "
type-name
")
Defines TheFoo procedure for narrowing a "REF Foo"
(
define-enum-type "
module-name
" "
type-name
" '(
symbol1
symbol2
))
Defines TheFoo procedure for converting a symbol into an enumerated type, and SymbolForFoo for converting an enumerated type into a symbol.
(
primitive-enable . cedar-code)
The cedar-code nodes are catch phrases that get wrapped around (all of the) primitives; useful for catching random cedar ERRORs and turning them into Scheme.Complain
(
define-proc (
procname
arg1
arg2
(
optional-arg
))
Defines a primitive procedure that takes the specified arguments. Parenthesized argument names are optional.
"mandatory-doc-string"
result ← CedarCode[arg1, arg2, IF optionalArg=undefined THEN $default ELSE TheSymbol[optionalArg]]
)
ROPE: TYPE ~ Rope.ROPE; -- a node with top-level Cedar code. This is underlined if you have the right style.