Wraith Scheme Dictionary


Wraith Face

Wraith Scheme Dictionary

For Wraith Scheme 2.25

Copyright © 2007-2012 Jay Reynolds Freeman, all rights reserved.
Personal Web Site: http://JayReynoldsFreeman.com
EMail: Jay_Reynolds_Freeman@mac.com.

If you have a big enough dictionary, just about everything is a word. -- Dave Barry


WARRANTY, LICENSE, AND DISTRIBUTION:

This document has two parts:

The best ways to locate things in this document are probably either to scroll haphazardly, or to use your HTML browser's "find" command to search for the term, concept or identifier that you are interested in, or for some other likely word.



Command Summary:

This portion of the document is a command summary of the procedures, special forms, macros, and the like, that are provided as part of Wraith Scheme. It includes all of the standard Scheme stuff that Wraith Scheme provides, and also includes many other items that I have provided as enhancements.

The command summary is a supplement to the "R5 report", but definitely not a substitute for it.

The descriptions herein are specific to Wraith Scheme. Wraith Scheme generally follows the "R5" Scheme report, but there are many places in that report where some behavior of Scheme is left undefined, or is allowed to be implementation-dependent. In those cases, this document describes what Wraith Scheme does. For example, the R5 report often does not define the return values of procedures that are called for side effects: Wraith Scheme generally returns #t from such procedures, and the descriptions herein so indicate.

The command summary is arranged alphabetically, with a few exceptions. First, procedures that are enhancements -- that is, they are not part of R5 Scheme -- are listed at the very end. Their identifiers all begin with either "e::" or "c::". The procedures that begin with "e::" come before the procedures that begin with "c::".

Second, a few closely-related groups of procedures are presented together. They include:

There are other such groups.

Wraith Scheme does contain procedures and such that are not documented here; I have omitted many things used internally by the compiler, macro-generator, and so on, because they are complicated and more than likely to change in subsequent releases. I do not personally regard them as secrets. If you find something undocumented that you would like to know more about, send me EMail and ask, but don't count on any undocumented feature continuing to exist in future releases of Wraith Scheme.

General notes about the command summary entries:

And now, on to the command summary itself ...


*


+


-


/


<


<=


=


>


>***<
>***<-1
>***<-2
>***<-3
... (one for each kitten)


>**<
>**<-1
>**<-2
>**<-3
... (one for each kitten)


>*<
>*<-1
>*<-2
>*<-3
... (one for each kitten)


>+++<
>+++<-1
>+++<-2
>+++<-3
... (one for each kitten)


>++<
>++<-1
>++<-2
>++<-3
... (one for each kitten)


>+<
>+<-1
>+<-2
>+<-3
... (one for each kitten)


>-<
>-<-1
>-<-2
>-<-3
... (one for each kitten)


>=


abs


acos


and


angle


append


apply


asin


assoc


assq


assv


atan


begin


boolean?


call-with-current-continuation


call-with-input-file


call-with-output-file


call-with-values


car


cdr


caar         cadr         cdar         cddr        

caaar       caadr       cadar       caddr      

cdaar       cdadr       cddar       cdddr      

caaaar     caaadr     caadar     caaddr    

cadaar     cadadr     caddar     cadddr    

cdaaar     cdaadr     cdadar     cdaddr    

cddaar     cddadr     cdddar     cddddr    


case


ceiling


char->integer


char-alphabetic?


char-ci<=?


char-ci<?


char-ci=?


char-ci>=?


char-ci>?


char-downcase


char-lower-case?


char-numeric?


char-ready?


char-upcase


char-upper-case?


char-whitespace?


char<=?


char<?


char=?


char>=?


char>?


char?


close-input-port


close-output-port


complex?


cond


cons


cos


current-input-port


current-output-port


define


define-syntax


delay


denominator


display


do


dynamic-wind


else


eof-object?


eq?


equal?


eqv?


eval


even?


exact->inexact


exact?


exp


expt


floor


for-each


force


gcd


if


imag-part


inexact->exact


inexact?


input-port?


integer->char


integer?


interaction-environment


lambda


lcm


length


let


let-syntax


let*


letrec


letrec-syntax


list


list->string


list->vector


list-ref


list-tail


list?


load


log


magnitude


make-polar


make-rectangular


make-string


make-vector


map


max


member


memq


memv


min


modulo


negative?


newline


not


null-environment


null?


number->string


number?


numerator


odd?


open-input-file


open-output-file


or


output-port?


pair?


peek-char


port?


positive?


procedure?


quasiquote


quote


quotient


rationalize


rational?


read


read-char


real-part


real?


remainder


reverse


round


scheme-report-environment


set!


set-car!


set-cdr!


sin


sqrt


string


string->list


string->number


string->symbol


string-append


string-ci<=?


string-ci<?


string-ci=?


string-ci>=?


string-ci>?


string-copy


string-fill!


string-length


string-ref


string-set!


string<=?


string<?


string=?


string>=?


string>?


string?


substring


symbol->string


symbol?


syntax-rules


tan


transcript-off


transcript-on


truncate


unquote


unquote-splicing


values


vector


vector->list


vector-fill!


vector-length


vector-ref


vector-set!


vector?


with-input-from-file


with-output-to-file


write


write-char


zero?



Enhancement Procedures:
For General Use


e::active-room


e::active-store-size


e::aging-room


e::alarm


e::alarm?


e::alarm-time


e::all?


e::any?


e::atom?


e::big-red-button-enabled?


e::big-red-button-interrupt-number


e::bit-and     e::bit-not     e::bit-or    

e::bit-shift-left     e::bit-shift-right-arithmetic    

e::bit-shift-right-logical     e::bit-xor    


e::block-any-binding


e::block-symbol-binding


e::bound-instance?


e::c-boolean->scheme-boolean


e::clear-compiler-on!


e::clear-permanent!


e::clear-show-full-precision!


e::closed-port?


e::coerce-to-long-ratnum-if-possible


e::coercible-to-fixnum?


e::coercible-to-long-ratnum?


e::compiler-on?


e::compile-form


e::cons-with-continuation


e::continued-fraction-list->real


e::current-directory


e::debug


e::deep-copy


e::define-no-compile


e::derationalize


e::disable-big-red-button!


e::disable-pushbutton!


e::enable-big-red-button!


e::enable-pushbutton!


e::entropy-death


e::error


e::error-port


e::exit


e::expand-macro


e::expand-macros-recursively


e::file-exists?


e::fixnum?


e::float?


e::forced?


e::forgettable?


e::forgettable-expiration-time


e::forgettable-forgotten?


e::forgettable-object


e::forgettable-remembered?


e::forgettable-remember-probability


e::forgettable-unexpired?


e::full-gc


e::gensym


e::get-tag


e::hide-sense-lights!


e::inf?


e::inspect


e::inspect-world


e::interrupt-file-information


e::kitten-number


e::kitty-color


e::kitty-color?


e::kitty-come-home


e::kitty-erase-drawing


e::kitty-forward


e::kitty-heading


e::kitty-hide


e::kitty-left


e::kitty-line-width


e::kitty-line-width?


e::kitty-pen-down


e::kitty-pen-down?


e::kitty-pen-up


e::kitty-right


e::kitty-set-color


e::kitty-set-line-width


e::kitty-show


e::kitty-x


e::kitty-y


e::list-print-depth

e::list-print-length

e::set-list-print-depth!

e::set-list-print-length!

e::set-vector-print-depth!

e::set-vector-print-length!

e::vector-print-depth

e::vector-print-length


e::load-and-export-to-calling-environment


e::load-and-export-to-top-level


e::load-world!


e::logic-constant?


e::long-complex?


e::long-ratnum?


e::macro


e::macro-body


e::macro?


e::main


e::make-forgettable


e::make-integer-range


e::make-long-ratnum


e::make-memory-mapped-block


e::make-offsets


e::make-simple-class


e::memory-map-block-in-current-kitten


e::memory-mappable-space-size


e::memory-mapped-block?


e::merge


e::merge!


e::momcat?


e::money->string


e::multiple-values?


e::nan?


e::ninety-percent-used?


e::non-printing-object?


e::not-null?


e::number-of-kittens


e::number->string-with-n-decimals


e::original-cwcc


e::peek-poke-atomic


e::peek8

e::peek16

e::peek32

e::peek64


e::peek64-float


e::peek64-float-set-vector!


e::peek8-set-vector!

e::peek16-set-vector!

e::peek32-set-vector!

e::peek64-set-vector!


e::peek8-set-vector-sign-extend!

e::peek16-set-vector-sign-extend!

e::peek32-set-vector-sign-extend!


e::peek8-sign-extend

e::peek16-sign-extend

e::peek32-sign-extend


e::peek-c-string


e::perform-applicative


e::permanent?


e::poke8

e::poke16

e::poke32

e::poke64


e::poke64-float


e::poke64-float-vector


e::poke8-vector

e::poke16-vector

e::poke32-vector

e::poke64-vector


e::poke-c-string


e::process-id


e::program-directory


e::promise?


e::pushbutton-enabled?


e::pushbutton-interrupt-number


e::random


e::read-string-with-prompt


e::reduce


e::real->continued-fraction-list


e::reset


e::room


e::rotate-sense-lights!


e::save-world


e::scheme-boolean->c-boolean?


e::select


e::sense-light-number?


e::sense-light-illumination-number?


e::sense-switches


e::set-alarm!


e::set-compiler-on!


e::set-current-directory!


e::set-forgettable-expiration-time!


e::set-forgettable-remember-probability!


e::set-input-port!


e::set-level-indicator!


e::set-permanent!


e::set-sense-light-illuminations!


e::set-sense-light-n-illumination!


e::set-sense-light-n-visibility!


e::set-sense-lights-off!


e::set-show-full-precision!


e::set-tag!


e::show-active-memory


e::show-aging-memory


e::show-dynamic-environment-list


e::show-environment


e::show-environment-list


e::show-full-precision?


e::show-kittens


e::show-locks


e::show-memory


e::show-room


e::show-sense-lights!


e::slider


e::sort


e::sort!


e::sorted?


e::srandom


e::stack-depth


e::startup-directory


e::store-size


e::string-speak


e::substitute-new-permanent-symbols


e::system


e::time


e::tell-kitten


e::top-loop-code


e::usleep


e::version


e::warning


e::write-continuation


e::write-stack



Enhancement Procedures:
Use with CAUTION


c::block


c::clear-interrupt-handler!


c::clear-interrupt-requested!


c::compiling?


c::define


c::disable-window-output


c::down-in-flames!!!


c::enable-window-output


c::environment


c::eval-in-environment


c::hash-string


c::interrupt


c::interrupt-handler-vector


c::kitten-busy?


c::kitten-empty-queue?


c::kitten-input-queue


c::kitten-purge-queue


c::kitten-reset


c::let-deadlock-time-out


c::load-from-string


c::load-with-environment-list


c::number->string-with-c-format


c::open-input-socket


c::release-block


c::release-locks


c::set-blocked-binding!


c::set-interrupt-handler!


c::socket-accept


c::socket-create-and-listen


c::socket-fgets


c::socket-write


c::symeval


c::symeval-in-environment


c::top-level-environment


c::window-output-enabled?



Glossary:

Applicative Programming:

Atom:

Binding:

Bitwise Operations:

Bug:

Clarus the DogCow™:

Common Lisp:

Compiler:

Consing:

Continuation:

Debugging:

Environment:

Environment List:

Evaluation:

Functional Programming:

Garbage:

Garbage Collection:

Gensym:

Global Variable:

Inf:

Inspecting Scheme Objects:

Internal Definition:

Kitten Graphics:

Kittens:

Lexical Scope:

Local Variable:

MacLisp:

Macro:

Memory-Mapped Block:

Metasyntactic Variable:

MomCat:

Nan:

Numerical Accuracy:

Numerical Precision:

Ob-List:

Permanence:

Pixie:

Pixie Scheme:

Pixie Scheme II:

Pixie Scheme III:

Procedure Application:

Referential Transparency:

Reset:

R5 Report:

SECD Machine:

Shadow:

Special Form:

Tagged Aval:

Tagged-Object Lisp:

Tail Call Optimization:
Tail Recursion:

Transcript File:

World File:

Wraith:

Wraith Face