diff --git a/docs/api/scheme/cyclone/transforms.md b/docs/api/scheme/cyclone/transforms.md new file mode 100644 index 00000000..7156f65c --- /dev/null +++ b/docs/api/scheme/cyclone/transforms.md @@ -0,0 +1,84 @@ +# Transforms Library + +The `(scheme cyclone transforms)` library performs Scheme-to-Scheme transformations, and also contains various utility functions used by the compiler. + +*defined-macros* +*do-code-gen* +*trace-level* +*primitives* +get-macros +built-in-syms +trace +trace:error +trace:warn +trace:info +trace:debug +cyc:error +basename +list-index +symbolbindings +let->exp +let->bound-vars +let->args +letrec? +letrec->bindings +letrec->exp +letrec->bound-vars +letrec->args +lambda-num-args +ast:lambda-formals-type +ast:lambda-formals->list +list->lambda-formals +list->pair +app->fun +app->args +precompute-prim-app? +begin->exps +define-lambda? +define->lambda +closure? +closure->lam +closure->env +closure->fv +env-make? +env-make->id +env-make->fields +env-make->values +env-get? +env-get->id +env-get->field +env-get->env +set-cell!? +set-cell!->cell +set-cell!->value +cell? +cell->value +cell-get? +cell-get->cell +expand +expand-lambda-body +let=>lambda +isolate-globals +has-global? +global-vars +filter-unused-variables +free-vars +clear-mutables +mark-mutable +is-mutable? +analyze-mutable-variables +wrap-mutables +alpha-convert +cps-convert +pos-in-list +closure-convert diff --git a/docs/api/scheme/cyclone/util.md b/docs/api/scheme/cyclone/util.md new file mode 100644 index 00000000..03df436d --- /dev/null +++ b/docs/api/scheme/cyclone/util.md @@ -0,0 +1,73 @@ +# Util Library + +The `(scheme cyclone util`) library contains various utility functions. + +tagged-list? +if? +begin? +lambda? +pair->list +formals->list +lambda-formals->list +lambda-varargs? +lambda->formals +lambda->exp +lambda-formals-type +lambda-varargs-var +pack-lambda-arguments +if->condition +if->then +if-else? +if->else +const? +ref? +quote? +define-c? +set!? +set!->var +set!->exp +define? +define->var +define->exp +app? +;; Environments +env:enclosing-environment +env:first-frame +env:the-empty-environment +env:make-frame +env:frame-variables +env:frame-values +env:add-binding-to-frame! +env:all-variables +env:all-values +env:extend-environment +env:lookup +env:lookup-variable-value +env:_lookup-variable-value +env:set-variable-value! +env:define-variable! +;; Syntactic closures +make-syntactic-closure +strip-syntactic-closures +identifier->symbol +identifier? +identifier=? +;; ER macro supporting functions +Cyc-er-rename +Cyc-er-compare? +;; Code generation +mangle +mangle-global +;; Scheme library functions +gensym +delete +delete-duplicates +flatten +length/obj +list-index2 +list-insert-at! +list-prefix? +string-replace-all +take +filter +