# CPS Optimization Library

The `(scheme cyclone optimizations)` library performs CPS analysis and optimizations.

*This library is used internally by the compiler and its API may change at any time.*

- [`optimize-cps`](#optimize-cps)
- [`analyze-cps`](#analyze-cps)
- [`opt:contract`](#optcontract)
- [`opt:inline-prims`](#optinline-prims)
- [`adb:clear!`](#adbclear)
- [`adb:get`](#adbget)
- [`adb:get/default`](#adbgetdefault)
- [`adb:set!`](#adbset)
- [`adb:get-db`](#adbget-db)
- [`simple-lambda?`](#simple-lambda)
- [`one-instance-of-new-mutable-obj?`](#one-instance-of-new-mutable-obj)
- [`adb:make-var`](#adbmake-var)
- [`%adb:make-var`](#adbmake-var-1)
- [`adb:variable?`](#adbvariable)
- [`adbv:global?`](#adbvglobal)
- [`adbv:set-global!`](#adbvset-global)
- [`adbv:defined-by`](#adbvdefined-by)
- [`adbv:set-defined-by!`](#adbvset-defined-by)
- [`adbv:reassigned?`](#adbvreassigned) 
- [`adbv:set-reassigned!`](#adbvset-reassigned)
- [`adbv:assigned-value`](#adbvassigned-value)
- [`adbv:set-assigned-value!`](#adbvset-assigned-value)
- [`adbv:const?`](#adbvconst) 
- [`adbv:set-const!`](#adbvset-const)
- [`adbv:const-value`](#adbvconst-value)
- [`adbv:set-const-value!`](#adbvset-const-value)
- [`adbv:ref-by`](#adbvref-by)
- [`adbv:set-ref-by!`](#adbvset-ref-by)
- [`adb:make-fnc`](#adbmake-fnc)
- [`%adb:make-fnc`](#adbmake-fnc-1)
- [`adb:function?`](#adbfunction)
- [`adbf:simple`](#adbfsimple)
- [`adbf:set-simple!`](#adbfset-simple)
- [`adbf:unused-params`](#adbfunused-params)
- [`adbf:set-unused-params!`](#adbfset-unused-params)

# optimize-cps 

# analyze-cps

# opt:contract

# opt:inline-prims

# adb:clear!

# adb:get

# adb:get/default

# adb:set!

# adb:get-db

# simple-lambda?

# one-instance-of-new-mutable-obj?

# adb:make-var

# %adb:make-var

# adb:variable?

# adbv:global?

# adbv:set-global!

# adbv:defined-by 

# adbv:set-defined-by!

# adbv:reassigned? 

# adbv:set-reassigned!

# adbv:assigned-value

# adbv:set-assigned-value!

# adbv:const? 

# adbv:set-const!

# adbv:const-value

# adbv:set-const-value!

# adbv:ref-by

# adbv:set-ref-by!

# adb:make-fnc

# %adb:make-fnc

# adb:function?

# adbf:simple 

# adbf:set-simple!

# adbf:unused-params

# adbf:set-unused-params!

