mirror of
https://github.com/justinethier/cyclone.git
synced 2025-05-23 20:15:05 +02:00
Added space
This commit is contained in:
parent
6374c858d5
commit
f1769ce049
11 changed files with 271 additions and 271 deletions
|
@ -11,22 +11,22 @@ The `(scheme cyclone ast)` library defines abstract syntax tree types used durin
|
|||
- [`ast:lambda-body`](#astlambda-body)
|
||||
- [`ast:set-lambda-body!`](#astset-lambda-body)
|
||||
|
||||
#ast:make-lambda
|
||||
# ast:make-lambda
|
||||
(ast:make-lambda args body)
|
||||
|
||||
#ast:%make-lambda
|
||||
# ast:%make-lambda
|
||||
(ast:%make-lambda lambda-id args body)
|
||||
|
||||
#ast:lambda?
|
||||
# ast:lambda?
|
||||
(ast:lambda? obj)
|
||||
|
||||
#ast:lambda-id
|
||||
# ast:lambda-id
|
||||
(ast:lambda-id lambda-obj)
|
||||
#ast:lambda-args
|
||||
# ast:lambda-args
|
||||
(ast:lambda-args lambda-obj)
|
||||
#ast:set-lambda-args!
|
||||
# ast:set-lambda-args!
|
||||
(ast:set-lambda-args! lambda-obj args)
|
||||
#ast:lambda-body
|
||||
# ast:lambda-body
|
||||
(ast:lambda-body lambda-obj)
|
||||
#ast:set-lambda-body!
|
||||
# ast:set-lambda-body!
|
||||
(ast:set-lambda-body! lambda-obj body)
|
||||
|
|
|
@ -10,24 +10,24 @@ The `(scheme cyclone cgen)` library compiles scheme code to a Cheney-on-the-MTA
|
|||
- [`emit-newline`](#emit-newline)
|
||||
- [`string-join`](#string-join)
|
||||
|
||||
#mta:code-gen
|
||||
# mta:code-gen
|
||||
(mta:code-gen input-program program? lib-name lib-exports imported-globals globals c-headers required-libs src-file)
|
||||
Convert the given input program - as pre-processed Scheme AST - into C code. This function cannot be called directly on a Scheme program, but must be called on Scheme code that has already been processed by all of the compiler's Scheme transformations, including CPS and closure conversions.
|
||||
#emit
|
||||
# emit
|
||||
(emit string)
|
||||
`display` the string to the output port with a trailing newline.
|
||||
#emit\*
|
||||
# emit\*
|
||||
(emit* string ...)
|
||||
Emit all of the given strings and add a trailing newline.
|
||||
#emits
|
||||
# emits
|
||||
(emits string)
|
||||
`display` the string to the output port.
|
||||
#emits\*
|
||||
# emits\*
|
||||
(emits* string ...)
|
||||
Call `emits` for each of the given strings.
|
||||
#emit-newline
|
||||
# emit-newline
|
||||
(emit-newline)
|
||||
`display` a newline to the current output port.
|
||||
#string-join
|
||||
# string-join
|
||||
(string-join list deliminator)
|
||||
Create a single string from a list of strings, adding `deliminator` between each of the strings.
|
||||
|
|
|
@ -9,15 +9,15 @@ The `(scheme cyclone common)` library contains definitions used by the compiler
|
|||
- [`*version-banner*`](#version-banner)
|
||||
- [`*c-file-header-comment*`](#c-file-header-comment)
|
||||
|
||||
#\*Cyc-version-banner\*
|
||||
# \*Cyc-version-banner\*
|
||||
The version banner printed when `icyc` starts.
|
||||
#\*version\*
|
||||
# \*version\*
|
||||
The version number and name.
|
||||
#\*version-number\*
|
||||
# \*version-number\*
|
||||
The current version number.
|
||||
#\*version-name\*
|
||||
# \*version-name\*
|
||||
The current version name.
|
||||
#\*version-banner\*
|
||||
# \*version-banner\*
|
||||
The version banner printed when `icyc` starts.
|
||||
#\*c-file-header-comment\*
|
||||
# \*c-file-header-comment\*
|
||||
The header comment added to C files.
|
||||
|
|
|
@ -38,38 +38,38 @@ The `(scheme cyclone optimizations)` library performs CPS analysis and optimizat
|
|||
- [`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!
|
||||
# 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!
|
||||
|
|
|
@ -28,29 +28,29 @@ The `(scheme cyclone libraries)` library implements r7rs libraries.
|
|||
- [`lib:idb:ids`](#libidb:ids)
|
||||
- [`lib:idb:id->import`](#libidb:id-import)
|
||||
|
||||
#library?
|
||||
# library?
|
||||
(library? obj)
|
||||
#lib:list->import-set
|
||||
#lib:name
|
||||
#lib:name->string
|
||||
#lib:name->symbol
|
||||
#lib:result
|
||||
#lib:exports
|
||||
#lib:rename-exports
|
||||
#lib:imports
|
||||
#lib:body
|
||||
#lib:includes
|
||||
#lib:include-c-headers
|
||||
#lib:import->filename
|
||||
#lib:import->metalist
|
||||
#lib:import->path
|
||||
#lib:read-imports
|
||||
#lib:import->export-list
|
||||
#lib:resolve-imports
|
||||
#lib:resolve-meta
|
||||
#lib:get-all
|
||||
#lib:get-all-import-deps
|
||||
#lib:get-dep-list
|
||||
#lib:imports->idb
|
||||
#lib:idb:ids
|
||||
#lib:idb:id->import
|
||||
# lib:list->import-set
|
||||
# lib:name
|
||||
# lib:name->string
|
||||
# lib:name->symbol
|
||||
# lib:result
|
||||
# lib:exports
|
||||
# lib:rename-exports
|
||||
# lib:imports
|
||||
# lib:body
|
||||
# lib:includes
|
||||
# lib:include-c-headers
|
||||
# lib:import->filename
|
||||
# lib:import->metalist
|
||||
# lib:import->path
|
||||
# lib:read-imports
|
||||
# lib:import->export-list
|
||||
# lib:resolve-imports
|
||||
# lib:resolve-meta
|
||||
# lib:get-all
|
||||
# lib:get-all-import-deps
|
||||
# lib:get-dep-list
|
||||
# lib:imports->idb
|
||||
# lib:idb:ids
|
||||
# lib:idb:id->import
|
||||
|
|
|
@ -11,11 +11,11 @@ The `(scheme cyclone macro)` library contains code to deal with macros.
|
|||
- [`macro:get-env`](#macroget-env)
|
||||
- [`macro:get-defined-macros`](#macroget-defined-macros)
|
||||
|
||||
#define-syntax?
|
||||
#macro:macro?
|
||||
#macro:expand
|
||||
#macro:add!
|
||||
#macro:cleanup
|
||||
#macro:load-env!
|
||||
#macro:get-env
|
||||
#macro:get-defined-macros
|
||||
# define-syntax?
|
||||
# macro:macro?
|
||||
# macro:expand
|
||||
# macro:add!
|
||||
# macro:cleanup
|
||||
# macro:load-env!
|
||||
# macro:get-env
|
||||
# macro:get-defined-macros
|
||||
|
|
|
@ -4,7 +4,7 @@ The `(scheme cyclone pretty-print)` library provides a pretty-printer for code f
|
|||
|
||||
- [`pretty-print`](#pretty-print)
|
||||
|
||||
#pretty-print
|
||||
# pretty-print
|
||||
(pretty-print obj)
|
||||
(pretty-print obj port)
|
||||
Outputs object to the given output port, or the current output port if none is given. The output is automatically indented just like it would be in a source code file, to make it easier to read.
|
||||
|
|
|
@ -17,17 +17,17 @@ The `(scheme cyclone primitives)` library contains information about Cyclone's s
|
|||
- [`prim:arg-count?`](#primarg-count)
|
||||
- [`prim:allocates-object?)`](#primallocates-object)
|
||||
|
||||
#prim?
|
||||
#\*primitives\*
|
||||
#\*primitives-num-args\*
|
||||
#prim-call?
|
||||
#prim->c-func
|
||||
#prim/data-arg?
|
||||
#prim/c-var-assign
|
||||
#prim/cvar?
|
||||
#prim:check-arg-count
|
||||
#prim:mutates?
|
||||
#prim:cont?
|
||||
#prim:cont/no-args?
|
||||
#prim:arg-count?
|
||||
#prim:allocates-object?)
|
||||
# prim?
|
||||
# \*primitives\*
|
||||
# \*primitives-num-args\*
|
||||
# prim-call?
|
||||
# prim->c-func
|
||||
# prim/data-arg?
|
||||
# prim/c-var-assign
|
||||
# prim/cvar?
|
||||
# prim:check-arg-count
|
||||
# prim:mutates?
|
||||
# prim:cont?
|
||||
# prim:cont/no-args?
|
||||
# prim:arg-count?
|
||||
# prim:allocates-object?)
|
||||
|
|
|
@ -29,29 +29,29 @@ The `(scheme cyclone test)` library contains a testing framework ported from `(c
|
|||
- [`current-test-epsilon`](#current-test-epsilon)
|
||||
- [`current-test-comparator`](#current-test-comparator)
|
||||
|
||||
#warning
|
||||
#test-group-inc!
|
||||
#print-exception
|
||||
#test
|
||||
#test-equal
|
||||
#test-error
|
||||
#test-assert
|
||||
#test-not
|
||||
#test-values
|
||||
#test-group
|
||||
#current-test-group
|
||||
#test-begin
|
||||
#test-end
|
||||
#test-syntax-error
|
||||
#test-propagate-info
|
||||
#test-vars
|
||||
#test-run
|
||||
#test-exit
|
||||
#current-test-verbosity
|
||||
#current-test-applier
|
||||
#current-test-handler
|
||||
#current-test-skipper
|
||||
#current-test-group-reporter
|
||||
#test-failure-count
|
||||
#current-test-epsilon
|
||||
#current-test-comparator
|
||||
# warning
|
||||
# test-group-inc!
|
||||
# print-exception
|
||||
# test
|
||||
# test-equal
|
||||
# test-error
|
||||
# test-assert
|
||||
# test-not
|
||||
# test-values
|
||||
# test-group
|
||||
# current-test-group
|
||||
# test-begin
|
||||
# test-end
|
||||
# test-syntax-error
|
||||
# test-propagate-info
|
||||
# test-vars
|
||||
# test-run
|
||||
# test-exit
|
||||
# current-test-verbosity
|
||||
# current-test-applier
|
||||
# current-test-handler
|
||||
# current-test-skipper
|
||||
# current-test-group-reporter
|
||||
# test-failure-count
|
||||
# current-test-epsilon
|
||||
# current-test-comparator
|
||||
|
|
|
@ -83,83 +83,83 @@ The `(scheme cyclone transforms)` library performs Scheme-to-Scheme transformati
|
|||
- [`union `](#union)
|
||||
- [`wrap-mutables `](#wrap-mutables)
|
||||
|
||||
#\*defined-macros\*
|
||||
#\*do-code-gen\*
|
||||
#\*primitives\*
|
||||
#\*trace-level\*
|
||||
#alpha-convert
|
||||
#analyze-mutable-variables
|
||||
#app->args
|
||||
#app->fun
|
||||
#assq-remove-key
|
||||
#assq-remove-keys
|
||||
#ast:lambda-formals->list
|
||||
#ast:lambda-formals-type
|
||||
#azip
|
||||
#basename
|
||||
#begin->exps
|
||||
#built-in-syms
|
||||
#cell->value
|
||||
#cell-get->cell
|
||||
#cell-get?
|
||||
#cell?
|
||||
#clear-mutables
|
||||
#closure->env
|
||||
#closure->fv
|
||||
#closure->lam
|
||||
#closure-convert
|
||||
#closure?
|
||||
#cps-convert
|
||||
#cyc:error
|
||||
#define->lambda
|
||||
#define-lambda?
|
||||
#difference
|
||||
#env-get->env
|
||||
#env-get->field
|
||||
#env-get->id
|
||||
#env-get?
|
||||
#env-make->fields
|
||||
#env-make->id
|
||||
#env-make->values
|
||||
#env-make?
|
||||
#expand
|
||||
#expand-lambda-body
|
||||
#filter-unused-variables
|
||||
#free-vars
|
||||
#get-macros
|
||||
#global-vars
|
||||
#has-global?
|
||||
#insert
|
||||
#is-mutable?
|
||||
#isolate-globals
|
||||
#lambda-num-args
|
||||
#let->args
|
||||
#let->bindings
|
||||
#let->bound-vars
|
||||
#let->exp
|
||||
#let=>lambda
|
||||
#let?
|
||||
#letrec->args
|
||||
#letrec->bindings
|
||||
#letrec->bound-vars
|
||||
#letrec->exp
|
||||
#letrec?
|
||||
#list->lambda-formals
|
||||
#list->pair
|
||||
#list-index
|
||||
#mark-mutable
|
||||
#pos-in-list
|
||||
#precompute-prim-app?
|
||||
#reduce
|
||||
#remove
|
||||
#set-cell!->cell
|
||||
#set-cell!->value
|
||||
#set-cell!?
|
||||
#symbol<?
|
||||
#trace
|
||||
#trace:debug
|
||||
#trace:error
|
||||
#trace:info
|
||||
#trace:warn
|
||||
#union
|
||||
#wrap-mutables
|
||||
# \*defined-macros\*
|
||||
# \*do-code-gen\*
|
||||
# \*primitives\*
|
||||
# \*trace-level\*
|
||||
# alpha-convert
|
||||
# analyze-mutable-variables
|
||||
# app->args
|
||||
# app->fun
|
||||
# assq-remove-key
|
||||
# assq-remove-keys
|
||||
# ast:lambda-formals->list
|
||||
# ast:lambda-formals-type
|
||||
# azip
|
||||
# basename
|
||||
# begin->exps
|
||||
# built-in-syms
|
||||
# cell->value
|
||||
# cell-get->cell
|
||||
# cell-get?
|
||||
# cell?
|
||||
# clear-mutables
|
||||
# closure->env
|
||||
# closure->fv
|
||||
# closure->lam
|
||||
# closure-convert
|
||||
# closure?
|
||||
# cps-convert
|
||||
# cyc:error
|
||||
# define->lambda
|
||||
# define-lambda?
|
||||
# difference
|
||||
# env-get->env
|
||||
# env-get->field
|
||||
# env-get->id
|
||||
# env-get?
|
||||
# env-make->fields
|
||||
# env-make->id
|
||||
# env-make->values
|
||||
# env-make?
|
||||
# expand
|
||||
# expand-lambda-body
|
||||
# filter-unused-variables
|
||||
# free-vars
|
||||
# get-macros
|
||||
# global-vars
|
||||
# has-global?
|
||||
# insert
|
||||
# is-mutable?
|
||||
# isolate-globals
|
||||
# lambda-num-args
|
||||
# let->args
|
||||
# let->bindings
|
||||
# let->bound-vars
|
||||
# let->exp
|
||||
# let=>lambda
|
||||
# let?
|
||||
# letrec->args
|
||||
# letrec->bindings
|
||||
# letrec->bound-vars
|
||||
# letrec->exp
|
||||
# letrec?
|
||||
# list->lambda-formals
|
||||
# list->pair
|
||||
# list-index
|
||||
# mark-mutable
|
||||
# pos-in-list
|
||||
# precompute-prim-app?
|
||||
# reduce
|
||||
# remove
|
||||
# set-cell!->cell
|
||||
# set-cell!->value
|
||||
# set-cell!?
|
||||
# symbol<?
|
||||
# trace
|
||||
# trace:debug
|
||||
# trace:error
|
||||
# trace:info
|
||||
# trace:warn
|
||||
# union
|
||||
# wrap-mutables
|
||||
|
|
|
@ -64,64 +64,64 @@ The `(scheme cyclone util`) library contains various utility functions.
|
|||
- [`tagged-list? `](#tagged-list?)
|
||||
- [`take `](#take)
|
||||
|
||||
#Cyc-er-compare?
|
||||
#Cyc-er-rename
|
||||
#app?
|
||||
#begin?
|
||||
#const?
|
||||
#define->exp
|
||||
#define->var
|
||||
#define-c?
|
||||
#define?
|
||||
#delete
|
||||
#delete-duplicates
|
||||
#env:\_lookup-variable-value
|
||||
#env:add-binding-to-frame!
|
||||
#env:all-values
|
||||
#env:all-variables
|
||||
#env:define-variable!
|
||||
#env:enclosing-environment
|
||||
#env:extend-environment
|
||||
#env:first-frame
|
||||
#env:frame-values
|
||||
#env:frame-variables
|
||||
#env:lookup
|
||||
#env:lookup-variable-value
|
||||
#env:make-frame
|
||||
#env:set-variable-value!
|
||||
#env:the-empty-environment
|
||||
#filter
|
||||
#flatten
|
||||
#formals->list
|
||||
#gensym
|
||||
#identifier->symbol
|
||||
#identifier=?
|
||||
#identifier?
|
||||
#if->condition
|
||||
#if->else
|
||||
#if->then
|
||||
#if-else?
|
||||
#if?
|
||||
#lambda->exp
|
||||
#lambda->formals
|
||||
#lambda-formals->list
|
||||
#lambda-formals-type
|
||||
#lambda-varargs-var
|
||||
#lambda-varargs?
|
||||
#lambda?
|
||||
#length/obj
|
||||
#list-index2
|
||||
#list-insert-at!
|
||||
#list-prefix?
|
||||
#mangle
|
||||
#mangle-global
|
||||
#pack-lambda-arguments
|
||||
#pair->list
|
||||
#quote?
|
||||
#ref?
|
||||
#set!->exp
|
||||
#set!->var
|
||||
#set!?
|
||||
#string-replace-all
|
||||
#tagged-list?
|
||||
#take
|
||||
# Cyc-er-compare?
|
||||
# Cyc-er-rename
|
||||
# app?
|
||||
# begin?
|
||||
# const?
|
||||
# define->exp
|
||||
# define->var
|
||||
# define-c?
|
||||
# define?
|
||||
# delete
|
||||
# delete-duplicates
|
||||
# env:\_lookup-variable-value
|
||||
# env:add-binding-to-frame!
|
||||
# env:all-values
|
||||
# env:all-variables
|
||||
# env:define-variable!
|
||||
# env:enclosing-environment
|
||||
# env:extend-environment
|
||||
# env:first-frame
|
||||
# env:frame-values
|
||||
# env:frame-variables
|
||||
# env:lookup
|
||||
# env:lookup-variable-value
|
||||
# env:make-frame
|
||||
# env:set-variable-value!
|
||||
# env:the-empty-environment
|
||||
# filter
|
||||
# flatten
|
||||
# formals->list
|
||||
# gensym
|
||||
# identifier->symbol
|
||||
# identifier=?
|
||||
# identifier?
|
||||
# if->condition
|
||||
# if->else
|
||||
# if->then
|
||||
# if-else?
|
||||
# if?
|
||||
# lambda->exp
|
||||
# lambda->formals
|
||||
# lambda-formals->list
|
||||
# lambda-formals-type
|
||||
# lambda-varargs-var
|
||||
# lambda-varargs?
|
||||
# lambda?
|
||||
# length/obj
|
||||
# list-index2
|
||||
# list-insert-at!
|
||||
# list-prefix?
|
||||
# mangle
|
||||
# mangle-global
|
||||
# pack-lambda-arguments
|
||||
# pair->list
|
||||
# quote?
|
||||
# ref?
|
||||
# set!->exp
|
||||
# set!->var
|
||||
# set!?
|
||||
# string-replace-all
|
||||
# tagged-list?
|
||||
# take
|
||||
|
|
Loading…
Add table
Reference in a new issue