mirror of
https://github.com/justinethier/cyclone.git
synced 2025-07-03 11:16:34 +02:00
New files
This commit is contained in:
parent
4a526002b1
commit
5e3218e5e7
2 changed files with 157 additions and 0 deletions
84
docs/api/scheme/cyclone/transforms.md
Normal file
84
docs/api/scheme/cyclone/transforms.md
Normal file
|
@ -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
|
||||
symbol<?
|
||||
insert
|
||||
remove
|
||||
union
|
||||
difference
|
||||
reduce
|
||||
azip
|
||||
assq-remove-key
|
||||
assq-remove-keys
|
||||
let?
|
||||
let->bindings
|
||||
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
|
73
docs/api/scheme/cyclone/util.md
Normal file
73
docs/api/scheme/cyclone/util.md
Normal file
|
@ -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
|
||||
|
Loading…
Add table
Reference in a new issue