These are among the most useful primitives in MzScheme, the Scheme dialect implemented in Dr. Scheme (and in Dr. Scheme Jr). Some of these primitives have different names in other dialects. By convention, symbols ending in "?" are generally predicate names and symbols containing "->" refer to type conversion operations. Those ending in "!" refer to destructive operations.
NUMBERS
+ - * / quotient remainder modulo
abs max min floor truncate ceiling round
number? complex? real? rational? exact? inexact? inexact->exact
zero? positive? negative? odd? even ?
= < > <= >=
sqrt exp log expt gcd lcm random
add1 sub1
BOOLEANS AND EQUIVALENCE PREDICATES
#t #f not and or eq? equal? eqv?
SEQUENCING, CONTROL, AND BINDING
define set! eval quote do when unless
if cond case else begin begin0
lambda let let* letrec
PAIRS AND LISTS
car cdr cons c..r list null? pair? list?
append reverse length list-ref last-pair list-tail
member memq memv assoc assq assv
set-car! set-cdr! append! reverse!
INPUT, OUTPUT, AND PORTS
open-input-file close-input-port open-output-file close-output-port
read read-char read-line eof-object? load
write write-char newline print display pretty-print
PROCEDURES
apply map for-each procedure?
CHARACTERS
char? char-upcase char-downcase
char-alphabetic? char-numeric? char-whitespace? char-upper-case? char-lower-case?
char=? char char>? char<=? char>=?
char-ci=? char-ci char-ci>? char-ci<=? char-ci>=?
char->integer integer->char
SYMBOLS AND STRINGS
symbol? gensym putprop getprop symbol->string string->symbol
string? string make-string string-length string-ref string-set!
string=? string string>? string<=? string>=?
string-ci=? string-ci string-ci>? string-ci<=? string-ci>=?
substring string-append string-copy strign-fill!
list->string string->list number->string string->number
VECTORS
vector? vector make-vector vector-length vector-ref vector-set!
list->vector vector->list vector-fill!
MISCELLANEOUS
exit error system transcript-on transcript-off require-library
trace untrace