The coalton Reference Manual

This is the coalton Reference Manual, version 0.0.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Tue Apr 15 04:44:26 2025 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 coalton

An efficient, statically typed functional programming language that supercharges Common Lisp.

Author

Coalton contributors (https://github.com/coalton-lang/coalton)

License

MIT

Version

0.0.1

Dependencies
Source

coalton.asd.


2.2 coalton-compiler

The Coalton compiler.

Author

Coalton contributors (https://github.com/coalton-lang/coalton)

License

MIT

Version

0.0.1

Dependencies
  • alexandria (system).
  • concrete-syntax-tree (system).
  • eclector (system).
  • eclector-concrete-syntax-tree (system).
  • float-features (system).
  • fset (system).
  • named-readtables (system).
  • source-error (system).
  • trivial-gray-streams (system).
Source

coalton-compiler.asd.

Child Components

2.3 source-error

License

MIT

Dependency

alexandria (system).

Source

source-error.asd.

Child Components

2.4 coalton/library

The Coalton standard library.

Author

Coalton contributors (https://github.com/coalton-lang/coalton)

License

MIT

Version

0.0.1

Defsystem Dependency

coalton-asdf (system).

Dependencies
Source

coalton.asd.

Child Components

2.5 coalton-asdf

Coalton ASDF extensions

Author

Coalton contributors (https://github.com/coalton-lang/coalton)

License

MIT

Version

0.0.1

Dependency

coalton-compiler (system).

Source

coalton-asdf.asd.

Child Component

coalton-asdf.lisp (file).


2.6 coalton/hashtable-shim

Shim over Common Lisp hash tables with custom hash functions, for use by the Coalton standard library.

Author

Coalton contributors (https://github.com/coalton-lang/coalton)

License

MIT

Version

0.0.1

Source

coalton.asd.

Child Components

3 Modules

Modules are listed depth-first from the system components tree.


3.1 coalton-compiler/algorithm

Dependency

constants.lisp (file).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Child Components

3.2 coalton-compiler/parser

Dependency

algorithm (module).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Child Components

3.3 coalton-compiler/runtime

Dependency

parser (module).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Child Components

3.4 coalton-compiler/typechecker

Dependency

runtime (module).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Child Components

3.5 coalton-compiler/analysis

Dependency

typechecker (module).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Child Components

3.6 coalton-compiler/codegen

Dependency

analysis (module).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Child Components

3.7 coalton/library/math

Dependency

bits.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Child Components

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


4.1 Lisp


4.1.1 coalton/coalton.asd

Source

coalton.asd.

Parent Component

coalton (system).

ASDF Systems

4.1.2 coalton-compiler/coalton-compiler.asd

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

ASDF Systems

coalton-compiler.


4.1.3 source-error/source-error.asd

Source

source-error.asd.

Parent Component

source-error (system).

ASDF Systems

source-error.


4.1.4 coalton-asdf/coalton-asdf.asd

Source

coalton-asdf.asd.

Parent Component

coalton-asdf (system).

ASDF Systems

coalton-asdf.


4.1.5 coalton-compiler/package.lisp

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Packages

coalton.


4.1.6 coalton-compiler/settings.lisp

Dependency

package.lisp (file).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Packages

coalton-impl/settings.

Public Interface
Internals

4.1.7 coalton-compiler/utilities.lisp

Dependency

settings.lisp (file).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Packages

coalton-impl/util.

Public Interface
Internals

4.1.8 coalton-compiler/source.lisp

Dependency

utilities.lisp (file).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Packages

coalton-impl/source.

Public Interface
Internals

4.1.9 coalton-compiler/global-lexical.lisp

Dependency

source.lisp (file).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Packages

coalton-impl/global-lexical.

Public Interface
Internals

4.1.10 coalton-compiler/constants.lisp

Dependency

global-lexical.lisp (file).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Packages

coalton-impl/constants.

Public Interface

+default-loop-label+ (constant).


4.1.11 coalton-compiler/algorithm/tarjan-scc.lisp

Source

coalton-compiler.asd.

Parent Component

algorithm (module).

Packages

coalton-impl/algorithm/tarjan-scc.

Public Interface

tarjan-scc (function).

Internals

4.1.12 coalton-compiler/algorithm/immutable-map.lisp

Dependency

tarjan-scc.lisp (file).

Source

coalton-compiler.asd.

Parent Component

algorithm (module).

Packages

coalton-impl/algorithm/immutable-map.

Public Interface
Internals

4.1.13 coalton-compiler/algorithm/immutable-listmap.lisp

Dependency

immutable-map.lisp (file).

Source

coalton-compiler.asd.

Parent Component

algorithm (module).

Packages

coalton-impl/algorithm/immutable-listmap.

Public Interface
Internals

4.1.14 coalton-compiler/algorithm/package.lisp

Dependency

immutable-listmap.lisp (file).

Source

coalton-compiler.asd.

Parent Component

algorithm (module).

Packages

coalton-impl/algorithm.


4.1.15 coalton-compiler/parser/base.lisp

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages

coalton-impl/parser/base.

Public Interface
Internals

4.1.16 coalton-compiler/parser/cursor.lisp

Dependency

base.lisp (file).

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages

coalton-impl/parser/cursor.

Public Interface
Internals

4.1.17 coalton-compiler/parser/reader.lisp

Dependency

cursor.lisp (file).

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages

coalton-impl/parser/reader.

Public Interface
Internals

coalton-eclector-client (class).


4.1.18 coalton-compiler/parser/types.lisp

Dependency

reader.lisp (file).

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages

coalton-impl/parser/types.

Public Interface
Internals

4.1.19 coalton-compiler/parser/pattern.lisp

Dependency

types.lisp (file).

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages

coalton-impl/parser/pattern.

Public Interface
Internals

4.1.20 coalton-compiler/parser/macro.lisp

Dependency

pattern.lisp (file).

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages

coalton-impl/parser/macro.

Public Interface

expand-macro (function).

Internals

4.1.21 coalton-compiler/parser/expression.lisp

Dependency

macro.lisp (file).

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages

coalton-impl/parser/expression.

Public Interface
Internals

4.1.22 coalton-compiler/parser/toplevel.lisp

Dependency

expression.lisp (file).

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages
Public Interface
Internals

4.1.23 coalton-compiler/parser/collect.lisp

Dependency

toplevel.lisp (file).

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages

coalton-impl/parser/collect.

Public Interface
Internals

4.1.24 coalton-compiler/parser/renamer.lisp

Dependency

collect.lisp (file).

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages

coalton-impl/parser/renamer.

Public Interface
Internals

4.1.25 coalton-compiler/parser/binding.lisp

Dependency

renamer.lisp (file).

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages

coalton-impl/parser/binding.

Public Interface
Internals

initform-abstraction-p (generic function).


4.1.26 coalton-compiler/parser/type-definition.lisp

Dependency

binding.lisp (file).

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages

coalton-impl/parser/type-definition.

Public Interface
Internals

4.1.27 coalton-compiler/parser/package.lisp

Dependency

type-definition.lisp (file).

Source

coalton-compiler.asd.

Parent Component

parser (module).

Packages

coalton-impl/parser.


4.1.28 coalton-compiler/runtime/function-entry.lisp

Source

coalton-compiler.asd.

Parent Component

runtime (module).

Packages

coalton-impl/runtime/function-entry.

Public Interface
Internals

4.1.29 coalton-compiler/runtime/package.lisp

Dependency

function-entry.lisp (file).

Source

coalton-compiler.asd.

Parent Component

runtime (module).

Packages

coalton-impl/runtime.


4.1.30 coalton-compiler/typechecker/base.lisp

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/base.

Public Interface

4.1.31 coalton-compiler/typechecker/kinds.lisp

Dependency

base.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/kinds.

Public Interface
Internals

4.1.32 coalton-compiler/typechecker/types.lisp

Dependency

kinds.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/types.

Public Interface
Internals

4.1.33 coalton-compiler/typechecker/substitutions.lisp

Dependency

types.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/substitutions.

Public Interface
Internals

4.1.34 coalton-compiler/typechecker/predicate.lisp

Dependency

substitutions.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/predicate.

Public Interface
Internals

4.1.35 coalton-compiler/typechecker/scheme.lisp

Dependency

predicate.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/scheme.

Public Interface
Internals

4.1.36 coalton-compiler/typechecker/type-errors.lisp

Dependency

scheme.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/type-errors.

Public Interface
Internals

4.1.37 coalton-compiler/typechecker/unify.lisp

Dependency

type-errors.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/unify.

Public Interface
Internals

4.1.38 coalton-compiler/typechecker/fundeps.lisp

Dependency

unify.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/fundeps.

Public Interface
Internals

4.1.39 coalton-compiler/typechecker/map.lisp

Dependency

fundeps.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/map.

Public Interface
Internals

4.1.40 coalton-compiler/typechecker/environment.lisp

Dependency

map.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/environment.

Public Interface
Internals

4.1.41 coalton-compiler/typechecker/lisp-type.lisp

Dependency

environment.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/lisp-type.

Public Interface

lisp-type (generic function).

Internals

4.1.42 coalton-compiler/typechecker/context-reduction.lisp

Dependency

lisp-type.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/context-reduction.

Public Interface
Internals

4.1.43 coalton-compiler/typechecker/stage-1.lisp

Dependency

context-reduction.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/stage-1.


4.1.44 coalton-compiler/typechecker/pattern.lisp

Dependency

stage-1.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/pattern.

Public Interface
Internals

4.1.45 coalton-compiler/typechecker/expression.lisp

Dependency

pattern.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/expression.

Public Interface
Internals

4.1.46 coalton-compiler/typechecker/traverse.lisp

Dependency

expression.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/traverse.

Public Interface
Internals

4.1.47 coalton-compiler/typechecker/toplevel.lisp

Dependency

traverse.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/toplevel.

Public Interface
Internals

4.1.48 coalton-compiler/typechecker/binding.lisp

Dependency

toplevel.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/binding.

Public Interface

4.1.49 coalton-compiler/typechecker/accessor.lisp

Dependency

binding.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/accessor.

Public Interface
Internals

4.1.50 coalton-compiler/typechecker/partial-type-env.lisp

Dependency

accessor.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/partial-type-env.

Public Interface
Internals

4.1.51 coalton-compiler/typechecker/parse-type.lisp

Dependency

partial-type-env.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/parse-type.

Public Interface
Internals

4.1.53 coalton-compiler/typechecker/define-class.lisp

Dependency

define-type.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/define-class.

Public Interface
Internals

4.1.54 coalton-compiler/typechecker/tc-env.lisp

Dependency

define-class.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/tc-env.

Public Interface
Internals

4.1.55 coalton-compiler/typechecker/define.lisp

Dependency

tc-env.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/define.

Public Interface
Internals

4.1.56 coalton-compiler/typechecker/define-instance.lisp

Dependency

define.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/define-instance.

Public Interface
Internals

4.1.57 coalton-compiler/typechecker/specialize.lisp

Dependency

define-instance.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/specialize.

Public Interface

toplevel-specialize (function).

Internals

process-specialize (function).


4.1.58 coalton-compiler/typechecker/translation-unit.lisp

Dependency

specialize.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker/translation-unit.

Public Interface
Internals

4.1.59 coalton-compiler/typechecker/package.lisp

Dependency

translation-unit.lisp (file).

Source

coalton-compiler.asd.

Parent Component

typechecker (module).

Packages

coalton-impl/typechecker.


4.1.60 coalton-compiler/analysis/pattern-exhaustiveness.lisp

Source

coalton-compiler.asd.

Parent Component

analysis (module).

Packages

coalton-impl/analysis/pattern-exhaustiveness.

Public Interface
Internals

4.1.61 coalton-compiler/analysis/unused-variables.lisp

Dependency

pattern-exhaustiveness.lisp (file).

Source

coalton-compiler.asd.

Parent Component

analysis (module).

Packages

coalton-impl/analysis/unused-variables.

Public Interface

find-unused-variables (function).

Internals

variable-binding (function).


4.1.62 coalton-compiler/analysis/underapplied-values.lisp

Dependency

unused-variables.lisp (file).

Source

coalton-compiler.asd.

Parent Component

analysis (module).

Packages

coalton-impl/analysis/underapplied-values.

Public Interface

find-underapplied-values (function).


4.1.63 coalton-compiler/analysis/analysis.lisp

Dependency

underapplied-values.lisp (file).

Source

coalton-compiler.asd.

Parent Component

analysis (module).

Packages

coalton-impl/analysis/analysis.

Public Interface

analyze-translation-unit (function).

Internals

4.1.64 coalton-compiler/analysis/package.lisp

Dependency

analysis.lisp (file).

Source

coalton-compiler.asd.

Parent Component

analysis (module).

Packages

coalton-impl/analysis.


4.1.65 coalton-compiler/codegen/pattern.lisp

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/pattern.

Public Interface
Internals

4.1.66 coalton-compiler/codegen/ast.lisp

Dependency

pattern.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/ast.

Public Interface
Internals

4.1.67 coalton-compiler/codegen/traverse.lisp

Dependency

ast.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/traverse.

Public Interface
Internals

4.1.68 coalton-compiler/codegen/transformations.lisp

Dependency

traverse.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/transformations.

Public Interface

4.1.69 coalton-compiler/codegen/ast-substitutions.lisp

Dependency

transformations.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/ast-substitutions.

Public Interface
Internals

4.1.70 coalton-compiler/codegen/resolve-instance.lisp

Dependency

ast-substitutions.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/resolve-instance.

Public Interface
Internals

4.1.71 coalton-compiler/codegen/typecheck-node.lisp

Dependency

resolve-instance.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/typecheck-node.

Public Interface

typecheck-node (generic function).


4.1.72 coalton-compiler/codegen/hoister.lisp

Dependency

typecheck-node.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/hoister.

Public Interface
Internals

4.1.73 coalton-compiler/codegen/translate-expression.lisp

Dependency

hoister.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/translate-expression.

Public Interface
Internals

4.1.74 coalton-compiler/codegen/translate-instance.lisp

Dependency

translate-expression.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/translate-instance.

Public Interface

translate-instance (function).


4.1.75 coalton-compiler/codegen/struct-or-class.lisp

Dependency

translate-instance.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/struct-or-class.

Public Interface
Internals

4.1.76 coalton-compiler/codegen/codegen-pattern.lisp

Dependency

struct-or-class.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/codegen-pattern.

Public Interface

codegen-pattern (generic function).


4.1.77 coalton-compiler/codegen/codegen-type-definition.lisp

Dependency

codegen-pattern.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/codegen-type-definition.

Public Interface

4.1.78 coalton-compiler/codegen/codegen-expression.lisp

Dependency

codegen-type-definition.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/codegen-expression.

Public Interface
Internals

4.1.79 coalton-compiler/codegen/codegen-class.lisp

Dependency

codegen-expression.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/codegen-class.

Public Interface

codegen-class-definitions (function).

Internals

make-method-fun (function).


4.1.80 coalton-compiler/codegen/monomorphize.lisp

Dependency

codegen-class.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/monomorphize.

Public Interface
Internals

4.1.81 coalton-compiler/codegen/constant-propagation.lisp

Dependency

monomorphize.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/constant-propagation.

Public Interface

propagate-constants (function).

Internals

4.1.82 coalton-compiler/codegen/optimizer.lisp

Dependency

constant-propagation.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/optimizer.

Public Interface
Internals

4.1.83 coalton-compiler/codegen/program.lisp

Dependency

optimizer.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen/program.

Public Interface
Internals

4.1.84 coalton-compiler/codegen/package.lisp

Dependency

program.lisp (file).

Source

coalton-compiler.asd.

Parent Component

codegen (module).

Packages

coalton-impl/codegen.


4.1.85 coalton-compiler/unlock-package.lisp

If Feature

:sb-package-locks

Dependency

codegen (module).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).


4.1.86 coalton-compiler/entry.lisp

Dependencies
Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Packages

coalton-impl/entry.

Public Interface
Internals

4.1.87 coalton-compiler/reader.lisp

Dependency

entry.lisp (file).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Packages

coalton-impl/reader.

Public Interface
Internals

4.1.88 coalton-compiler/debug.lisp

Dependency

reader.lisp (file).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Packages

coalton-impl/debug.

Public Interface

4.1.89 coalton-compiler/faux-macros.lisp

Dependency

debug.lisp (file).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Packages

coalton-impl/faux-macros.

Public Interface
Internals

4.1.90 coalton-compiler/language-macros.lisp

Dependency

faux-macros.lisp (file).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).

Public Interface

4.1.91 coalton-compiler/lock-package.lisp

If Feature

:sb-package-locks

Dependency

language-macros.lisp (file).

Source

coalton-compiler.asd.

Parent Component

coalton-compiler (system).


4.1.92 source-error/error.lisp

Source

source-error.asd.

Parent Component

source-error (system).

Packages

source-error/error.

Public Interface
Internals

4.1.93 source-error/package.lisp

Dependency

error.lisp (file).

Source

source-error.asd.

Parent Component

source-error (system).

Packages

source-error.


4.1.94 coalton/library/set-float-traps.lisp

Source

coalton.asd.

Parent Component

coalton/library (system).


4.1.95 coalton/library/utils.lisp

Dependency

set-float-traps.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/utils.

Public Interface

defstdlib-package (macro).


4.1.96 coalton/library/types.lisp

Dependency

utils.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/types.

Public Interface
Internals

4.1.97 coalton/library/primitive-types.lisp

Dependency

types.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Public Interface
Internals

4.1.98 coalton/library/classes.lisp

Dependency

primitive-types.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/classes.

Public Interface
Internals

4.1.99 coalton/library/hash.lisp

Dependency

classes.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/hash.

Public Interface
Internals

4.1.100 coalton/library/builtin.lisp

Dependency

hash.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/builtin.

Public Interface

4.1.101 coalton/library/functions.lisp

Dependency

builtin.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/functions.

Public Interface
Internals

4.1.103 coalton/library/bits.lisp

Dependency

boolean.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/bits.

Public Interface
  • and (symbol macro).
  • and (function).
  • not (symbol macro).
  • not (function).
  • or (symbol macro).
  • or (function).
  • shift (symbol macro).
  • shift (function).
  • xor (symbol macro).
  • xor (function).
Internals

4.1.104 coalton/library/math/arith.lisp

Source

coalton.asd.

Parent Component

math (module).

Packages

coalton-library/math/arith.

Public Interface
Internals

4.1.105 coalton/library/math/num.lisp

Dependency

arith.lisp (file).

Source

coalton.asd.

Parent Component

math (module).

Packages

coalton-library/math/num.

Internals

4.1.106 coalton/library/math/bounded.lisp

Dependency

num.lisp (file).

Source

coalton.asd.

Parent Component

math (module).

Packages

coalton-library/math/bounded.

Public Interface
Internals

4.1.107 coalton/library/math/conversions.lisp

Dependency

bounded.lisp (file).

Source

coalton.asd.

Parent Component

math (module).

Packages

coalton-library/math/conversions.

Internals

4.1.108 coalton/library/math/fraction.lisp

Dependency

conversions.lisp (file).

Source

coalton.asd.

Parent Component

math (module).

Packages

coalton-library/math/fraction.

Public Interface
Internals

4.1.109 coalton/library/math/integral.lisp

Dependency

fraction.lisp (file).

Source

coalton.asd.

Parent Component

math (module).

Packages

coalton-library/math/integral.

Public Interface
Internals

4.1.110 coalton/library/math/real.lisp

Dependency

integral.lisp (file).

Source

coalton.asd.

Parent Component

math (module).

Packages

coalton-library/math/real.

Public Interface
Internals

4.1.111 coalton/library/math/complex.lisp

Dependency

real.lisp (file).

Source

coalton.asd.

Parent Component

math (module).

Packages

coalton-library/math/complex.

Public Interface
Internals

4.1.112 coalton/library/math/elementary.lisp

Dependency

complex.lisp (file).

Source

coalton.asd.

Parent Component

math (module).

Packages

coalton-library/math/elementary.

Public Interface
Internals

4.1.113 coalton/library/math/dyadic.lisp

Dependency

elementary.lisp (file).

Source

coalton.asd.

Parent Component

math (module).

Packages

coalton-library/math/dyadic.

Public Interface
Internals

4.1.114 coalton/library/math/dual.lisp

Dependency

dyadic.lisp (file).

Source

coalton.asd.

Parent Component

math (module).

Packages

coalton-library/math/dual.

Public Interface
Internals

4.1.115 coalton/library/randomaccess.lisp

Dependency

math (module).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/randomaccess.

Public Interface
Internals

4.1.116 coalton/library/cell.lisp

Dependency

randomaccess.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/cell.

Public Interface
Internals

4.1.117 coalton/library/tuple.lisp

Dependency

cell.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/tuple.

Public Interface
Internals

4.1.118 coalton/library/iterator.lisp

Dependency

tuple.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/iterator.

Public Interface
Internals

4.1.119 coalton/library/optional.lisp

Dependency

iterator.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/optional.

Public Interface
Internals

4.1.120 coalton/library/result.lisp

Dependency

optional.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/result.

Public Interface
Internals

4.1.121 coalton/library/lisparray.lisp

Dependency

result.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/lisparray.

Public Interface
Internals

4.1.122 coalton/library/list.lisp

Dependency

lisparray.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/list.

Public Interface
Internals

4.1.123 coalton/library/vector.lisp

Dependency

list.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/vector.

Public Interface
Internals

4.1.124 coalton/library/char.lisp

Dependency

vector.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/char.

Public Interface
Internals

4.1.125 coalton/library/string.lisp

Dependency

char.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/string.

Public Interface
Internals

4.1.126 coalton/library/slice.lisp

Dependency

string.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/slice.

Public Interface
Internals

4.1.127 coalton/library/hashtable.lisp

Dependency

slice.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/hashtable.

Public Interface
Internals

4.1.128 coalton/library/queue.lisp

Dependency

hashtable.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/queue.

Public Interface
Internals

4.1.129 coalton/library/monad/state.lisp

Dependency

queue.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/monad/state.

Public Interface
  • get (symbol macro).
  • put (symbol macro).
  • put (function).
  • run (symbol macro).
  • run (function).
  • st (symbol macro).
  • st (function).
Internals

4.1.130 coalton/library/ord-tree.lisp

Dependency

monad/state.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/ord-tree.

Public Interface
Internals

4.1.131 coalton/library/ord-map.lisp

Dependency

ord-tree.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/ord-map.

Public Interface
Internals

4.1.132 coalton/library/monad/free.lisp

Dependency

ord-map.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/monad/free.

Public Interface
Internals

4.1.133 coalton/library/seq.lisp

Dependency

monad/free.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/seq.

Public Interface
Internals

4.1.134 coalton/library/system.lisp

Dependency

seq.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/system.

Public Interface
Internals

4.1.135 coalton/library/file.lisp

Dependency

system.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

coalton-library/file.

Public Interface
Internals

4.1.136 coalton/library/prelude.lisp

Dependency

file.lisp (file).

Source

coalton.asd.

Parent Component

coalton/library (system).

Packages

4.1.137 coalton-asdf/coalton-asdf.lisp

Source

coalton-asdf.asd.

Parent Component

coalton-asdf (system).


4.1.138 coalton/hashtable-shim/defs.lisp

Source

coalton.asd.

Parent Component

coalton/hashtable-shim (system).

Packages

coalton/hashtable-shim.

Internals

4.1.139 coalton/hashtable-shim/impl-sbcl.lisp

If Feature

:sbcl

Dependency

defs.lisp (file).

Source

coalton.asd.

Parent Component

coalton/hashtable-shim (system).

Public Interface

4.1.140 coalton/hashtable-shim/hash-table.lisp

If Feature

(:not :sbcl)

Dependencies
Source

coalton.asd.

Parent Component

coalton/hashtable-shim (system).


4.1.141 coalton/hashtable-shim/impl-custom.lisp

If Feature

(:not :sbcl)

Dependencies
Source

coalton.asd.

Parent Component

coalton/hashtable-shim (system).


5 Packages

Packages are listed by definition order.


5.1 coalton-impl/algorithm/immutable-map

Source

immutable-map.lisp.

Use List

common-lisp.

Used By List

coalton-impl/algorithm.

Public Interface
Internals

5.2 coalton-impl/parser/binding

Source

binding.lisp.

Use List
Used By List

coalton-impl/parser.

Public Interface
Internals

initform-abstraction-p (generic function).


5.3 coalton-impl/parser/types

Source

types.lisp.

Use List
Used By List
Public Interface
Internals

5.4 coalton-library/math/conversions

Source

conversions.lisp.

Use List
Used By List

coalton-library/math.

Internals

5.5 coalton-library/math/arith

Source

arith.lisp.

Use List
Used By List
Public Interface
Internals

5.6 coalton-library/slice

Source

slice.lisp.

Use List
Public Interface
Internals

5.7 coalton-impl/typechecker/kinds

Source

kinds.lisp.

Use List
Used By List
Public Interface
Internals

5.9 coalton-library/math/integral

Source

integral.lisp.

Use List
Used By List
Public Interface
Internals

5.11 coalton-library/file

This is Coalton’s library for directory utilities and file IO.

Most functions return outputs of type ‘(Result FileError :a)‘, ensuring that errors can be assessed and handled.

File IO is handled using stream options, for instance:

“‘
(with-open-file (Bidirectional file EError)
(fn (stream)
(write-string stream "Hello World!")
(read-file-to-vector stream)
“‘

Common Lisp makes a distinction between file and directory paths. Directory paths are always terminated with a trailing slash, file paths must never have a trailing slash.

Source

file.lisp.

Use List
Public Interface
Internals

5.12 coalton-impl/parser/macro

Source

macro.lisp.

Use List
Used By List
Public Interface

expand-macro (function).

Internals

5.13 coalton-user

Source

prelude.lisp.

Use List

5.14 coalton-library/math/real

Source

real.lisp.

Use List
Used By List
Public Interface
Internals

5.15 coalton-impl/typechecker/pattern

Source

pattern.lisp.

Use List

common-lisp.

Used By List
Public Interface
Internals

5.16 coalton-impl/codegen/monomorphize

Source

monomorphize.lisp.

Use List
Public Interface
Internals

5.17 coalton-impl/codegen/resolve-instance

Source

resolve-instance.lisp.

Use List
Used By List
Public Interface
Internals

5.18 coalton-impl/algorithm

Implementation of generic algorithms used by COALTON. This is a package private to the COALTON system and is not intended for public use.

Source

package.lisp.

Use List
Used By List

coalton-impl/typechecker/environment.


5.19 coalton-impl/analysis/underapplied-values

Source

underapplied-values.lisp.

Use List

common-lisp.

Public Interface

find-underapplied-values (function).


5.20 coalton-impl/faux-macros

Source

faux-macros.lisp.

Use List

common-lisp.

Internals

5.21 coalton-impl/analysis/analysis

Source

analysis.lisp.

Use List
Used By List

coalton-impl/analysis.

Public Interface

analyze-translation-unit (function).

Internals

5.23 coalton-library/char

Source

char.lisp.

Use List
Public Interface
Internals

5.25 coalton-library/math/num

Source

num.lisp.

Use List
Used By List

coalton-library/math.

Internals

5.26 coalton-library/hash

Source

hash.lisp.

Use List
Used By List
Public Interface
Internals

5.27 coalton-impl/util

Utility functions and methods used throughout COALTON.

Source

utilities.lisp.

Use List

common-lisp.

Public Interface
Internals

5.28 coalton-library/hashtable

Source

hashtable.lisp.

Use List
Public Interface
Internals

5.30 coalton-library/seq

Source

seq.lisp.

Use List
Public Interface
Internals

5.31 coalton-library/math/dyadic

Source

dyadic.lisp.

Use List
Public Interface
Internals

5.32 source-error/error

Source

error.lisp.

Use List

common-lisp.

Used By List

source-error.

Public Interface
Internals

5.33 coalton-impl/parser/type-definition

Source

type-definition.lisp.

Use List
Used By List

coalton-impl/parser.

Public Interface
Internals

5.34 coalton-impl/analysis/unused-variables

Source

unused-variables.lisp.

Use List

common-lisp.

Used By List

coalton-impl/analysis.

Public Interface

find-unused-variables (function).

Internals

variable-binding (function).


5.36 coalton-impl/typechecker/toplevel

Source

toplevel.lisp.

Use List
Used By List
Public Interface
Internals

5.37 coalton-impl/source

Source

source.lisp.

Use List

common-lisp.

Public Interface
Internals

5.38 coalton-impl/typechecker/context-reduction

Source

context-reduction.lisp.

Use List
Used By List

coalton-impl/typechecker/stage-1.

Public Interface
Internals

5.40 coalton-impl/typechecker/map

Source

map.lisp.

Use List

common-lisp.

Used By List
Public Interface
Internals

5.41 coalton-library/list

Source

list.lisp.

Use List
Public Interface
Internals

5.42 coalton/hashtable-shim

A Common Lisp interface for generic mutable hash tables, for use in COALTON-LIBRARY’s hash tables.

Source

defs.lisp.

Use List

common-lisp.

Public Interface
Internals

5.43 coalton-impl/entry

Source

entry.lisp.

Use List

common-lisp.

Public Interface
Internals

5.44 coalton-library/randomaccess

Source

randomaccess.lisp.

Use List
Public Interface
Internals

5.45 coalton-library/math/elementary

Source

elementary.lisp.

Use List
Used By List
Public Interface
Internals

5.46 coalton-library/string

Source

string.lisp.

Use List
Public Interface
Internals

5.47 coalton-impl/codegen/traverse

Source

traverse.lisp.

Use List
Used By List

coalton-impl/codegen/transformations.

Public Interface
Internals

5.48 coalton-impl/codegen/translate-expression

Source

translate-expression.lisp.

Use List
Public Interface
Internals

5.50 coalton-impl/codegen/ast

Source

ast.lisp.

Use List
Used By List
Public Interface
Internals

5.51 coalton-impl/codegen/ast-substitutions

Source

ast-substitutions.lisp.

Use List
Public Interface
Internals

5.52 coalton-library/math/bounded

Source

bounded.lisp.

Use List
Used By List
Public Interface
Internals

5.53 coalton-library/types

Source

types.lisp.

Use List

coalton.

Public Interface
Internals

5.54 coalton-impl/codegen/codegen-pattern

Source

codegen-pattern.lisp.

Use List
Public Interface

codegen-pattern (generic function).


5.55 coalton-library/queue

Source

queue.lisp.

Use List
Public Interface
Internals

5.56 coalton-impl/runtime/function-entry

Source

function-entry.lisp.

Use List

common-lisp.

Used By List

coalton-impl/runtime.

Public Interface
Internals

5.57 coalton-library/bits

Source

bits.lisp.

Use List

coalton.

Public Interface
  • and (symbol macro).
  • and (function).
  • not (symbol macro).
  • not (function).
  • or (symbol macro).
  • or (function).
  • shift (symbol macro).
  • shift (function).
  • xor (symbol macro).
  • xor (function).
Internals

5.58 coalton-impl/global-lexical

Source

global-lexical.lisp.

Use List

common-lisp.

Public Interface
Internals

5.59 coalton-library/result

Source

result.lisp.

Use List
Public Interface
Internals

5.60 coalton-impl/constants

Source

constants.lisp.

Use List

common-lisp.

Public Interface

+default-loop-label+ (constant).


5.62 coalton-library/system

Source

system.lisp.

Use List
Used By List

coalton-library/file.

Public Interface
Internals

5.63 coalton-impl/parser/%defpackage

The sole purpose of this package is to provide storage for symbols that are interned while Coalton package forms are read.

Source

toplevel.lisp.


5.66 coalton-impl/algorithm/immutable-listmap

Source

immutable-listmap.lisp.

Use List

common-lisp.

Used By List

coalton-impl/algorithm.

Public Interface
Internals

5.67 coalton-impl/algorithm/tarjan-scc

Source

tarjan-scc.lisp.

Use List

common-lisp.

Used By List

coalton-impl/algorithm.

Public Interface

tarjan-scc (function).

Internals

5.68 coalton-impl/typechecker/environment

Source

environment.lisp.

Use List
Used By List
Public Interface
Internals

5.69 coalton-impl/codegen/typecheck-node

Source

typecheck-node.lisp.

Use List
Public Interface

typecheck-node (generic function).


5.70 coalton-impl/codegen/translate-instance

Source

translate-instance.lisp.

Use List
Public Interface

translate-instance (function).


5.71 coalton-library/math/fraction

Source

fraction.lisp.

Use List
Used By List
Public Interface
Internals

5.72 coalton-impl/debug

Source

debug.lisp.

Use List

common-lisp.


5.73 coalton-impl/typechecker/fundeps

Source

fundeps.lisp.

Use List

common-lisp.

Used By List

coalton-impl/typechecker/stage-1.

Public Interface
Internals

5.75 coalton-impl/codegen

Source

package.lisp.

Use List

common-lisp.


5.76 coalton-impl/typechecker/types

Source

types.lisp.

Use List
Used By List
Public Interface
Internals

5.77 coalton-impl/codegen/optimizer

Source

optimizer.lisp.

Use List
Public Interface
Internals

5.79 coalton-impl/typechecker/binding

Source

binding.lisp.

Use List
Used By List

coalton-impl/typechecker.

Public Interface

5.81 coalton-impl/codegen/codegen-expression

Source

codegen-expression.lisp.

Use List
Public Interface
Internals

5.82 coalton-impl/typechecker/define-class

Source

define-class.lisp.

Use List
Used By List

coalton-impl/typechecker.

Public Interface

toplevel-define-class (function).

Internals

5.83 coalton-library/ord-map

Source

ord-map.lisp.

Use List
Public Interface
Internals

5.84 coalton-impl/typechecker/lisp-type

Source

lisp-type.lisp.

Use List
Used By List

coalton-impl/typechecker/stage-1.

Public Interface

lisp-type (generic function).

Internals

5.85 coalton-impl/reader

Source

reader.lisp.

Use List

common-lisp.

Internals

5.86 coalton-impl/parser/toplevel

Source

toplevel.lisp.

Use List
Used By List
Public Interface
Internals

5.88 coalton-impl/analysis/pattern-exhaustiveness

Source

pattern-exhaustiveness.lisp.

Use List

common-lisp.

Used By List
Public Interface
Internals

5.89 coalton-impl/typechecker/accessor

Source

accessor.lisp.

Use List
Used By List
Public Interface
Internals

5.90 coalton-impl/codegen/struct-or-class

Source

struct-or-class.lisp.

Use List

common-lisp.

Public Interface
Internals

5.91 coalton-library/functions

Source

functions.lisp.

Use List
Used By List
Public Interface
Internals

5.93 coalton-library/iterator

Source

iterator.lisp.

Use List
Public Interface
Internals

5.94 coalton-impl/parser/pattern

Source

pattern.lisp.

Use List
Used By List
Public Interface
Internals

5.95 coalton-library/vector

Source

vector.lisp.

Use List
Public Interface
Internals

5.96 coalton-library/classes

Source

classes.lisp.

Use List

coalton.

Used By List
Public Interface
Internals

5.97 coalton-impl/typechecker/expression

Source

expression.lisp.

Use List
Used By List
Public Interface
Internals

5.98 coalton

Public interface to COALTON.

Source

package.lisp.

Used By List
Public Interface
Internals

5.99 coalton-impl/typechecker/specialize

Source

specialize.lisp.

Use List
Used By List

coalton-impl/typechecker.

Public Interface

toplevel-specialize (function).

Internals

process-specialize (function).


5.100 coalton-impl/parser/expression

Source

expression.lisp.

Use List
Used By List
Public Interface
Internals

5.102 coalton-library/lisparray

Source

lisparray.lisp.

Use List

coalton.

Public Interface
Internals

5.106 coalton-library/cell

Source

cell.lisp.

Use List
Public Interface
Internals

5.107 coalton-library/ord-tree

Source

ord-tree.lisp.

Use List
Public Interface
Internals

5.108 coalton-impl/codegen/codegen-type-definition

Source

codegen-type-definition.lisp.

Use List

common-lisp.

Public Interface

5.110 coalton-library/math/complex

Source

complex.lisp.

Use List
Used By List
Public Interface
Internals

5.111 coalton-impl/codegen/hoister

Source

hoister.lisp.

Use List
Public Interface
Internals

5.112 coalton-impl/settings

Source

settings.lisp.

Use List

common-lisp.

Public Interface
Internals

5.113 coalton-library/monad/free

Source

monad/free.lisp.

Use List
Public Interface
Internals

5.114 coalton-library/optional

Source

optional.lisp.

Use List
Used By List
Public Interface
Internals

5.115 coalton-impl/codegen/constant-propagation

Source

constant-propagation.lisp.

Use List
Public Interface

propagate-constants (function).

Internals

5.116 coalton-impl/typechecker/tc-env

Source

tc-env.lisp.

Use List
Used By List
Public Interface
Internals

5.118 coalton-impl/typechecker/traverse

Source

traverse.lisp.

Use List
Used By List
Public Interface
Internals

5.119 coalton-impl/parser/reader

Source

reader.lisp.

Use List

common-lisp.

Used By List
Public Interface
Internals

coalton-eclector-client (class).


5.120 coalton-impl/codegen/program

Source

program.lisp.

Use List
Public Interface
Internals

5.121 source-error

Source

package.lisp.

Use List

source-error/error.


5.123 coalton-library/math/dual

Dual numbers are a hypercomplex number system [1]. A dual number has
the form ‘a + bε‘ where ‘a‘ and ‘b‘ are real numbers and ‘ε‘ is a
symbol that satisfies ‘ε^2 = 0‘ and ‘ε != 0‘. The value ‘a‘ is often
called the *primal part* and the value ‘b‘ is often called the *dual
part*. One application of dual numbers is automatic differentiation;
an example taken from [2] is as follows.

Consider the function ‘f(x) = 3x+2‘ and you want to calculate ‘f(4)‘
and ‘f’(4)‘. By the usual rules of differentiation, we know ‘f’(x) = 3‘
and thus ‘(f(4), f’(4)) = (14, 3)‘. We seek to recover this with
dual numbers.

With dual numbers, we can calculate

“‘
f(a) + f’(a)ε
“‘

by taking a real-valued function ‘f‘ and evaluating as if it were a dual-valued function at the point ‘a + ε‘. Thus, for the defined ‘f‘,
we have:

“‘
f(4 + ε) = 3(4 + ε) + 2
= 3*4 + 3ε + 2
= 14 + 3ε.
“‘

In this result, the primal ‘14‘ is the value of ‘f(4)‘ and the dual is
the value of of ‘f’(4)‘.

Haskell has an automatic differentiation library and you can find it here [3].

Limitations:

We have decided to implement Ord, Eq, and Hash to look at only the
primal part of numbers. This is so the Dual type can be used primarily
for the purpose of automatic differentiation of existing code, and not
for general abstract mathematics. If you need these type classes
acting in the usual way (i.e., on both primal and dual parts), then we recommend making your own data type which wraps a dual number.

References:

- [1] https://en.wikipedia.org/wiki/Dual_number
- [2] https://blog.demofox.org/2014/12/30/dual-numbers-automatic-differentiation/ - [3] https://hackage.haskell.org/package/ad

Source

dual.lisp.

Use List
Used By List

coalton-library/math.

Public Interface
Internals

5.124 coalton-impl/codegen/transformations

Source

transformations.lisp.

Use List
Public Interface

rename-type-variables (function).


5.125 coalton-library/tuple

Source

tuple.lisp.

Use List
Used By List
Public Interface
Internals

5.127 coalton-impl/typechecker/type-errors

Source

type-errors.lisp.

Use List
Used By List
Public Interface
Internals

5.129 coalton-impl/codegen/codegen-class

Source

codegen-class.lisp.

Use List

common-lisp.

Public Interface

codegen-class-definitions (function).

Internals

make-method-fun (function).


5.130 coalton-impl/parser/cursor

Source

cursor.lisp.

Use List

common-lisp.

Public Interface
Internals

5.131 coalton-impl/typechecker/define-instance

Source

define-instance.lisp.

Use List
Used By List

coalton-impl/typechecker.

Public Interface

toplevel-typecheck-instance (function).

Internals

6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


6.1 Public Interface


6.1.1 Constants

Constant: +default-loop-label+

Supplied as a loop label in while, while-let, for, loop, break and continue when a label is not supplied by the user.

Package

coalton-impl/constants.

Source

constants.lisp.

Constant: +fundep-max-depth+

Maximum number of times to cycle when waiting for fundeps to fixpoint

Package

coalton-impl/typechecker/fundeps.

Source

fundeps.lisp.

Constant: +keyword-package+
Package

coalton-impl/util.

Source

utilities.lisp.

Constant: +kstar+
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.


6.1.2 Special variables

Special Variable: *arrow-type*
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Special Variable: *boolean-type*
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Special Variable: *char-type*
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Special Variable: *coalton-disable-specialization*
Package

coalton-impl/settings.

Source

settings.lisp.

Special Variable: *coalton-eclector-client*
Package

coalton-impl/parser/reader.

Source

reader.lisp.

Special Variable: *coalton-heuristic-inlining*
Package

coalton-impl/settings.

Source

settings.lisp.

Special Variable: *coalton-optimize*
Package

coalton-impl/settings.

Source

settings.lisp.

Special Variable: *coalton-optimize-library*
Package

coalton-impl/settings.

Source

settings.lisp.

Special Variable: *coalton-pretty-print-tyvars*

Whether to print all tyvars using type variable syntax

This requires a valid PPRINT-VARIABLE-CONTEXT

Package

coalton-impl/typechecker/base.

Source

base.lisp.

Special Variable: *coalton-print-unicode*

Whether to print coalton info using unicode symbols

Package

coalton-impl/settings.

Source

settings.lisp.

Special Variable: *codegen-hook*

A hook that provides access to intermediate program representations during code generation.

A function bound here will be called with a keyword category, and one or more additional arguments, depending on the value of that keyword. Keyword values:

:AST name type value

Toplevel definitions, after type checking and before compilation.

Package

coalton-impl/codegen/program.

Source

program.lisp.

Special Variable: *compile-print-types*

Print types of definitions to standard output on compile.

Package

coalton-impl/settings.

Source

settings.lisp.

Special Variable: *double-float-type*
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Special Variable: *emit-type-annotations*

Configure the backend to insert or remove type annotations from the generated code.

Package

coalton-impl/settings.

Source

settings.lisp.

Special Variable: *fraction-type*
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Special Variable: *global-environment*
Package

coalton-impl/entry.

Source

entry.lisp.

Special Variable: *ifix-type*
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Special Variable: *integer-type*
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Special Variable: *list-type*
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Special Variable: *pprint-tyvar-dict*
Package

coalton-impl/typechecker/base.

Source

base.lisp.

Special Variable: *pprint-variable-symbol-code*
Package

coalton-impl/typechecker/base.

Source

base.lisp.

Special Variable: *pprint-variable-symbol-suffix*
Package

coalton-impl/typechecker/base.

Source

base.lisp.

Special Variable: *single-float-type*
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Special Variable: *source-error-context*
Package

source-error/error.

Source

error.lisp.

Special Variable: *string-type*
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Special Variable: *traverse*

The recursive function reference for the current traversal. This will be bound for the extent of any traversal. Inside of an
‘action‘, ‘(funcall *traverse* node)‘ may be used to invoke recursion.

Package

coalton-impl/codegen/traverse.

Source

traverse.lisp.

Special Variable: *ufix-type*
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Special Variable: *unit-type*
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Special Variable: *update-hook*
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.


6.1.3 Symbol macros

Symbol Macro: *
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: +
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: -
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: /
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: /=
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: 1+
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: 1-
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: <
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: <=
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: <=>
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: <>
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: ==
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: >
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: >=
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: >>
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: >>=
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: ^
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: ^^
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: abort
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: abs
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: acos
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: acosh
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: add-feature
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: all
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: alpha?
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: alt
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: and
Package

coalton-library/bits.

Source

bits.lisp.

Symbol Macro: and!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: any
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: any!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: append
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: append
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: append
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: append
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: append-to-file!
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: architecture
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: aref
Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Symbol Macro: aref
Package

coalton-library/lisparray.

Source

lisparray.lisp.

Symbol Macro: argv0
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: as-optional
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: as-proxy-of
Package

coalton-library/types.

Source

types.lisp.

Symbol Macro: ascii-alpha?
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: ascii-alphanumeric?
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: ascii-digit?
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: ascii-lowercase?
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: ascii-uppercase?
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: ash
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: asin
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: asinh
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: asum
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: atan
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: atan2
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: atanh
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: best-approx
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: bidirectional
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: bimap
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: boolean-and
Package

coalton-library/builtin.

Source

builtin.lisp.

Symbol Macro: boolean-not
Package

coalton-library/builtin.

Source

builtin.lisp.

Symbol Macro: boolean-or
Package

coalton-library/builtin.

Source

builtin.lisp.

Symbol Macro: boolean-xor
Package

coalton-library/builtin.

Source

builtin.lisp.

Symbol Macro: bracket
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: capacity
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: capture-profile
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: car
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: cdr
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: ceiling
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: ceiling/
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: chain!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: char-code
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: chars
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: cis
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: clear!
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: clear!
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: close
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: cmd-args
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: code-char
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: collect
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: collect!
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: collect!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: collect!
Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Symbol Macro: combine-hashes
Package

coalton-library/hash.

Source

hash.lisp.

Symbol Macro: combine-hashes-order-independent
Package

coalton-library/hash.

Source

hash.lisp.

Symbol Macro: combs
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: combsof
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: complement
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: complex
Package

coalton-library/math/complex.

Source

complex.lisp.

Symbol Macro: compose
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: conc
Package

coalton-library/seq.

Source

seq.lisp.

Symbol Macro: concat
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: concat
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: concatmap
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: conjoin
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: conjugate
Package

coalton-library/math/complex.

Source

complex.lisp.

Symbol Macro: cons
Package

coalton.

Source

primitive-types.lisp.

Symbol Macro: const
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: copy
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: copy
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: copy!
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: cos
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: cosh
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: count
Package

coalton-library/hashtable.

Source

hashtable.lisp.

Symbol Macro: count!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: count-forever
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: countby
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: create-directory!
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: create-temp-directory!
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: create-temp-file!
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: curry
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: decreasing-order
Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Symbol Macro: decrement!
Package

coalton-library/cell.

Source

cell.lisp.

Symbol Macro: default
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: default?
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: defaulting-unwrap
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: delete-file!
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: denominator
Package

coalton-library/math/fraction.

Source

fraction.lisp.

Symbol Macro: difference
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: digit?
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: directory-exists?
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: directory-files
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: directory-pathname?
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: disjoin
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: div
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: divmod
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: down-from
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: downcase
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: drop
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: dual
Package

coalton-library/math/dual.

Source

dual.lisp.

Symbol Macro: dual-part
Package

coalton-library/math/dual.

Source

dual.lisp.

Symbol Macro: dyadic
Package

coalton-library/math/dyadic.

Source

dyadic.lisp.

Symbol Macro: ee
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: eerror
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: elementwise-hash!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: elementwise-match!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: elementwise==!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: elemindex
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: empty
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: empty
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: empty
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: empty
Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Symbol Macro: empty?
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: empty?
Package

coalton-library/seq.

Source

seq.lisp.

Symbol Macro: empty?
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: empty?
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: entries
Package

coalton-library/hashtable.

Source

hashtable.lisp.

Symbol Macro: entries
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: enumerate!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: eq
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: equivalence-classes
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: equivalence-classes-by
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: err
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: err?
Package

coalton-library/result.

Source

result.lisp.

Symbol Macro: error
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: even?
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: every!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: exact/
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: exists?
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: exp
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: expect
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: extend!
Package

coalton-library/hashtable.

Source

hashtable.lisp.

Symbol Macro: extend!
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: extend!
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: fail
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: false
Package

coalton.

Source

primitive-types.lisp.

Symbol Macro: features
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: file-exists?
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: file-pathname?
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: file-position
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: fileerror
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: filter
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: filter!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: filter-map!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: find
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: find!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: find-elem
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: find-map!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: findindex
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: finite?
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: fix
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: flat-map!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: flatten
Package

coalton-library/result.

Source

result.lisp.

Symbol Macro: flatten!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: flip
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: floor
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: floor/
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: flush
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: fold
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: fold!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: foldfree
Package

coalton-library/monad/free.

Source

monad/free.lisp.

Symbol Macro: foldr
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: for-each!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: free
Package

coalton-library/monad/free.

Source

monad/free.lisp.

Symbol Macro: from-some
Package

coalton-library/optional.

Source

optional.lisp.

Symbol Macro: fromint
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: fst
Package

coalton-library/tuple.

Source

tuple.lisp.

Symbol Macro: gc
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: gcd
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: general/
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: get
Package

coalton-library/hashtable.

Source

hashtable.lisp.

Symbol Macro: get
Package

coalton-library/seq.

Source

seq.lisp.

Symbol Macro: get
Package

coalton-library/monad/state.

Source

monad/state.lisp.

Symbol Macro: get-bytes-consed
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: get-real-time
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: get-run-time
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: getenv
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: gt
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: hash
Package

coalton-library/hash.

Source

hash.lisp.

Symbol Macro: head
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: head
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: head-unsafe
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: hostname
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: id
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: ii
Package

coalton-library/math/complex.

Source

complex.lisp.

Symbol Macro: ilog
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: imag-part
Package

coalton-library/math/complex.

Source

complex.lisp.

Symbol Macro: implementation
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: increasing-order
Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Symbol Macro: increment!
Package

coalton-library/cell.

Source

cell.lisp.

Symbol Macro: index
Package

coalton-library/slice.

Source

slice.lisp.

Symbol Macro: index
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: index
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: index
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: index-of!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: index-unsafe
Package

coalton-library/slice.

Source

slice.lisp.

Symbol Macro: index-unsafe
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: index-unsafe
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: inexact/
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: infinite?
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: infinity
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: init
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: input
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: insert
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: insert
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: insert
Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Symbol Macro: insert-or-replace
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: insert-or-replace
Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Symbol Macro: insertby
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: insertions
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: integral->num
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: intercalate
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: interleave!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: intersection
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: intersperse
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: into
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: into-iter
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: isqrt
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: items!
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: iter-chunked
Package

coalton-library/slice.

Source

slice.lisp.

Symbol Macro: iter-chunked-exact
Package

coalton-library/slice.

Source

slice.lisp.

Symbol Macro: iter-sliding
Package

coalton-library/slice.

Source

slice.lisp.

Symbol Macro: keys
Package

coalton-library/hashtable.

Source

hashtable.lisp.

Symbol Macro: keys
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: last
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: last
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: last!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: last-unsafe
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: lcm
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: length
Package

coalton-library/slice.

Source

slice.lisp.

Symbol Macro: length
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: length
Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Symbol Macro: length
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: length
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: length
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: length
Package

coalton-library/lisparray.

Source

lisparray.lisp.

Symbol Macro: lifta2
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: liftf
Package

coalton-library/monad/free.

Source

monad/free.lisp.

Symbol Macro: lisp-version
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: ln
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: log
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: lookup
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: lookup
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: lookup
Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Symbol Macro: lowercase?
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: lsh
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: lt
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: magnitude
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: make
Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Symbol Macro: make
Package

coalton-library/lisparray.

Source

lisparray.lisp.

Symbol Macro: make-uninitialized
Package

coalton-library/lisparray.

Source

lisparray.lisp.

Symbol Macro: map
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: map-err
Package

coalton-library/result.

Source

result.lisp.

Symbol Macro: map-fst
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: map-snd
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: map-while!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: max
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: max!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: maxbound
Package

coalton-library/math/bounded.

Source

bounded.lisp.

Symbol Macro: maximize-by!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: maximum
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: mconcat
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: member
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: mempty
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: merge
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: merge
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: merge
Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Symbol Macro: min
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: min!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: minbound
Package

coalton-library/math/bounded.

Source

bounded.lisp.

Symbol Macro: minimize-by!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: minimum
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: mkfraction
Package

coalton-library/math/fraction.

Source

fraction.lisp.

Symbol Macro: mod
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: msum
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: nan
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: nan?
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: negate
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: negative-infinity
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: negative?
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: new
Package

coalton-library/slice.

Source

slice.lisp.

Symbol Macro: new
Package

coalton-library/hashtable.

Source

hashtable.lisp.

Symbol Macro: new
Package

coalton-library/seq.

Source

seq.lisp.

Symbol Macro: new
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: new
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: new
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: new
Package

coalton-library/cell.

Source

cell.lisp.

Symbol Macro: next!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: nil
Package

coalton.

Source

primitive-types.lisp.

Symbol Macro: none
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: none?
Package

coalton-library/optional.

Source

optional.lisp.

Symbol Macro: nonnegative?
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: nonpositive?
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: nonzero?
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: not
Package

coalton-library/bits.

Source

bits.lisp.

Symbol Macro: not
Package

coalton-library/builtin.

Source

builtin.lisp.

Symbol Macro: nth
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: nth-cdr
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: nth-root
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: null?
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: numerator
Package

coalton-library/math/fraction.

Source

fraction.lisp.

Symbol Macro: odd?
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: ok
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: ok-or-error
Package

coalton-library/result.

Source

result.lisp.

Symbol Macro: ok?
Package

coalton-library/result.

Source

result.lisp.

Symbol Macro: once
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: open
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: optimize!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: optimize-by!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: optimumby
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: or
Package

coalton-library/bits.

Source

bits.lisp.

Symbol Macro: or!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: os
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: output
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: overwrite
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: pair-with
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: pair-with!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: parse-int
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: partition
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: peek
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: peek-unsafe
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: perms
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: phase
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: pi
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: polar
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: pop
Package

coalton-library/seq.

Source

seq.lisp.

Symbol Macro: pop!
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: pop!
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: pop!
Package

coalton-library/cell.

Source

cell.lisp.

Symbol Macro: pop-unsafe!
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: pop-unsafe!
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: positive?
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: pow
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: primal-part
Package

coalton-library/math/dual.

Source

dual.lisp.

Symbol Macro: print
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: product
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: profile
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: proper
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: proxy
Package

coalton-library/types.

Source

types.lisp.

Symbol Macro: proxy-inner
Package

coalton-library/types.

Source

types.lisp.

Symbol Macro: proxy-of
Package

coalton-library/types.

Source

types.lisp.

Symbol Macro: pure
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: push
Package

coalton-library/seq.

Source

seq.lisp.

Symbol Macro: push!
Package

coalton-library/queue.

Source

queue.lisp.

Symbol Macro: push!
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: push!
Package

coalton-library/cell.

Source

cell.lisp.

Symbol Macro: put
Package

coalton-library/seq.

Source

seq.lisp.

Symbol Macro: put
Package

coalton-library/monad/state.

Source

monad/state.lisp.

Symbol Macro: quantization
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: quantize
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: quot
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: quotrem
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: range
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: range
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: range-decreasing
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: range-increasing
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: read
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: read
Package

coalton-library/cell.

Source

cell.lisp.

Symbol Macro: read-char
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: read-file-lines
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: read-file-to-string
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: read-file-to-vector
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: read-vector
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: readable?
Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Symbol Macro: real-approx
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: real-part
Package

coalton-library/math/complex.

Source

complex.lisp.

Symbol Macro: reciprocal
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: recursive-iter
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: reduce
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: ref
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: ref-unchecked
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: rem
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: remove
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: remove
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: remove
Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Symbol Macro: remove!
Package

coalton-library/hashtable.

Source

hashtable.lisp.

Symbol Macro: remove-directory!
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: remove-directory-recursive!
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: remove-duplicates
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: remove-duplicates!
Package

coalton-library/iterator.

Source

hashtable.lisp.

Symbol Macro: remove-if
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: repeat
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: repeat
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: repeat-for
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: replace
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: replace
Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Symbol Macro: replace-or-insert
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: replace-or-insert
Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Symbol Macro: reverse
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: reverse
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: round
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: round-half-down
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: round-half-up
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: round/
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: rsh
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: run
Package

coalton-library/monad/state.

Source

monad/state.lisp.

Symbol Macro: runtime-repr
Package

coalton-library/types.

Source

types.lisp.

Symbol Macro: runtime-repr-of
Package

coalton-library/types.

Source

types.lisp.

Symbol Macro: safe/
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: scale
Package

coalton-library/math/dyadic.

Source

dyadic.lisp.

Symbol Macro: sequence
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: set!
Package

coalton-library/slice.

Source

slice.lisp.

Symbol Macro: set!
Package

coalton-library/hashtable.

Source

hashtable.lisp.

Symbol Macro: set!
Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Symbol Macro: set!
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: set!
Package

coalton-library/lisparray.

Source

lisparray.lisp.

Symbol Macro: set-capacity!
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: set-file-position
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: setenv!
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: shift
Package

coalton-library/math/dyadic.

Source

dyadic.lisp.

Symbol Macro: shift
Package

coalton-library/bits.

Source

bits.lisp.

Symbol Macro: sign
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: simplify
Package

coalton-library/math/dyadic.

Source

dyadic.lisp.

Symbol Macro: simplify-integer
Package

coalton-library/math/dyadic.

Source

dyadic.lisp.

Symbol Macro: sin
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: sincos
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: singleton
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: singleton
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: singleton?
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: singleton?
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: sinh
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: size
Package

coalton-library/seq.

Source

seq.lisp.

Symbol Macro: size-hint
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: sleep
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: snd
Package

coalton-library/tuple.

Source

tuple.lisp.

Symbol Macro: some
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: some?
Package

coalton-library/optional.

Source

optional.lisp.

Symbol Macro: sort
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: sort!
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: sort-by!
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: sortby
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: split
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: split
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: sqrt
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: square-magnitude
Package

coalton-library/math/complex.

Source

complex.lisp.

Symbol Macro: st
Package

coalton-library/monad/state.

Source

monad/state.lisp.

Symbol Macro: strip-prefix
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: strip-suffix
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: subdirectories
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: substring
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: substring-index
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: substring?
Package

coalton-library/string.

Source

string.lisp.

Symbol Macro: sum
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: sum!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: supersede
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: swap!
Package

coalton-library/cell.

Source

cell.lisp.

Symbol Macro: swap-remove!
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: swap-remove-unsafe!
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: system-relative-pathname
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: tail
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: take
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: take!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: tan
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: tanh
Package

coalton-library/math/elementary.

Source

elementary.lisp.

Symbol Macro: time
Package

coalton-library/system.

Source

system.lisp.

Symbol Macro: to-fraction
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: tointeger
Package

coalton-library/math/integral.

Source

integral.lisp.

Symbol Macro: trace
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: traceobject
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: transpose
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: traverse
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: true
Package

coalton.

Source

primitive-types.lisp.

Symbol Macro: truncate
Package

coalton-library/math/real.

Source

real.lisp.

Symbol Macro: tryinto
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: tuple
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: tuple3
Package

coalton-library/tuple.

Source

tuple.lisp.

Symbol Macro: tuple4
Package

coalton-library/tuple.

Source

tuple.lisp.

Symbol Macro: tuple5
Package

coalton-library/tuple.

Source

tuple.lisp.

Symbol Macro: uncurry
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: undefined
Package

coalton-library/builtin.

Source

builtin.lisp.

Symbol Macro: union
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: unit
Package

coalton.

Source

primitive-types.lisp.

Symbol Macro: unsafe-aref
Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Symbol Macro: unsafe-pointer-eq?
Package

coalton-library/functions.

Source

functions.lisp.

Symbol Macro: unsafe-set!
Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Symbol Macro: unwrap
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: unwrap-or-else
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: unwrapped!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: up-through
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: up-to
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: upcase
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: update
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: update!
Package

coalton-library/cell.

Source

cell.lisp.

Symbol Macro: update-swap!
Package

coalton-library/cell.

Source

cell.lisp.

Symbol Macro: uppercase?
Package

coalton-library/char.

Source

char.lisp.

Symbol Macro: val
Package

coalton-library/monad/free.

Source

monad/free.lisp.

Symbol Macro: values
Package

coalton-library/hashtable.

Source

hashtable.lisp.

Symbol Macro: values
Package

coalton-library/ord-map.

Source

ord-map.lisp.

Symbol Macro: with-capacity
Package

coalton-library/hashtable.

Source

hashtable.lisp.

Symbol Macro: with-capacity
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: with-default
Package

coalton-library/classes.

Source

classes.lisp.

Symbol Macro: with-initial-element
Package

coalton-library/vector.

Source

vector.lisp.

Symbol Macro: with-open-file
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: with-size
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: with-temp-directory
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: with-temp-file
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: writable?
Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Symbol Macro: write
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: write!
Package

coalton-library/cell.

Source

cell.lisp.

Symbol Macro: write-char
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: write-line
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: write-string
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: write-to-file!
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: write-vector
Package

coalton-library/file.

Source

file.lisp.

Symbol Macro: xor
Package

coalton-library/bits.

Source

bits.lisp.

Symbol Macro: xor
Package

coalton-library/builtin.

Source

builtin.lisp.

Symbol Macro: zero?
Package

coalton-library/math/arith.

Source

arith.lisp.

Symbol Macro: zip
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: zip!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: zip-with!
Package

coalton-library/iterator.

Source

iterator.lisp.

Symbol Macro: zipwith
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: zipwith3
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: zipwith4
Package

coalton-library/list.

Source

list.lisp.

Symbol Macro: zipwith5
Package

coalton-library/list.

Source

list.lisp.


6.1.4 Macros

Macro: .< (&rest items)

Right associative compose operator. Creates a new functions that will run the functions right to left when applied. This is the same as the NEST macro without supplying the value. The composition is thus the same order as COMPOSE.

‘(.< f g h)‘ creates the function ‘(fn (x) (f (g (h x))))

Package

coalton.

Source

language-macros.lisp.

Macro: .> (&rest items)

Left associative compose operator. Creates a new functions that will run the
functions left to right when applied. This is the same as the PIPE macro without supplying the value. The composition is thus the reverse order of COMPOSE.

‘(.> f g h)‘ creates the function ‘(fn (x) (h (g (f x))))

Package

coalton.

Source

language-macros.lisp.

Macro: action ((when type &rest args) &body body)

Construct an action block, turning ‘body‘ into a lambda function accepting ‘args‘ if ‘args‘ are provided. If there are no ‘args‘, then ‘body‘ is assumed to be a function object and is used directly with ‘when‘ and ‘type‘ to create an ‘action‘ instance. Otherwise, the first argument in ‘args‘ is declared to be a node of type ‘type‘, and the ‘args‘ and ‘body‘ are used to generate a lambda function.

Package

coalton-impl/codegen/traverse.

Source

traverse.lisp.

Macro: and (&rest args)
Package

coalton.

Source

faux-macros.lisp.

Macro: as (type &optional expr)

A syntactic convenience for type casting.

(as <type> <expr>)

is equivalent to

(the <type> (into <expr>))

and

(as <type>)

is equivalent to

(fn (expr) (the <type> (into expr))).

Note that this may copy the object or allocate memory.

Package

coalton.

Source

language-macros.lisp.

Macro: assert (datum &optional format-string &rest format-data)

Signal an error unless DATUM is ‘True’.
If the assertion fails, the signaled error will apply the FORMAT-DATA to the FORMAT-STRING via ‘cl:format’ to produce an error message.

Package

coalton.

Source

language-macros.lisp.

Macro: break (&optional label)
Package

coalton.

Source

faux-macros.lisp.

Macro: coalton (&rest forms)
Package

coalton.

Source

reader.lisp.

Macro: coalton-codegen (&body forms)

Generate code for FORMS, excluding Lisp type declarations.

Package

coalton.

Source

reader.lisp.

Macro: coalton-codegen-ast (&body forms)

Dump the AST for toplevel definitions occurring in FORMS to *standard-out* and return NIL.

Package

coalton.

Source

reader.lisp.

Macro: coalton-codegen-types (&body forms)

Generate code for FORMS, including Lisp type declarations.

Package

coalton.

Source

reader.lisp.

Macro: coalton-toplevel (&body forms)

Compile Coalton FORMS.

Package

coalton.

Source

reader.lisp.

Macro: cond (&rest clauses)
Package

coalton.

Source

faux-macros.lisp.

Macro: continue (&optional label)
Package

coalton.

Source

faux-macros.lisp.

Macro: debug-log (&rest vars)

Log names and values of VARS to standard output

Package

coalton-impl/util.

Source

utilities.lisp.

Macro: debug-tap (var)
Package

coalton-impl/util.

Source

utilities.lisp.

Macro: declare (var type)

Declare the type of a variable. (Coalton top-level operator.)

Package

coalton.

Source

faux-macros.lisp.

Macro: define (var-or-fun &body body)

Define a variable or function. (Coalton top-level operator.)

Package

coalton.

Source

faux-macros.lisp.

Macro: define-class (class &body method-signatures)

Define a new type class. (Coalton top-level operator.

Package

coalton.

Source

faux-macros.lisp.

Macro: define-global-lexical (var type)
Package

coalton-impl/global-lexical.

Source

global-lexical.lisp.

Macro: define-instance (instance &body method-definitions)

Define an instance of a type class. (Coalton top-level operator.)

Package

coalton.

Source

faux-macros.lisp.

Macro: define-struct (name &body definition)

Create a new sruct named NAME. (Coalton top-level operator.)

Package

coalton.

Source

faux-macros.lisp.

Macro: define-sxhash-hasher (type)
Package

coalton-library/hash.

Source

hash.lisp.

Macro: define-type (name &body definition)

Create a new algebraic data type named NAME. (Coalton top-level operator.)

Package

coalton.

Source

faux-macros.lisp.

Macro: defstdlib-package (name &rest args)
Package

coalton-library/utils.

Source

utils.lisp.

Macro: do (&body body)
Package

coalton.

Source

faux-macros.lisp.

Macro: fn (vars &body form)

A lambda abstraction callable within coalton.

Package

coalton.

Source

faux-macros.lisp.

Macro: for (pattern in iter &body body)
Package

coalton.

Source

faux-macros.lisp.

Macro: if (expr then else)
Package

coalton.

Source

faux-macros.lisp.

Macro: let (bindings &body form)

A lexical LET binding.

Package

coalton.

Source

faux-macros.lisp.

Macro: lisp (type vars &body lisp-expr)

An escape from Coalton into the Lisp world.

Package

coalton.

Source

faux-macros.lisp.

Macro: lisp-toplevel (options &body lisp-toplevel-forms)

Include lisp forms. (Coalton top-level operator.)

Package

coalton.

Source

faux-macros.lisp.

Macro: loop (&body body)
Package

coalton.

Source

faux-macros.lisp.

Macro: make (&rest pairs)

Construct a ‘HashTable’ containing the PAIRS as initial entries.

Each of the PAIRS should be a two-element list of the form (KEY VALUE). The resulting table will map KEY to VALUE.

Listing duplicate keys is disallowed. This macro will attempt to detect duplicate keys at compile-time, and signal an error if duplicate keys are found. If the macro doesn’t detect a pair of duplicate keys, the resulting table will map the KEY to exactly one of the listed VALUEs, but which VALUE is chosen is undefined.

Examples:

(make ("zero" 0)
("one" 1)
("two" 2))

(let ((zero "zero")
(one "one"))
(make (zero 0)
(one 1)
("two" 2)))

Package

coalton-library/hashtable.

Source

hashtable.lisp.

Macro: make (&rest elems)

Create a new ‘Seq‘ containing ‘elems‘.

Package

coalton-library/seq.

Source

seq.lisp.

Macro: make (&rest elements)

Construct a ‘Vector’ containing the ELEMENTS, in the order listed.

Package

coalton-library/vector.

Source

vector.lisp.

Macro: make (&rest elements)

Construct a tree containing the ELEMENTS.

e.g. (tree:make 5 6 1 8 9) => tree containing 1, 5, 6, 8, 9.

Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Macro: make-list (&rest forms)
Package

coalton.

Source

language-macros.lisp.

Macro: match (expr &body patterns)

Pattern matching construct.

Package

coalton.

Source

faux-macros.lisp.

Macro: monomorphize ()

Mark a definition for monomorphization.

Package

coalton.

Source

faux-macros.lisp.

Macro: nest (&rest items)

A syntactic convenience for function application. Transform

(NEST f g h x)

to

(f (g (h x))).

Package

coalton.

Source

language-macros.lisp.

Macro: or (&rest args)
Package

coalton.

Source

faux-macros.lisp.

Macro: pipe (&rest items)

A syntactic convenience for function application, sometimes called a "threading macro". Transform

(PIPE x h g f)

to

(f (g (h x))).

Package

coalton.

Source

language-macros.lisp.

Macro: progn (&body body)

A sequence of expressions.

Package

coalton.

Source

faux-macros.lisp.

Macro: repr (type &optional arg)

Annote a type definition with a runtime representation.

Package

coalton.

Source

faux-macros.lisp.

Macro: return (&optional value)
Package

coalton.

Source

faux-macros.lisp.

Macro: source-error (&key type span source highlight message primary-note notes help-notes)
Package

source-error/error.

Source

error.lisp.

Macro: specialize (name from-ty to-ty)

Declare a specialization for a function. (Coalton top-level operator.)

Package

coalton.

Source

faux-macros.lisp.

Macro: the (type expr)

Declare that EXPR is of type TYPE.

Package

coalton.

Source

faux-macros.lisp.

Macro: to-boolean (expr)

Convert the Lisp expression EXPR, representing a generalized boolean, to a Coalton boolean.

Package

coalton.

Source

language-macros.lisp.

Macro: unless (expr &body body)
Package

coalton.

Source

faux-macros.lisp.

Macro: unreachable ()

Assert that a branch of code cannot be evaluated in the course of normal execution.

Package

coalton-impl/util.

Source

utilities.lisp.

Macro: unreachable (&optional datum &rest arguments)

Signal an error with CL format string DATUM and optional format arguments ARGUMENTS.

Package

coalton-library/builtin.

Source

builtin.lisp.

Macro: when (expr &body body)
Package

coalton.

Source

faux-macros.lisp.

Macro: while (test &body body)
Package

coalton.

Source

faux-macros.lisp.

Macro: while-let (pattern = test &body body)
Package

coalton.

Source

faux-macros.lisp.

Macro: with-context ((key message) &body body)
Package

coalton-impl/source.

Source

source.lisp.

Macro: with-pprint-variable-context (() &body body)

Create a variable context which can be used with PPRINT-TVAR

Package

coalton-impl/typechecker/base.

Source

base.lisp.

Macro: with-pprint-variable-scope (() &body body)

If there is no pretty printing variable scope then create one for BODY

Package

coalton-impl/typechecker/base.

Source

base.lisp.

Macro: with-reader-context (stream &rest body)

Run the body in the toplevel reader context.

Package

coalton-impl/parser/reader.

Source

reader.lisp.


6.1.5 Compiler macros

Compiler Macro: call-coalton-function (function &rest args)
Package

coalton.

Source

function-entry.lisp.


6.1.6 Ordinary functions

Function: * (dict _0 _1)

* :: ∀ A. NUM A ⇒ (A → A → A)

Package

coalton-library/classes.

Source

classes.lisp.

Function: + (dict _0 _1)

+ :: ∀ A. NUM A ⇒ (A → A → A)

Package

coalton-library/classes.

Source

classes.lisp.

Function: - (dict _0 _1)

- :: ∀ A. NUM A ⇒ (A → A → A)

Package

coalton-library/classes.

Source

classes.lisp.

Function: / (dict _0 _1)

/ :: ∀ A. RECIPROCABLE A ⇒ (A → A → A)

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: /= (dict748 a-188 b-189)

/= :: ∀ A. EQ A ⇒ (A → A → BOOLEAN) Is ‘a‘ not equal to ‘b‘?

Package

coalton-library/functions.

Source

functions.lisp.

Function: 1+ (dict781 num-206)

1+ :: ∀ A. NUM A ⇒ (A → A) Increment ‘num‘.

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: 1- (dict782 num-207)

1- :: ∀ A. NUM A ⇒ (A → A) Decrement ‘num‘.

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: < (dict650 x-17 y-18)

< :: ∀ A. ORD A ⇒ (A → A → BOOLEAN) Is ‘x‘ less than ‘y‘?

Package

coalton-library/classes.

Source

classes.lisp.

Function: <= (dict652 x-21 y-22)

<= :: ∀ A. ORD A ⇒ (A → A → BOOLEAN) Is ‘x‘ less than or equal to ‘y‘?

Package

coalton-library/classes.

Source

classes.lisp.

Function: <=> (dict _0 _1)

<=> :: ∀ A. ORD A ⇒ (A → A → ORD)

Package

coalton-library/classes.

Source

classes.lisp.

Function: <> (dict _0 _1)

<> :: ∀ A. SEMIGROUP A ⇒ (A → A → A)

Package

coalton-library/classes.

Source

classes.lisp.

Function: == (dict _0 _1)

== :: ∀ A. EQ A ⇒ (A → A → BOOLEAN)

Package

coalton-library/classes.

Source

classes.lisp.

Function: > (dict649 x-15 y-16)

> :: ∀ A. ORD A ⇒ (A → A → BOOLEAN) Is ‘x‘ greater than ‘y‘?

Package

coalton-library/classes.

Source

classes.lisp.

Function: >= (dict651 x-19 y-20)

>= :: ∀ A. ORD A ⇒ (A → A → BOOLEAN) Is ‘x‘ greater than or equal to ‘y‘?

Package

coalton-library/classes.

Source

classes.lisp.

Function: >> (dict655 a-27 b-28)

>> :: ∀ A B C. MONAD A ⇒ ((A B) → (A C) → (A C))

Package

coalton-library/classes.

Source

classes.lisp.

Function: >>= (dict _0 _1)

>>= :: ∀ A B C. MONAD A ⇒ ((A B) → (B → (A C)) → (A C))

Package

coalton-library/classes.

Source

classes.lisp.

Function: ^ (dict868 dict869 base-655 power-656)

^ :: ∀ A B. (NUM A) (INTEGRAL B) ⇒ (A → B → A) Exponentiate BASE to a non-negative POWER.

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: ^^ (dict874 dict875 base-664 power-665)

^^ :: ∀ A B. (RECIPROCABLE A) (INTEGRAL B) ⇒ (A → B → A) Exponentiate BASE to a signed POWER.

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: abort (stream-3276)

ABORT :: ∀ A B. ((FILESTREAM A) → (RESULT FILEERROR B)) Closes a FileStream and aborts all operations..

Package

coalton-library/file.

Source

file.lisp.

Function: abs (dict776 dict777 x-202)

ABS :: ∀ A. (ORD A) (NUM A) ⇒ (A → A) Absolute value of ‘x‘.

Package

coalton-library/math/arith.

Source

arith.lisp.

Reader: accessor-field (instance)
Package

coalton-impl/typechecker/accessor.

Source

accessor.lisp.

Target Slot

field.

Reader: accessor-from (instance)
Package

coalton-impl/typechecker/accessor.

Source

accessor.lisp.

Target Slot

from.

Reader: accessor-to (instance)
Package

coalton-impl/typechecker/accessor.

Source

accessor.lisp.

Target Slot

to.

Function: acos (dict _0)

ACOS :: ∀ A. TRIGONOMETRIC A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: acosh (dict1078 x-1312)

ACOSH :: ∀ A. ELEMENTARY A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: add-feature (feat-3207)

ADD-FEATURE :: (STRING → UNIT)
Adds a feature ‘feat‘ to ‘cl:*features*‘.

Package

coalton-library/system.

Source

system.lisp.

Function: add-instance (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: add-specialization (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: all (f-2251 xs-2252)

ALL :: ∀ A. ((A → BOOLEAN) → (LIST A) → BOOLEAN) Returns TRUE if every element in XS matches F.

Package

coalton-library/list.

Source

list.lisp.

Function: alpha? (c-2409)

ALPHA? :: (CHAR → BOOLEAN) Is C an alphabetic character?

Package

coalton-library/char.

Source

char.lisp.

Function: alt (dict _0 _1)

ALT :: ∀ A B. ALTERNATIVE A ⇒ ((A B) → (A B) → (A B))

Package

coalton-library/classes.

Source

classes.lisp.

Function: analyze-translation-unit (translation-unit env)

Perform analysis passes on TRANSLATION-UNIT, potentially producing errors or warnings.

Package

coalton-impl/analysis/analysis.

Source

analysis.lisp.

Function: and (dict _0 _1)

AND :: ∀ A. BITS A ⇒ (A → A → A)
The bitwise logical ‘and‘ of two integers

Package

coalton-library/bits.

Source

bits.lisp.

Function: and! (iter-1734)

AND! :: ((ITERATOR BOOLEAN) → BOOLEAN)
Returns True if all iterator elements are True. May not consume the entire iterator. Returns True on an empty iterator.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: any (f-2255 l-2256)

ANY :: ∀ A. ((A → BOOLEAN) → (LIST A) → BOOLEAN) Returns TRUE if at least one element in XS matches F.

Package

coalton-library/list.

Source

list.lisp.

Function: any! (good?-1776 iter-1777)

ANY! :: ∀ A. ((A → BOOLEAN) → (ITERATOR A) → BOOLEAN)
Return ‘True‘ as soon as any element of ITER is GOOD?, or ‘False‘ if none of them are.

Returns ‘False‘ if ITER is empty.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: append (xs-2066 ys-2067)

APPEND :: ∀ A. ((LIST A) → (LIST A) → (LIST A)) Appends two lists together and returns a new list.

Package

coalton-library/list.

Source

list.lisp.

Function: append (q1-2586 q2-2587)

APPEND :: ∀ A. ((QUEUE A) → (QUEUE A) → (QUEUE A))
Create a new queue containing the elements of ‘q1‘ followed by the elements of ‘q2‘.

Package

coalton-library/queue.

Source

queue.lisp.

Function: append (v1-2355 v2-2356)

APPEND :: ∀ A. ((VECTOR A) → (VECTOR A) → (VECTOR A))
Create a new vector containing the elements of ‘v1‘ followed by the elements of ‘v2‘.

Package

coalton-library/vector.

Source

vector.lisp.

Function: append-to-file! (dict2329 dict2330 dict2331 path-3370 data-3371)

APPEND-TO-FILE! :: ∀ A B. (RUNTIMEREPR B) (INTO A PATHNAME) (FILE B) ⇒ (A → (VECTOR B) → (RESULT FILEERROR UNIT)) Opens and appends a file with data of type :a.

Package

coalton-library/file.

Source

file.lisp.

Function: apply-ast-substitution (subs node)

Substitute variables in the tree of ‘node‘ with other nodes specified in ‘subs‘. Throw an error if a variable to be substituted is bound in a subtree of ‘node‘.

Package

coalton-impl/codegen/ast-substitutions.

Source

ast-substitutions.lisp.

Function: apply-type-argument (tcon arg &key ksubs)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: apply-type-argument-list (tcon args &key ksubs)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: architecture (_2257)

ARCHITECTURE :: (UNIT → STRING)
The system’s architecture (stored at compile time).

Package

coalton-library/system.

Source

system.lisp.

Function: aref (dict1323 storage-1544 index-1545)

AREF :: ∀ A B. RANDOMACCESS A B ⇒ (A → UFIX → (OPTIONAL B))
Read the element at ‘index‘ of the random-access storage ‘storage‘. Return ‘None‘ if the read is out-of-bounds or not permitted.

Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Function: aref (v-1924 i-1925)

AREF :: ∀ A. ((LISPARRAY A) → UFIX → A) Read the ‘i‘th value of the ‘LispArray‘ ‘v‘.

Package

coalton-library/lisparray.

Source

lisparray.lisp.

Function: argv0 (_2264)

ARGV0 :: (UNIT → (OPTIONAL STRING))
The first command line argument (stored at compile time).

Package

coalton-library/system.

Source

system.lisp.

Function: as-optional (dict669 container-44)

AS-OPTIONAL :: ∀ A B. UNWRAPPABLE A ⇒ ((A B) → (OPTIONAL B))
Convert any Unwrappable container into an ‘Optional‘, constructing Some on a successful unwrap and None on a failed unwrap.

Package

coalton-library/classes.

Source

classes.lisp.

Function: as-proxy-of (x-2 _586)

AS-PROXY-OF :: ∀ A. (A → (PROXY A) → A)
Returns the parameter, forcing the proxy to have the same type as the parameter.

Package

coalton-library/types.

Source

types.lisp.

Function: ascii-alpha? (c-2410)

ASCII-ALPHA? :: (CHAR → BOOLEAN) Is C an ASCII alphabetic character?

Package

coalton-library/char.

Source

char.lisp.

Function: ascii-alphanumeric? (c-2413)

ASCII-ALPHANUMERIC? :: (CHAR → BOOLEAN) Is C an ASCII alphanumeric character?

Package

coalton-library/char.

Source

char.lisp.

Function: ascii-digit? (c-2412)

ASCII-DIGIT? :: (CHAR → BOOLEAN) Is C an ASCII digit character?

Package

coalton-library/char.

Source

char.lisp.

Function: ascii-lowercase? (c-2417)

ASCII-LOWERCASE? :: (CHAR → BOOLEAN) Is C an ASCII lowercase character?

Package

coalton-library/char.

Source

char.lisp.

Function: ascii-uppercase? (c-2415)

ASCII-UPPERCASE? :: (CHAR → BOOLEAN) Is C an ASCII uppercase character?

Package

coalton-library/char.

Source

char.lisp.

Function: ash (x-204 n-205)

ASH :: (INTEGER → INTEGER → INTEGER) Compute the "arithmetic shift" of ‘x‘ by ‘n‘.

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: asin (dict _0)

ASIN :: ∀ A. TRIGONOMETRIC A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: asinh (dict1077 x-1311)

ASINH :: ∀ A. ELEMENTARY A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Reader: ast-substitution-from (instance)
Package

coalton-impl/codegen/ast-substitutions.

Source

ast-substitutions.lisp.

Target Slot

from.

Reader: ast-substitution-to (instance)
Package

coalton-impl/codegen/ast-substitutions.

Source

ast-substitutions.lisp.

Target Slot

to.

Function: asum (dict746 dict747 xs-187)

ASUM :: ∀ A B C. (ALTERNATIVE B) (FOLDABLE A) ⇒ ((A (B C)) → (B C)) Fold over a list using ‘alt‘.

Package

coalton-library/functions.

Source

functions.lisp.

Function: atan (dict _0)

ATAN :: ∀ A. TRIGONOMETRIC A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: atan2 (dict1069 dict1070 dict1071 y-1304 x-1305)

ATAN2 :: ∀ A. (ORD A) (TRIGONOMETRIC A) (RECIPROCABLE A) ⇒ (A → A → A) Computes the two-argument arctangent of y and x, which is roughly the same as (atan (/ y x)) when defined and accounting for the quadrant of the (x,y).

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: atanh (dict1079 x-1313)

ATANH :: ∀ A. ELEMENTARY A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: atom-p (cursor)

Return T if cursor is pointing at an atom.

Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Reader: attribute-repr-arg (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

arg.

Reader: attribute-repr-type (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

type.

Function: base-type (ty)
Package

coalton-impl/typechecker/accessor.

Source

accessor.lisp.

Function: best-approx (dict _0)

BEST-APPROX :: ∀ A. RATIONAL A ⇒ (A → FRACTION)

Package

coalton-library/math/real.

Source

real.lisp.

Function: bidirectional (_0 _1)

BIDIRECTIONAL :: (PATHNAME → IFEXISTS → STREAMOPTIONS) Constructor for opening a bidirectional stream.

Package

coalton-library/file.

Source

file.lisp.

Function: bimap (dict _0 _1 _2)

BIMAP :: ∀ A B C D E. BIFUNCTOR E ⇒ ((A → B) → (C → D) → (E A C) → (E B D))

Package

coalton-library/classes.

Source

classes.lisp.

Function: boolean-and (x-145 y-146)

BOOLEAN-AND :: (BOOLEAN → BOOLEAN → BOOLEAN)
Are both ‘x‘ and ‘y‘ true? Note that this is a *function* which means both ‘x‘ and ‘y‘ will be evaluated. Use the ‘and‘ macro for short-circuiting behavior.

Package

coalton-library/builtin.

Source

builtin.lisp.

Function: boolean-not (x-142)

BOOLEAN-NOT :: (BOOLEAN → BOOLEAN)
The logical negation of ‘x‘. Is ‘x‘ false?

Package

coalton-library/builtin.

Source

builtin.lisp.

Function: boolean-or (x-143 y-144)

BOOLEAN-OR :: (BOOLEAN → BOOLEAN → BOOLEAN)
Is either ‘x‘ or ‘y‘ true? Note that this is a *function* which means both ‘x‘ and ‘y‘ will be evaluated. Use the ‘or‘ macro for short-circuiting behavior.

Package

coalton-library/builtin.

Source

builtin.lisp.

Function: boolean-xor (x-147 y-148)

BOOLEAN-XOR :: (BOOLEAN → BOOLEAN → BOOLEAN) Are ‘x‘ or ‘y‘ true, but not both?

Package

coalton-library/builtin.

Source

builtin.lisp.

Function: bracket (dict755 init-190 exit-191 body-192)

BRACKET :: ∀ A B C D. MONAD A ⇒ ((A B) → (B → (A C)) → (B → (A D)) → (A D))
Bracket takes an initial state, performs a body of operations, and then forces a safe exit.

This wraps ‘cl:unwind-protect‘.

Modeled after Haskell: https://wiki.haskell.org/Bracket_pattern

Package

coalton-library/functions.

Source

functions.lisp.

Function: call-coalton-function (function &rest args)

Apply a Coalton function object FUNCTION to ARGS from Common Lisp.

Package

coalton.

Source

function-entry.lisp.

Function: capacity (v-2328)

CAPACITY :: ∀ A. ((VECTOR A) → UFIX)
Returns the number of elements that ‘v‘ can store without resizing.

Package

coalton-library/vector.

Source

vector.lisp.

Function: capture-profile (f-3196)

CAPTURE-PROFILE :: ∀ A. ((UNIT → A) → (PROFILE A))
Runs a function, recording profile information and returning a Profile object.

Package

coalton-library/system.

Source

system.lisp.

Function: car (x-1993)

CAR :: ∀ A. ((LIST A) → A)
Return the traditional car of a list. This function is partial

Package

coalton-library/list.

Source

list.lisp.

Function: cdr (xs-1995)

CDR :: ∀ A. ((LIST A) → (LIST A)) Return the traditional cdr of a list.

Package

coalton-library/list.

Source

list.lisp.

Function: ceiling (dict _0)

CEILING :: ∀ A. QUANTIZABLE A ⇒ (A → INTEGER)

Package

coalton-library/math/real.

Source

real.lisp.

Function: ceiling/ (a-1002 b-1003)

CEILING/ :: (INTEGER → INTEGER → INTEGER)
Divide two integers and compute the ceiling of the quotient.

Package

coalton-library/math/real.

Source

real.lisp.

Function: chain! (iter1-1716 iter2-1717)

CHAIN! :: ∀ A. ((ITERATOR A) → (ITERATOR A) → (ITERATOR A))
Yield all the elements of ITER1 followed by all the elements from ITER2.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: char-code (char-2406)

CHAR-CODE :: (CHAR → UFIX)
Convert a character to its ASCII representation.

Package

coalton-library/char.

Source

char.lisp.

Function: chars (str-2456)

CHARS :: (STRING → (ITERATOR CHAR))
Returns an iterator over the characters in ‘str‘.

Package

coalton-library/string.

Source

string.lisp.

Function: check-duplicates (elems f callback)

Check for duplicate elements in ELEMS. F maps items in ELEMS to symbols which are compared for equality.
As soon as two duplicate elements are detected, CALLBACK is invoked with those two elements, ordered by source location.

Package

coalton-impl/typechecker/base.

Source

base.lisp.

Function: check-package (elems f source)
Package

coalton-impl/typechecker/base.

Source

base.lisp.

Function: cis (dict1072 dict1073 z-1307)

CIS :: ∀ A. (TRIGONOMETRIC A) (COMPLEX A) ⇒ (A → (COMPLEX A)) A point on the complex unit circle:

(cis z) := (exp (complex 0 z))
= (complex (cos z) (sin z))

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: clear! (q-2575)

CLEAR! :: ∀ A. ((QUEUE A) → UNIT) Clear all elements from ‘q‘.

Package

coalton-library/queue.

Source

queue.lisp.

Function: clear! (v-2335)

CLEAR! :: ∀ A. ((VECTOR A) → UNIT) Set the capacity of ‘v‘ to ‘0‘.

Package

coalton-library/vector.

Source

vector.lisp.

Function: close (stream-3275)

CLOSE :: ∀ A B. ((FILESTREAM A) → (RESULT FILEERROR B)) Closes a FileStream.

Package

coalton-library/file.

Source

file.lisp.

Function: closure (x f)

Computes the closure of x under f

Package

coalton-impl/typechecker/fundeps.

Source

fundeps.lisp.

Function: cmd-args (_2263)

CMD-ARGS :: (UNIT → (LIST STRING))
The current command line arguments (stored at compile time).

Package

coalton-library/system.

Source

system.lisp.

Function: coalton-bug (reason &rest args)
Package

coalton-impl/util.

Source

utilities.lisp.

Function: coalton-release-p ()

Determines how redefinable code generated by Coalton is.

In development mode (i.e. (not (coalton-release-p))), Coalton turns all declare-type forms into CLOS objects to support a repl based workflow.

In release mode Coalton compiles declare-type forms into frozen structs or even more optimal layouts which may not support redefinition.

Development mode is the default.

Enable release mode either by setting the UNIX environment variable COALTON_ENV to "release", by

(setf (get ’:coalton-config ’:compiler-mode) "release")

or by pushing ‘:coalton-release’ into ‘*features*’. Any of these must be done before loading Coalton.

Package

coalton-impl/settings.

Source

settings.lisp.

Function: code-char (code-2408)

CODE-CHAR :: (UFIX → (OPTIONAL CHAR))
Convert a number to its ASCII character, returning None on failure.

Package

coalton-library/char.

Source

char.lisp.

Function: codegen (source)

Compile Coalton source from SOURCE and return Lisp program text. NAME may be the filename related to the input stream.

Package

coalton-impl/entry.

Source

entry.lisp.

Function: codegen-class-definitions (classes env)
Package

coalton-impl/codegen/codegen-class.

Source

codegen-class.lisp.

Function: codegen-type-definition (def env)
Package

coalton-impl/codegen/codegen-type-definition.

Source

codegen-type-definition.lisp.

Function: collect (dict2073 dict2074 coll-2893)

COLLECT :: ∀ A B C. (ORD B) (FOLDABLE A) ⇒ ((A (TUPLE B C)) → (MAP B C)) Construct a ‘Map‘ containing all the ‘(key value)‘ pairs in ‘coll‘.

If ‘coll‘ contains duplicate keys, later values will overwrite earlier values.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Function: collect (cursor &key test key)

Collect values from list-valued CURSOR until empty or TEST returns NIL, optionally transforming each value with KEY.

Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Function: collect! (dict2072 iter-2890)

COLLECT! :: ∀ A B. ORD A ⇒ ((ITERATOR (TUPLE A B)) → (MAP A B))
Construct a ‘Map‘ containing all the ‘(key value)‘ pairs in ‘iter‘.

If ‘iter‘ contains duplicate keys, later values will overwrite earlier values.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Function: collect! (dict _0)

COLLECT! :: ∀ A B. FROMITERATOR B A ⇒ ((ITERATOR A) → B)

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: collect! (dict2014 iter-2833)

COLLECT! :: ∀ A. ORD A ⇒ ((ITERATOR A) → (TREE A))
Construct a Tree containing all the elements of ITER.

If ITER contains duplicates, later elements will overwrite earlier elements.

Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Function: collect-referenced-classes (ty)

Returns a deduplicated list of all classes referenced in TY.

Package

coalton-impl/parser/collect.

Source

collect.lisp.

Function: collect-referenced-types (type)

Returns a deduplicated list of all ‘TYCON’s in TYPE.

Package

coalton-impl/parser/collect.

Source

collect.lisp.

Function: collect-symbols (cursor)

Read a list of symbols from CURSOR.

Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Function: collect-type-variables (type)

Returns a deduplicated list of all ‘TYVAR’s in TYPE.

Package

coalton-impl/parser/collect.

Source

collect.lisp.

Function: collect-variables (node)

Returns a deduplicated list of all ‘NODE-VARIABLE’s referenced in expressions. May not include all bound variables.

Package

coalton-impl/parser/collect.

Source

collect.lisp.

Function: combine-hashes (lhs-130 rhs-131)

COMBINE-HASHES :: (HASH → HASH → HASH)

Package

coalton-library/hash.

Source

hash.lisp.

Function: combine-hashes-order-independent (lhs-132 rhs-133)

COMBINE-HASHES-ORDER-INDEPENDENT :: (HASH → HASH → HASH)

Package

coalton-library/hash.

Source

hash.lisp.

Function: combs (l-2262)

COMBS :: ∀ A. ((LIST A) → (LIST (LIST A)))
Compute a list of all combinations of elements of L. This function is sometimes goes by the name "power set" or "subsets".

The ordering of elements of L is preserved in the ordering of elements in each list produced by ‘(COMBS L)‘.

Package

coalton-library/list.

Source

list.lisp.

Function: combsof (n-2266 l-2267)

COMBSOF :: ∀ A. (UFIX → (LIST A) → (LIST (LIST A)))
Produce a list of size-N subsets of L.

The ordering of elements of L is preserved in the ordering of elements in each list produced by ‘(COMBSOF N L)‘.

This function is equivalent to all size-N elements of ‘(COMBS L)‘.

Package

coalton-library/list.

Source

list.lisp.

Function: compile (source &key load output-file)

Compile Coalton code in SOURCE, returning the pathname of the generated .fasl file. If OUTPUT-FILE is nil, the built-in compiler default output location will be used.

Package

coalton-impl/entry.

Source

entry.lisp.

Function: compile-coalton-toplevel (program)

Compile PROGRAM and return a single form suitable for direct inclusion by Lisp compiler. For implementing coalton-toplevel macro.

Package

coalton-impl/entry.

Source

entry.lisp.

Function: compile-to-lisp (source output)

Read Coalton source from SOURCE and write Lisp source to OUTPUT. NAME may be the filename related to the input stream.

Package

coalton-impl/entry.

Source

entry.lisp.

Function: compile-translation-unit (translation-unit monomorphize-table env)
Package

coalton-impl/codegen/program.

Source

program.lisp.

Function: complement (f-175 x-176)

COMPLEMENT :: ∀ A. ((A → BOOLEAN) → A → BOOLEAN) Compute the complement of a unary Boolean function.

Package

coalton-library/functions.

Source

functions.lisp.

Function: complex (dict _0 _1)

COMPLEX :: ∀ A. COMPLEX A ⇒ (A → A → (COMPLEX A))

Package

coalton-library/math/complex.

Source

complex.lisp.

Function: compose (f-166 g-167)

COMPOSE :: ∀ A B C. ((A → B) → (C → A) → C → B)
Produces a function equivalent to applying ‘g‘ followed by ‘f‘.

Package

coalton-library/functions.

Source

functions.lisp.

Function: compose-substitution-lists (s1 s2)

Compose substitution lists S1 and S2 together, applying S1 to S2.

Package

coalton-impl/typechecker/substitutions.

Source

substitutions.lisp.

Function: conc (dict2176 left-3036 right-3037)

CONC :: ∀ A. RUNTIMEREPR A ⇒ ((SEQ A) → (SEQ A) → (SEQ A)) Concatenate two ‘Seq‘s

Package

coalton-library/seq.

Source

seq.lisp.

Function: concat (xs-2068)

CONCAT :: ∀ A. ((LIST (LIST A)) → (LIST A))
Appends a list of lists together into a single new list.

Package

coalton-library/list.

Source

list.lisp.

Function: concat (str1-2427 str2-2428)

CONCAT :: (STRING → STRING → STRING)
Concatenate STR1 and STR2 together, returning a new string.

Package

coalton-library/string.

Source

string.lisp.

Function: concatmap (f-2070 xs-2071)

CONCATMAP :: ∀ A B. ((A → (LIST B)) → (LIST A) → (LIST B)) Apply F to each element in XS and concatenate the results.

Package

coalton-library/list.

Source

list.lisp.

Function: conjoin (f-169 g-170 x-171)

CONJOIN :: ∀ A. ((A → BOOLEAN) → (A → BOOLEAN) → A → BOOLEAN) Compute the conjunction of two unary Boolean functions.

Package

coalton-library/functions.

Source

functions.lisp.

Function: conjugate (dict1021 n-1061)

CONJUGATE :: ∀ A. COMPLEX A ⇒ ((COMPLEX A) → (COMPLEX A)) The complex conjugate.

Package

coalton-library/math/complex.

Source

complex.lisp.

Function: cons (x-5 xs-6)

CONS :: ∀ A. (A → (LIST A) → (LIST A))

Package

coalton.

Source

primitive-types.lisp.

Function: const (a-158 _b-159)

CONST :: ∀ A B. (A → B → A)
A function that always returns its first argument.

Package

coalton-library/functions.

Source

functions.lisp.

Function: construct-function-entry (function arity)

Construct a FUNCTION-ENTRY object with ARITY

NOTE: There is no FUNCTION-ENTRY for arity 1 and the function will be returned

Package

coalton-impl/runtime/function-entry.

Source

function-entry.lisp.

Function: constructor-arguments (name env)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Reader: constructor-entry-arity (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

arity.

Reader: constructor-entry-classname (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

classname.

Reader: constructor-entry-compressed-repr (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

compressed-repr.

Reader: constructor-entry-constructs (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

constructs.

Reader: constructor-entry-name (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

name.

Reader: constructor-fields (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

fields.

Reader: constructor-name (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

name.

Function: constructor-slot-name (constructor-entry i)
Package

coalton-impl/codegen/codegen-type-definition.

Source

codegen-type-definition.lisp.

Function: copy (q-2574)

COPY :: ∀ A. ((QUEUE A) → (QUEUE A))
Return a new queue containing the same elements as ‘q‘.

Package

coalton-library/queue.

Source

queue.lisp.

Function: copy (v-2331)

COPY :: ∀ A. ((VECTOR A) → (VECTOR A))
Return a new vector containing the same elements as ‘v‘.

Package

coalton-library/vector.

Source

vector.lisp.

Function: copy! (dict2292 dict2293 input-3253 output-3254)

COPY! :: ∀ A B. (INTO A PATHNAME) (INTO B PATHNAME) ⇒ (A → B → (RESULT FILEERROR UNIT)) Copies a file to a new location.

Package

coalton-library/file.

Source

file.lisp.

Function: copy-node (node &optional new-type)

Make a copy of ‘node‘, optionally with a ‘new-type‘.

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: cos (dict _0)

COS :: ∀ A. TRIGONOMETRIC A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: cosh (dict1075 x-1309)

COSH :: ∀ A. ELEMENTARY A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: count (table-2544)

COUNT :: ∀ A B. ((HASHTABLE A B) → INTEGER) Returns the number of entries in TABLE

Package

coalton-library/hashtable.

Source

hashtable.lisp.

Function: count! (iter-1743)

COUNT! :: ∀ A. ((ITERATOR A) → UFIX)
Return the number of elements in ITER.
This operation could be called ‘length!‘, but ‘count!‘ emphasizes the fact that it consumes ITER, and afterwards, ITER will be exhausted.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: count-applications (node)

Count the number of function application nodes in the AST corresponding to ‘node‘.

Package

coalton-impl/codegen/traverse.

Source

traverse.lisp.

Function: count-forever (dict1548 dict1549 _1550)

COUNT-FOREVER :: ∀ A. (NUM A) (ORD A) ⇒ (UNIT → (ITERATOR A)) An infinite iterator which starts at 0 and counts upwards by 1.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: count-nodes (node)

Count the number of nodes in the AST corresponding to ‘node‘.

Package

coalton-impl/codegen/traverse.

Source

traverse.lisp.

Function: countby (f-2187 things-2188)

COUNTBY :: ∀ A. ((A → BOOLEAN) → (LIST A) → UFIX)
Count the number of items in THINGS that satisfy the predicate F.

Package

coalton-library/list.

Source

list.lisp.

Function: create-directory! (dict2285 path-3239)

CREATE-DIRECTORY! :: ∀ A. INTO A PATHNAME ⇒ (A → (RESULT FILEERROR PATHNAME))
This is equivalent to ‘mkdir -p‘. Creates a directory and its parents. The pathname must be a valid directory pathname.

Package

coalton-library/file.

Source

file.lisp.

Function: create-temp-directory! (_2324)

CREATE-TEMP-DIRECTORY! :: (UNIT → (RESULT FILEERROR PATHNAME)) This configures a default temporary directory for use.

Package

coalton-library/file.

Source

file.lisp.

Function: create-temp-file! (file-ext-3364)

CREATE-TEMP-FILE! :: (STRING → (RESULT FILEERROR PATHNAME)) This configures a default temporary file for use.

Package

coalton-library/file.

Source

file.lisp.

Function: cst-source-range (csts)
Package

coalton-impl/util.

Source

utilities.lisp.

Function: curry (func-177 left-178 right-179)

CURRY :: ∀ A B C. (((TUPLE A B) → C) → A → B → C)
Take a function whose input is a tuple and enable curried application of the left and right parameters, equivalent to ‘(func (Tuple left right))‘.

Package

coalton-library/functions.

Source

functions.lisp.

Function: cursor-location (cursor)

Return the location of the value that CURSOR is pointing at.

Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Reader: cursor-message (instance)
Writer: (setf cursor-message) (instance)
Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Target Slot

message.

Reader: cursor-pointer (instance)
Writer: (setf cursor-pointer) (instance)
Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Target Slot

pointer.

Reader: cursor-source (instance)
Writer: (setf cursor-source) (instance)
Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Target Slot

source.

Reader: cursor-value (instance)
Writer: (setf cursor-value) (instance)
Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Target Slot

value.

Function: custom-hash-table-containsp (table key)
Package

coalton/hashtable-shim.

Source

impl-sbcl.lisp.

Function: custom-hash-table-count (table)
Package

coalton/hashtable-shim.

Source

impl-sbcl.lisp.

Function: custom-hash-table-get (table key)
Package

coalton/hashtable-shim.

Source

impl-sbcl.lisp.

Function: custom-hash-table-iter (table)
Package

coalton/hashtable-shim.

Source

impl-sbcl.lisp.

Function: custom-hash-table-remove (table key)
Package

coalton/hashtable-shim.

Source

impl-sbcl.lisp.

Function: custom-hash-table-set (table key val)
Package

coalton/hashtable-shim.

Source

impl-sbcl.lisp.

Function: decrement! (dict1336 cel-1566)

DECREMENT! :: ∀ A. NUM A ⇒ ((CELL A) → A)
Subtract one from the contents of CEL, storing and returning the new value

Package

coalton-library/cell.

Source

cell.lisp.

Function: default (dict _0)

DEFAULT :: ∀ A. DEFAULT A ⇒ (UNIT → A)

Package

coalton-library/classes.

Source

classes.lisp.

Function: default-preds (env tvars preds)
Package

coalton-impl/typechecker/context-reduction.

Source

context-reduction.lisp.

Function: default-subs (env tvars preds)
Package

coalton-impl/typechecker/context-reduction.

Source

context-reduction.lisp.

Function: default? (dict674 dict675 x-47)

DEFAULT? :: ∀ A. (DEFAULT A) (EQ A) ⇒ (A → BOOLEAN) Is ‘x‘ the default item of its type?

Package

coalton-library/classes.

Source

classes.lisp.

Function: defaulting-unwrap (dict671 dict672 container-45)

DEFAULTING-UNWRAP :: ∀ A B. (UNWRAPPABLE A) (DEFAULT B) ⇒ ((A B) → B) Unwrap an ‘unwrappable‘, returning ‘(default)‘ of the wrapped type on failure.

Package

coalton-library/classes.

Source

classes.lisp.

Function: delete-file! (dict2294 path-3257)

DELETE-FILE! :: ∀ A. INTO A PATHNAME ⇒ (A → (RESULT FILEERROR UNIT)) Deletes a given file if the file exists.

Package

coalton-library/file.

Source

file.lisp.

Function: denominator (q-631)

DENOMINATOR :: (FRACTION → INTEGER) The denominator of a fraction.

Package

coalton-library/math/fraction.

Source

fraction.lisp.

Function: difference (dict1772 xs-2113 ys-2114)

DIFFERENCE :: ∀ A. EQ A ⇒ ((LIST A) → (LIST A) → (LIST A))
Returns a new list with the first occurence of each element in ‘ys‘ removed from ‘xs‘.

Package

coalton-library/list.

Source

list.lisp.

Function: digit? (c-2411)

DIGIT? :: (CHAR → BOOLEAN) Is C a digit character?

Package

coalton-library/char.

Source

char.lisp.

Function: directory-exists? (dict2281 path-3230)

DIRECTORY-EXISTS? :: ∀ A. INTO A PATHNAME ⇒ (A → (RESULT FILEERROR BOOLEAN)) Returns True if a pathname names a directory that exists.

Package

coalton-library/file.

Source

file.lisp.

Function: directory-files (dict2286 path-3241)

DIRECTORY-FILES :: ∀ A. INTO A PATHNAME ⇒ (A → (RESULT FILEERROR (LIST PATHNAME)))
Returns all files within the directory. Returns an error if the pathname is not a directory pathname.

Package

coalton-library/file.

Source

file.lisp.

Function: directory-pathname? (dict2277 path-3220)

DIRECTORY-PATHNAME? :: ∀ A. INTO A PATHNAME ⇒ (A → BOOLEAN) Returns True if a pathname has no file component.

Package

coalton-library/file.

Source

file.lisp.

Function: discard-symbol (cursor &optional symbol message)

Read and discard a symbol from CURSOR.
Signal a condition with MESSAGE if a symbol is not present.

Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Function: disjoin (f-172 g-173 x-174)

DISJOIN :: ∀ A. ((A → BOOLEAN) → (A → BOOLEAN) → A → BOOLEAN) Compute the disjunction of two unary Boolean functions.

Package

coalton-library/functions.

Source

functions.lisp.

Function: display-source-error (stream error)
Package

source-error/error.

Source

error.lisp.

Function: div (dict _0 _1)

DIV :: ∀ A. REMAINDER A ⇒ (A → A → A)

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: divmod (dict _0 _1)

DIVMOD :: ∀ A. REMAINDER A ⇒ (A → A → (TUPLE A A))

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: down-from (dict1546 dict1547 limit-1670)

DOWN-FROM :: ∀ A. (NUM A) (ORD A) ⇒ (A → (ITERATOR A))
An iterator which begins below the provided limit and counts down through and including zero.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: downcase (c-2419)

DOWNCASE :: (CHAR → CHAR)
Returns the downcased version of C, returning C when there is none.

Package

coalton-library/char.

Source

char.lisp.

Function: drop (n list)
Package

coalton-impl/util.

Source

utilities.lisp.

Function: drop (n-2015 xs-2016)

DROP :: ∀ A. (UFIX → (LIST A) → (LIST A)) Returns a list with the first N elements removed.

Package

coalton-library/list.

Source

list.lisp.

Function: dual (_0 _1)

DUAL :: ∀ A. (A → A → (DUAL A))
Representation of a dual number in the form ‘a + bε‘ where ‘a‘ and ‘b‘ are real numbers and ‘ε‘ satisfies ‘ε^2 = 0‘ and ‘ε != 0‘.

Note: ‘Eq‘, and ‘Ord‘ and ‘Hash‘ only make use of the primal component.

Package

coalton-library/math/dual.

Source

dual.lisp.

Function: dual-part (g1142)

DUAL-PART :: ∀ A. ((DUAL A) → A)
The dual (i.e., derivative) part of a dual number.

Package

coalton-library/math/dual.

Source

dual.lisp.

Function: dyadic (_0 _1)

DYADIC :: (INTEGER → INTEGER → DYADIC)

Package

coalton-library/math/dyadic.

Source

dyadic.lisp.

Function: each (cursor f)

For each element in cons-valued CURSOR, create a subcursor and apply F.

Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Function: ee (dict)

EE :: ∀ A. EXPONENTIABLE A ⇒ A

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: elementwise-hash! (dict1573 iter-1783)

ELEMENTWISE-HASH! :: ∀ A. HASH A ⇒ ((ITERATOR A) → HASH) Hash an iterator by combining the hashes of all its elements.

The empty iterator will hash as 0.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: elementwise-match! (same?-1778 left-1779 right-1780)

ELEMENTWISE-MATCH! :: ∀ A. ((A → A → BOOLEAN) → (ITERATOR A) → (ITERATOR A) → BOOLEAN)
Are LEFT and RIGHT elementwise-identical under SAME?

True if, for every pair of elements (A B) in (LEFT RIGHT), (same? A B) is True, and LEFT and RIGHT have the same length.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: elementwise==! (dict1572)

ELEMENTWISE==! :: ∀ A. EQ A ⇒ ((ITERATOR A) → (ITERATOR A) → BOOLEAN)
Is every element of the first iterator ‘==’ to the corresponding element of the second?

True if two iterators have the same length, and for every N, the Nth element of the first iterator is ‘==’ to the Nth element of the second iterator.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: elemindex (dict1758 x-2047 xs-2048)

ELEMINDEX :: ∀ A. EQ A ⇒ (A → (LIST A) → (OPTIONAL UFIX))

Package

coalton-library/list.

Source

list.lisp.

Function: empty (dict)

EMPTY :: ∀ A B. ALTERNATIVE A ⇒ (A B)

Package

coalton-library/classes.

Source

classes.lisp.

Function: empty ()
Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Function: empty-p (cursor)

T if CURSOR has no next value.

Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Function: empty? (dict2288 path-3245)

EMPTY? :: ∀ A. INTO A PATHNAME ⇒ (A → (RESULT FILEERROR BOOLEAN)) Checks whether a directory is empty.

Package

coalton-library/file.

Source

file.lisp.

Function: empty? (seq-2988)

EMPTY? :: ∀ A. ((SEQ A) → BOOLEAN)

Package

coalton-library/seq.

Source

seq.lisp.

Function: empty? (q-2573)

EMPTY? :: ∀ A. ((QUEUE A) → BOOLEAN) Is ‘q‘ empty?

Package

coalton-library/queue.

Source

queue.lisp.

Function: empty? (v-2329)

EMPTY? :: ∀ A. ((VECTOR A) → BOOLEAN) Is ‘v‘ empty?

Package

coalton-library/vector.

Source

vector.lisp.

Function: end-location (location)

Return a new location that points at a zero-length span immediately past tht end of LOCATION.

Package

coalton-impl/source.

Source

source.lisp.

Function: entail (env preds pred)

Does PRED hold if and only if all of PREDS hold?

Package

coalton-impl/typechecker/context-reduction.

Source

context-reduction.lisp.

Function: entries (table-2545)

ENTRIES :: ∀ A B. ((HASHTABLE A B) → (ITERATOR (TUPLE A B))) Returns the key-values pairs as a list.

Package

coalton-library/hashtable.

Source

hashtable.lisp.

Function: entries (mp-2884)

ENTRIES :: ∀ A B. ((MAP A B) → (ITERATOR (TUPLE A B)))
Iterate over the (key value) pairs in MP, sorted by the keys in least-to-greatest order.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Function: entry-point (program)
Package

coalton-impl/entry.

Source

entry.lisp.

Function: enumerate! (iter-1694)

ENUMERATE! :: ∀ A. ((ITERATOR A) → (ITERATOR (TUPLE UFIX A))) Pair successive zero-based incides with elements from ITER

Package

coalton-library/iterator.

Source

iterator.lisp.

Reader: environment-class-environment (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

class-environment.

Reader: environment-code-environment (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

code-environment.

Reader: environment-constructor-environment (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

constructor-environment.

Reader: environment-function-environment (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

function-environment.

Reader: environment-fundep-environment (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

fundep-environment.

Reader: environment-instance-environment (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

instance-environment.

Reader: environment-method-inline-environment (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

method-inline-environment.

Reader: environment-name-environment (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

name-environment.

Reader: environment-specialization-environment (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

specialization-environment.

Reader: environment-type-environment (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

type-environment.

Reader: environment-value-environment (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

value-environment.

Function: equivalence-classes (dict1775)

EQUIVALENCE-CLASSES :: ∀ A. EQ A ⇒ ((LIST A) → (LIST (LIST A)))

Package

coalton-library/list.

Source

list.lisp.

Function: equivalence-classes-by (f-2232 l-2233)

EQUIVALENCE-CLASSES-BY :: ∀ A. ((A → A → BOOLEAN) → (LIST A) → (LIST (LIST A))) Break a list into a list of equivalence classes according to an equivalence relation.

Package

coalton-library/list.

Source

list.lisp.

Function: err (_0)

ERR :: ∀ A B. (A → (RESULT A B))

Package

coalton-library/classes.

Source

classes.lisp.

Function: err? (x-1847)

ERR? :: ∀ A B. ((RESULT A B) → BOOLEAN) Returns TRUE if X is ERR

Package

coalton-library/result.

Source

result.lisp.

Function: error (message note &rest notes)

Signal an error related to one or more source locations

Package

coalton-impl/source.

Source

source.lisp.

Function: error (dict _0)

ERROR :: ∀ A B. SIGNALABLE A ⇒ (A → B)
Signal an error with a type-specific error string.

Package

coalton-library/classes.

Source

classes.lisp.

Function: error (cursor position note)

Signal a PARSE-ERROR with a NOTE that labels the current value of a cursor.

Position is one of:

:last – label the last element
:next – label the next element
:form – label the enclosing form
:after-last – point just past the last element

Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Function: even? (dict866 n-653)

EVEN? :: ∀ A. INTEGRAL A ⇒ (A → BOOLEAN) Is N even?

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: every! (good?-1773 iter-1774)

EVERY! :: ∀ A. ((A → BOOLEAN) → (ITERATOR A) → BOOLEAN)
Return ‘True‘ if every element of ITER is GOOD?, or ‘False‘ as soon as any element is not GOOD?.

Returns ‘True‘ if ITER is empty.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: exact/ (a-996 b-997)

EXACT/ :: (INTEGER → INTEGER → FRACTION) Exactly divide two integers and produce a fraction.

Package

coalton-library/math/real.

Source

real.lisp.

Function: exhaustive-patterns-p (patterns env)

Are PATTERNS exhaustive?

Package

coalton-impl/analysis/pattern-exhaustiveness.

Source

pattern-exhaustiveness.lisp.

Function: exists? (dict2279 path-3224)

EXISTS? :: ∀ A. INTO A PATHNAME ⇒ (A → (RESULT FILEERROR BOOLEAN)) Returns whether a file or directory exists.

Package

coalton-library/file.

Source

file.lisp.

Function: exp (dict _0)

EXP :: ∀ A. EXPONENTIABLE A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: expand-macro (form source)

Expand the macro in FORM using MACROEXPAND-1, trying our best to preserve source information.

Package

coalton-impl/parser/macro.

Source

macro.lisp.

Function: expect (dict663 reason-36 container-37)

EXPECT :: ∀ A B. UNWRAPPABLE A ⇒ (STRING → (A B) → B)
Unwrap ‘container‘, signaling an error with the description ‘reason‘ on failure.

Package

coalton-library/classes.

Source

classes.lisp.

Function: expression-entry-point (node)
Package

coalton-impl/entry.

Source

entry.lisp.

Function: extend! (dict1934 dict1935 table-2551 iter-2552)

EXTEND! :: ∀ A B C. (HASH A) (INTOITERATOR C (TUPLE A B)) ⇒ ((HASHTABLE A B) → C → UNIT) Insert all of the key value pairs from ITER into TABLE, overwriting duplicate keys.

Package

coalton-library/hashtable.

Source

hashtable.lisp.

Function: extend! (dict1969 q-2589 iter-2590)

EXTEND! :: ∀ A B. INTOITERATOR B A ⇒ ((QUEUE A) → B → UNIT) Push every element in ‘iter‘ to the end of ‘q‘.

Package

coalton-library/queue.

Source

queue.lisp.

Function: extend! (dict1863 vec-2366 iter-2367)

EXTEND! :: ∀ A B. INTOITERATOR B A ⇒ ((VECTOR A) → B → UNIT) Push every element in ‘iter‘ to the end of ‘vec‘.

Package

coalton-library/vector.

Source

vector.lisp.

Function: fail (dict _0)

FAIL :: ∀ A B. MONADFAIL A ⇒ (STRING → (A B))

Package

coalton-library/classes.

Source

classes.lisp.

Function: features (_2262)

FEATURES :: (UNIT → (LIST STRING))
Returns a list of active features, from ‘cl:*features*‘.

Package

coalton-library/system.

Source

system.lisp.

Function: file-exists? (dict2282 path-3232)

FILE-EXISTS? :: ∀ A. INTO A PATHNAME ⇒ (A → (RESULT FILEERROR BOOLEAN)) Returns True if a pathname names a file that exists.

Package

coalton-library/file.

Source

file.lisp.

Function: file-pathname? (dict2278 path-3222)

FILE-PATHNAME? :: ∀ A. INTO A PATHNAME ⇒ (A → BOOLEAN) Returns True if a pathname has a file component.

Package

coalton-library/file.

Source

file.lisp.

Function: file-position (stream-3284)

FILE-POSITION :: ∀ A. ((FILESTREAM A) → (RESULT FILEERROR UFIX)) Finds the file-position of a file stream.

Package

coalton-library/file.

Source

file.lisp.

Function: fileerror (_0)

FILEERROR :: (STRING → FILEERROR)

Package

coalton-library/file.

Source

file.lisp.

Function: filter (f-2030 xs-2031)

FILTER :: ∀ A. ((A → BOOLEAN) → (LIST A) → (LIST A))
Returns a new list containing every element of XS that matches the predicate function F in the same order.

Package

coalton-library/list.

Source

list.lisp.

Function: filter! (keep?-1695 iter-1696)

FILTER! :: ∀ A. ((A → BOOLEAN) → (ITERATOR A) → (ITERATOR A))
Return an iterator over the elements from ITER for which KEEP?returns true.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: filter-map! (f-1700 iter-1701)

FILTER-MAP! :: ∀ A B. ((A → (OPTIONAL B)) → (ITERATOR A) → (ITERATOR B)) Map an iterator, retaining only the elements where F returns SOME.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: find (f-2026 xs-2027)

FIND :: ∀ A. ((A → BOOLEAN) → (LIST A) → (OPTIONAL A))
Returns the first element in a list matching the predicate function F.

Package

coalton-library/list.

Source

list.lisp.

Function: find! (this?-1748 iter-1749)

FIND! :: ∀ A. ((A → BOOLEAN) → (ITERATOR A) → (OPTIONAL A))
Return the first element of ITER for which THIS? returns ‘True‘, or ‘None‘ if no element matches.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: find-elem (dict1861 e-2351 v-2352)

FIND-ELEM :: ∀ A. EQ A ⇒ (A → (VECTOR A) → (OPTIONAL UFIX)) Find the index of element ‘e‘ in ‘v‘.

Package

coalton-library/vector.

Source

vector.lisp.

Function: find-map! (f-1751)

FIND-MAP! :: ∀ A B. ((A → (OPTIONAL B)) → (ITERATOR A) → (OPTIONAL B)) Return the first element of (map F ITER) for which F returns ‘Some‘.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: find-non-matching-value (pattern-matrix n env)

Finds an example of a non-matching value for PATTERN-MATRIX or, if PATTERN-MATRIX is exhaustive returns T.

Package

coalton-impl/analysis/pattern-exhaustiveness.

Source

pattern-exhaustiveness.lisp.

Function: find-package (name)

Look up a standard package by NAME, signalling a error if the package is not found.

Package

coalton-impl/util.

Source

utilities.lisp.

Function: find-symbol (name package)

Look up a symbol by NAME and PACKAGE, signalling a error if either package or the symbol is not found.

Package

coalton-impl/util.

Source

utilities.lisp.

Function: find-symbol? (name package)

Look up a symbol by NAME and PACKAGE. If the package is not found, return nil. Otherwise return the named symbol, interning it if necessary.

Package

coalton-impl/util.

Source

utilities.lisp.

Function: find-underapplied-values (binding)
Package

coalton-impl/analysis/underapplied-values.

Source

underapplied-values.lisp.

Function: find-unused-variables (binding)
Package

coalton-impl/analysis/unused-variables.

Source

unused-variables.lisp.

Function: findindex (f-2049 xs-2050)

FINDINDEX :: ∀ A. ((A → BOOLEAN) → (LIST A) → (OPTIONAL UFIX)) Returns the index of the first element matching the predicate function F.

Package

coalton-library/list.

Source

list.lisp.

Function: finite? (dict772 x-200)

FINITE? :: ∀ A. TRANSFINITE A ⇒ (A → BOOLEAN) Neither infinite or NaN.

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: fix (f-155 n-156)

FIX :: ∀ A B. (((A → B) → A → B) → A → B)
Compute the fixed point of a unary function. This is equivalent to the Y-combinator of the lambda calculus. This combinator allows recursion without specific assignment of names. For example, the factorial function can be written

(define fact
(fix
(fn (f n)
(if (== n 0)
1
(* n (f (- n 1)))))))

Package

coalton-library/functions.

Source

functions.lisp.

Function: flat-map! (func-1727 iter-1728)

FLAT-MAP! :: ∀ A B. ((A → (ITERATOR B)) → (ITERATOR A) → (ITERATOR B)) Flatten! wrapped around map.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: flatten (x-1852)

FLATTEN :: ∀ A. ((RESULT A A) → A)

Package

coalton-library/result.

Source

result.lisp.

Function: flatten! (iters-1721)

FLATTEN! :: ∀ A. ((ITERATOR (ITERATOR A)) → (ITERATOR A)) Yield all the elements from each of the ITERS in order.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: flip (f-160 x-161 y-162)

FLIP :: ∀ A B C. ((A → B → C) → B → A → C)
Returns a function that takes its arguments in reverse order.

Package

coalton-library/functions.

Source

functions.lisp.

Function: floor (dict _0)

FLOOR :: ∀ A. QUANTIZABLE A ⇒ (A → INTEGER)

Package

coalton-library/math/real.

Source

real.lisp.

Function: floor/ (a-1000 b-1001)

FLOOR/ :: (INTEGER → INTEGER → INTEGER)
Divide two integers and compute the floor of the quotient.

Package

coalton-library/math/real.

Source

real.lisp.

Function: flush (stream-3283)

FLUSH :: ∀ A B. ((FILESTREAM A) → (RESULT FILEERROR B)) Blocks until ‘stream‘ has been flushed. Calls ‘cl:finish-output‘.

Package

coalton-library/file.

Source

file.lisp.

Function: fold (dict _0 _1 _2)

FOLD :: ∀ A B C. FOLDABLE C ⇒ ((A → B → A) → A → (C B) → A) A left tail-recursive fold.

Package

coalton-library/classes.

Source

classes.lisp.

Function: fold! (func-1642 init-1643 iter-1644)

FOLD! :: ∀ A B. ((A → B → A) → A → (ITERATOR B) → A)
Tail recursive in-order fold. Common Lisp calls this operation ‘reduce‘.

If ITER is empty, returns INIT. Otherwise, calls (FUNC STATE ITEM) for each ITEM of ITER to produce a new STATE, using INIT as the first STATE.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: foldfree (dict2125 nat-2944 fr-2945)

FOLDFREE :: ∀ A B C. MONAD C ⇒ (((A ((FREE A) B)) → (C ((FREE A) B))) → ((FREE A) B) → (C B)) Given a natural transformation, induce a Monad homomorphism from a
free monad to a target monad.

Package

coalton-library/monad/free.

Source

monad/free.lisp.

Function: foldr (dict _0 _1 _2)

FOLDR :: ∀ A B C. FOLDABLE C ⇒ ((A → B → B) → B → (C A) → B) A right non-tail-recursive fold.

Package

coalton-library/classes.

Source

classes.lisp.

Function: for-each! (thunk-1744 iter-1745)

FOR-EACH! :: ∀ A. ((A → UNIT) → (ITERATOR A) → UNIT)
Call THUNK on each element of ITER in order for side effects. Discard values returned by THUNK.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: form-location (source cst)

Make a source location from a SOURCE and a CST node.

Package

coalton-impl/parser/base.

Source

base.lisp.

Function: free (_0)

FREE :: ∀ A B. ((A ((FREE A) B)) → ((FREE A) B))

Package

coalton-library/monad/free.

Source

monad/free.lisp.

Function: fresh-inst (ty-scheme)
Package

coalton-impl/typechecker/scheme.

Source

scheme.lisp.

Function: fresh-pred (pred)

Returns PRED with fresh type variables

Package

coalton-impl/typechecker/scheme.

Source

scheme.lisp.

Function: fresh-preds (preds)

Returns PRED with fresh type variables

Package

coalton-impl/typechecker/scheme.

Source

scheme.lisp.

Function: fresh-type-renamer (tyvar)

Create a new type variable with the same kind as ‘tyvar‘.

Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: from-some (str-1794 opt-1795)

FROM-SOME :: ∀ A. (STRING → (OPTIONAL A) → A)
Get the value of OPT, erroring with the provided string if it is None.

Package

coalton-library/optional.

Source

optional.lisp.

Function: fromint (dict _0)

FROMINT :: ∀ A. NUM A ⇒ (INTEGER → A)

Package

coalton-library/classes.

Source

classes.lisp.

Function: fst (g1366)

FST :: ∀ A B. ((TUPLE A B) → A) Get the first element of a tuple.

Package

coalton-library/tuple.

Source

tuple.lisp.

Function: function-declarations (node env)
Package

coalton-impl/codegen/codegen-expression.

Source

codegen-expression.lisp.

Reader: function-entry-arity (instance)
Package

coalton-impl/runtime/function-entry.

Source

function-entry.lisp.

Target Slot

arity.

Reader: function-entry-curried (instance)
Package

coalton-impl/runtime/function-entry.

Source

function-entry.lisp.

Target Slot

curried.

Reader: function-entry-function (instance)
Package

coalton-impl/runtime/function-entry.

Source

function-entry.lisp.

Target Slot

function.

Reader: function-env-entry-arity (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

arity.

Reader: function-env-entry-name (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

name.

Function: function-remove-arguments (ty num)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: function-type-arity (ty)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: function-type-from (ty)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: function-type-to (ty)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: fundep-entail (env expr-preds preds known-tyvars)
Package

coalton-impl/typechecker/context-reduction.

Source

context-reduction.lisp.

Reader: fundep-from (instance)
Package

coalton-impl/typechecker/fundeps.

Source

fundeps.lisp.

Target Slot

from.

Reader: fundep-left (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

left.

Reader: fundep-right (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

right.

Reader: fundep-to (instance)
Package

coalton-impl/typechecker/fundeps.

Source

fundeps.lisp.

Target Slot

to.

Function: gc (_2251)

GC :: (UNIT → UNIT)
Perform a full garbage collection.

Package

coalton-library/system.

Source

system.lisp.

Function: gcd (dict876 dict877 a-666 b-667)

GCD :: ∀ A. (REMAINDER A) (ORD A) ⇒ (A → A → A) The greatest common divisor of A and B.

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: general/ (dict _0 _1)

GENERAL/ :: ∀ A B. DIVIDABLE A B ⇒ (A → A → B)

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: get (dict1928 table-2537 key-2538)

GET :: ∀ A B. HASH A ⇒ ((HASHTABLE A B) → A → (OPTIONAL B)) Lookup KEY in TABLE

Package

coalton-library/hashtable.

Source

hashtable.lisp.

Function: get (seq-2989 idx-2990)

GET :: ∀ A. ((SEQ A) → UFIX → (OPTIONAL A))
Get the member of ‘seq‘ at index ‘idx‘, or ‘None‘ if ‘idx‘ is larger than ‘(size seq)‘

Package

coalton-library/seq.

Source

seq.lisp.

Function: get-bytes-consed (_2254)

GET-BYTES-CONSED :: (UNIT → UFIX)
Gets the number of bytes consed (only implemented for SBCL

Package

coalton-library/system.

Source

system.lisp.

Function: get-field (struct-entry name &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: get-real-time (_2253)

GET-REAL-TIME :: (UNIT → UFIX) Gets the real-time.

Package

coalton-library/system.

Source

system.lisp.

Function: get-run-time (_2252)

GET-RUN-TIME :: (UNIT → UFIX) Gets the run-time.

Package

coalton-library/system.

Source

system.lisp.

Function: get-table (environment-map)

Return the underlying hash table that provides storage for environment map ENVIRONMENT-MAP.

Package

coalton-impl/typechecker/map.

Source

map.lisp.

Function: get-top-level-binding (name environment)
Package

coalton-impl/global-lexical.

Source

global-lexical.lisp.

Function: get-value (environment-map key)

Return the value in environment map ENVIRONMENT-MAP associated with KEY.

Package

coalton-impl/typechecker/map.

Source

map.lisp.

Function: (setf get-value) (environment-map key)

Mutate environment map ENVIRONMENT-MAP to associate KEY with VALUE.

Package

coalton-impl/typechecker/map.

Source

map.lisp.

Function: getenv (var-3204)

GETENV :: (STRING → (OPTIONAL STRING))
Gets the value of the environmental variable ‘var‘, errors if ‘var‘ doesn’t exist.

Package

coalton-library/system.

Source

system.lisp.

Function: hash (dict _0)

HASH :: ∀ A. HASH A ⇒ (A → HASH)

Package

coalton-library/hash.

Source

hash.lisp.

Function: head (l-1989)

HEAD :: ∀ A. ((LIST A) → (OPTIONAL A)) Returns the first element of a list.

Package

coalton-library/list.

Source

list.lisp.

Function: head (v-2347)

HEAD :: ∀ A. ((VECTOR A) → (OPTIONAL A)) Return the first item of ‘v‘.

Package

coalton-library/vector.

Source

vector.lisp.

Function: head-unsafe (v-2348)

HEAD-UNSAFE :: ∀ A. ((VECTOR A) → A)
Return the first item of ‘v‘ without first checking if ‘v‘ is empty.

Package

coalton-library/vector.

Source

vector.lisp.

Function: help (location replace format-string &rest format-args)

Return a help note related to a source LOCATION.

REPLACE is a 1-argument function that accepts and returns a string to suggest an edit or fix.

Package

coalton-impl/source.

Source

source.lisp.

Function: help (source locatable replace format-string &rest format-args)

Make a help note using SOURCE and CST:SOURCE as location.

Package

coalton-impl/parser/base.

Source

base.lisp.

Function: hoist-definition (node package hoister)
Package

coalton-impl/codegen/hoister.

Source

hoister.lisp.

Function: hostname (_2259)

HOSTNAME :: (UNIT → STRING)
Returns the system’s hostname. This is a function because the hostname can be redefined.

Package

coalton-library/system.

Source

system.lisp.

Function: id (x-157)

ID :: ∀ A. (A → A)
A function that always returns its argument.

Package

coalton-library/functions.

Source

functions.lisp.

Reader: identifier-src-name (instance)
Package

coalton-impl/parser/base.

Source

base.lisp.

Target Slot

name.

Function: identifierp (x)
Package

coalton-impl/parser/base.

Source

base.lisp.

Function: ii (dict1023)

II :: ∀ A. COMPLEX A ⇒ (COMPLEX A)
The complex unit i. (The double ii represents a blackboard-bold i.)

Package

coalton-library/math/complex.

Source

complex.lisp.

Function: ilog (dict883 b-673 x-674)

ILOG :: ∀ A. INTEGRAL A ⇒ (A → A → A)
The floor of the logarithm with base B > 1 of X >= 1.

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: imag-part (dict _0)

IMAG-PART :: ∀ A. COMPLEX A ⇒ ((COMPLEX A) → A)

Package

coalton-library/math/complex.

Source

complex.lisp.

Reader: immutable-listmap-data (instance)
Package

coalton-impl/algorithm/immutable-listmap.

Source

immutable-listmap.lisp.

Target Slot

data.

Function: immutable-listmap-diff (m1 m2 &optional constructor)

Return a new SHADOW-LIST with elements in M1 but not M2.

Package

coalton-impl/algorithm/immutable-listmap.

Source

immutable-listmap.lisp.

Function: immutable-listmap-lookup (m key &key no-error)

Lookup key in M

Package

coalton-impl/algorithm/immutable-listmap.

Source

immutable-listmap.lisp.

Function: immutable-listmap-push (m key value &optional constructor)

Push value to the list at KEY in M

Package

coalton-impl/algorithm/immutable-listmap.

Source

immutable-listmap.lisp.

Function: immutable-listmap-replace (m key index value &optional constructor)

Replace value at INDEX with VALUE in the map at KEY in M.

Package

coalton-impl/algorithm/immutable-listmap.

Source

immutable-listmap.lisp.

Reader: immutable-map-data (instance)
Package

coalton-impl/algorithm/immutable-map.

Source

immutable-map.lisp.

Target Slot

data.

Function: immutable-map-diff (m1 m2 &optional constructor)

Returns the elements that appear in M1 but not M2

Package

coalton-impl/algorithm/immutable-map.

Source

immutable-map.lisp.

Function: immutable-map-keys (m)

Return a unique list containing the keys in M and its parents

Package

coalton-impl/algorithm/immutable-map.

Source

immutable-map.lisp.

Function: immutable-map-lookup (m key)

Lookup KEY in M

Package

coalton-impl/algorithm/immutable-map.

Source

immutable-map.lisp.

Function: immutable-map-remove (m key &optional constructor)
Package

coalton-impl/algorithm/immutable-map.

Source

immutable-map.lisp.

Function: immutable-map-set (m key value &optional constructor)

Set KEY to VALUE in M

Package

coalton-impl/algorithm/immutable-map.

Source

immutable-map.lisp.

Function: immutable-map-set-multiple (m items &optional constructor)

Create an IMMUTABLE-MAP from M with ITEMS set as bindings

Package

coalton-impl/algorithm/immutable-map.

Source

immutable-map.lisp.

Function: implementation (_2260)

IMPLEMENTATION :: (UNIT → STRING)
The lisp implementation (stored at compile time).

Package

coalton-library/system.

Source

system.lisp.

Function: increment! (dict1335 cel-1565)

INCREMENT! :: ∀ A. NUM A ⇒ ((CELL A) → A)
Add one to the contents of CEL, storing and returning the new value

Package

coalton-library/cell.

Source

cell.lisp.

Function: index (idx-2492 s-2493)

INDEX :: ∀ A. (UFIX → (SLICE A) → (OPTIONAL A)) Lookup the element at ‘index‘ in ‘s‘.

Package

coalton-library/slice.

Source

slice.lisp.

Function: index (i-2039 xs-2040)

INDEX :: ∀ A. (UFIX → (LIST A) → (OPTIONAL A)) Returns the Ith element of a list.

Package

coalton-library/list.

Source

list.lisp.

Function: index (index-2582 q-2583)

INDEX :: ∀ A. (UFIX → (QUEUE A) → (OPTIONAL A)) Return the ‘index‘th element of ‘q‘.

Package

coalton-library/queue.

Source

queue.lisp.

Function: index (index-2340 v-2341)

INDEX :: ∀ A. (UFIX → (VECTOR A) → (OPTIONAL A)) Return the ‘index‘th element of ‘v‘.

Package

coalton-library/vector.

Source

vector.lisp.

Function: index-of! (this?-1752 iter-1753)

INDEX-OF! :: ∀ A. ((A → BOOLEAN) → (ITERATOR A) → (OPTIONAL UFIX))
Return the zero-based index of the first element of ITER for which THIS? is ‘True‘, or ‘None‘ if no element matches.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: index-unsafe (idx-2494 s-2495)

INDEX-UNSAFE :: ∀ A. (UFIX → (SLICE A) → A)
Lookup the element at ‘index‘ in ‘s‘ without bounds checking.

Package

coalton-library/slice.

Source

slice.lisp.

Function: index-unsafe (index-2584 q-2585)

INDEX-UNSAFE :: ∀ A. (UFIX → (QUEUE A) → A)
Return the ‘index‘th element of ‘q‘ without checking if the element exists.

Package

coalton-library/queue.

Source

queue.lisp.

Function: index-unsafe (idx-2342 v-2343)

INDEX-UNSAFE :: ∀ A. (UFIX → (VECTOR A) → A)
Return the ‘idx‘th element of ‘v‘ without checking if the element exists.

Package

coalton-library/vector.

Source

vector.lisp.

Function: inexact/ (a-998 b-999)

INEXACT/ :: (INTEGER → INTEGER → DOUBLE-FLOAT)
Compute the quotient of integers as a double-precision float.

Note: This does *not* divide double-float arguments.

Package

coalton-library/math/real.

Source

real.lisp.

Function: infer-predicate-kinds (pred ksubs env)
Package

coalton-impl/typechecker/parse-type.

Source

parse-type.lisp.

Function: infinite? (dict _0)

INFINITE? :: ∀ A. TRANSFINITE A ⇒ (A → BOOLEAN)

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: infinity (dict)

INFINITY :: ∀ A. TRANSFINITE A ⇒ A

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: init (l-2000)

INIT :: ∀ A. ((LIST A) → (LIST A))
Returns every element except the last in a list.

Package

coalton-library/list.

Source

list.lisp.

Function: initialize-fundep-environment (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: input (_0)

INPUT :: (PATHNAME → STREAMOPTIONS) Constructor for opening an input stream

Package

coalton-library/file.

Source

file.lisp.

Function: insert (dict1773 e-2191 ls-2192)

INSERT :: ∀ A. ORD A ⇒ (A → (LIST A) → (LIST A))
Inserts an element into a list at the first place it is less than or equal to the next element.

Package

coalton-library/list.

Source

list.lisp.

Function: insert (dict2067 mp-2861 k-2862 v-2863)

INSERT :: ∀ A B. ORD A ⇒ ((MAP A B) → A → B → (OPTIONAL (MAP A B))) Associate K with V in MP. If MP already contains a mapping for K, return None.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Function: insert (dict2007 tre-2741 elt-2742)

INSERT :: ∀ A. ORD A ⇒ ((TREE A) → A → (OPTIONAL (TREE A)))
Construct a new Tree like TRE but containing ELT. If TRE already had an element ‘==‘ to ELT, return None.

Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Function: insert-or-replace (dict2070 mp-2877 k-2878 v-2879)

INSERT-OR-REPLACE :: ∀ A B. ORD A ⇒ ((MAP A B) → A → B → (MAP A B)) Update MP to associate K with V.

If MP already contains a mapping for K, replace it and discard the old value.

Like ‘replace-or-insert’, but prioritizing insertion as a use case.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Function: insert-or-replace (dict2010 tre-2777 elt-2778)

INSERT-OR-REPLACE :: ∀ A. ORD A ⇒ ((TREE A) → A → (TREE A))
Construct a new Tree like TRE but containing ELT.

If TRE already had an element ‘==‘ to ELT, remove it, replace it with ELT, and discard the removed value.

Like ‘replace-or-insert‘, but prioritizing insertion as a use case.

Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Function: insertby (cmp-2193 x-2194 ys-2195)

INSERTBY :: ∀ A. ((A → A → ORD) → A → (LIST A) → (LIST A)) Generic version of insert

Package

coalton-library/list.

Source

list.lisp.

Function: insertions (a-2211 l-2212)

INSERTIONS :: ∀ A. (A → (LIST A) → (LIST (LIST A)))
Produce a list of copies of L, each with A inserted at a possible position.

(insertions 0 (make-list 1 2))
=> ((0 1 2) (1 0 2) (1 2 0))

Package

coalton-library/list.

Source

list.lisp.

Reader: instance-environment-instances (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

instances.

Reader: instance-method-definition-body (instance)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Target Slot

body.

Reader: instance-method-definition-body (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

body.

Reader: instance-method-definition-name (instance)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Target Slot

name.

Reader: instance-method-definition-name (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

name.

Reader: instance-method-definition-params (instance)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Target Slot

params.

Reader: instance-method-definition-params (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

params.

Function: integral->num (dict860 dict861 n-648)

INTEGRAL->NUM :: ∀ A B. (INTEGRAL A) (NUM B) ⇒ (A → B) Converts any Integral N into any Num.

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: intercalate (xs-2209 xss-2210)

INTERCALATE :: ∀ A. ((LIST A) → (LIST (LIST A)) → (LIST A)) Intersperses XS into XSS and then concatenates the result.

Package

coalton-library/list.

Source

list.lisp.

Function: interleave! (left-1680 right-1681)

INTERLEAVE! :: ∀ A. ((ITERATOR A) → (ITERATOR A) → (ITERATOR A))
Return an interator of interleaved elements from LEFT and RIGHT which terminates as soon as both LEFT and RIGHT do.

If one iterator terminates before the other, elements from the longer iterator will be yielded without interleaving. (interleave empty ITER) is equivalent to (id ITER).

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: intersection (dict1766 xs-2085 ys-2086)

INTERSECTION :: ∀ A. EQ A ⇒ ((LIST A) → (LIST A) → (LIST A))
Returns elements which occur in both lists. Does not return duplicates and does not guarantee order.

Package

coalton-library/list.

Source

list.lisp.

Function: intersperse (e-2204 xs-2205)

INTERSPERSE :: ∀ A. (A → (LIST A) → (LIST A)) Returns a new list where every other element is E.

Package

coalton-library/list.

Source

list.lisp.

Function: into (dict _0)

INTO :: ∀ A B. INTO A B ⇒ (A → B)

Package

coalton-library/classes.

Source

classes.lisp.

Function: into-iter (dict _0)

INTO-ITER :: ∀ A B. INTOITERATOR A B ⇒ (A → (ITERATOR B))

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: isqrt (dict884 x-680)

ISQRT :: ∀ A. INTEGRAL A ⇒ (A → A) The floor of the square root of N > 0.

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: items! (q-2593)

ITEMS! :: ∀ A. ((QUEUE A) → (ITERATOR A))
Returns an interator over the items of ‘q‘, removing items as they are returned.

Package

coalton-library/queue.

Source

queue.lisp.

Function: iter-chunked (dict1901 size-2501 s-2502)

ITER-CHUNKED :: ∀ A B. SLICEABLE (A B) ⇒ (UFIX → (A B) → (ITERATOR (SLICE B)))
Divide ‘s‘ into a series of slices of length ‘size‘. Will return a final shorter slice if ‘s‘ does not divide evenly.

Package

coalton-library/slice.

Source

slice.lisp.

Function: iter-chunked-exact (dict1903 size-2507 s-2508)

ITER-CHUNKED-EXACT :: ∀ A B. SLICEABLE (A B) ⇒ (UFIX → (A B) → (ITERATOR (SLICE B)))
Divide ‘s‘ into a series of slices of length ‘size‘. Will skip trailing elements if ‘s‘ does not divide evenly.

Package

coalton-library/slice.

Source

slice.lisp.

Function: iter-sliding (dict1899 size-2496 s-2497)

ITER-SLIDING :: ∀ A B. SLICEABLE (A B) ⇒ (UFIX → (A B) → (ITERATOR (SLICE B))) Returns an iterator that yeilds a series of overlapping slices of length ‘size‘.

Package

coalton-library/slice.

Source

slice.lisp.

Function: keys (table-2547)

KEYS :: ∀ A B. ((HASHTABLE A B) → (ITERATOR A)) Returns the keys in TABLE as a list

Package

coalton-library/hashtable.

Source

hashtable.lisp.

Function: keys (mp-2886)

KEYS :: ∀ A B. ((MAP A B) → (ITERATOR A))
Iterate over the keys in MP, sorted least-to-greatest.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Reader: keyword-src-name (instance)
Package

coalton-impl/parser/base.

Source

base.lisp.

Target Slot

name.

Reader: kfun-from (instance)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Target Slot

from.

Function: kfun-p (object)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Reader: kfun-to (instance)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Target Slot

to.

Function: kind-arity (kind)

The arity of the simple kind KIND (number of type arguments)

Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Function: kind-monomorphize-subs (kvars ksubs)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Function: kind-of (symbol)

Lookup the kind of type SYMBOL in the global environment

Package

coalton.

Source

debug.lisp.

Function: kind-return-type (kind)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Function: kind-variables (x)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Function: kstar-p (object)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Reader: ksubstitution-from (instance)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Target Slot

from.

Reader: ksubstitution-to (instance)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Target Slot

to.

Function: kunify (kind1 kind2 subs)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Reader: kyvar-id (instance)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Target Slot

id.

Function: last (l-1997)

LAST :: ∀ A. ((LIST A) → (OPTIONAL A)) Returns the last element of a list.

Package

coalton-library/list.

Source

list.lisp.

Function: last (v-2349)

LAST :: ∀ A. ((VECTOR A) → (OPTIONAL A)) Return the last element of ‘v‘.

Package

coalton-library/vector.

Source

vector.lisp.

Function: last! (iter-1732)

LAST! :: ∀ A. ((ITERATOR A) → (OPTIONAL A))
Yields the last element of ITER, completely consuming it.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: last-unsafe (v-2350)

LAST-UNSAFE :: ∀ A. ((VECTOR A) → A)
Return the last element of ‘v‘ without first checking if ‘v‘ is empty.

Package

coalton-library/vector.

Source

vector.lisp.

Function: lcm (dict878 dict879 a-668 b-669)

LCM :: ∀ A. (REMAINDER A) (ORD A) ⇒ (A → A → A) The least common multiple of A and B.

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: length (s-2488)

LENGTH :: ∀ A. ((SLICE A) → UFIX) Returns the length of ‘s‘.

Package

coalton-library/slice.

Source

slice.lisp.

Function: length (l-2037)

LENGTH :: ∀ A. ((LIST A) → UFIX) Returns the length of a list.

Package

coalton-library/list.

Source

list.lisp.

Function: length (dict _0)

LENGTH :: ∀ A B. RANDOMACCESS B A ⇒ (B → UFIX)

Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Function: length (str-2430)

LENGTH :: (STRING → UFIX) The length of a string STR.

Package

coalton-library/string.

Source

string.lisp.

Function: length (q-2572)

LENGTH :: ∀ A. ((QUEUE A) → UFIX) Returns the length of ‘q‘.

Package

coalton-library/queue.

Source

queue.lisp.

Function: length (v-2327)

LENGTH :: ∀ A. ((VECTOR A) → UFIX) Returns the length of ‘v‘.

Package

coalton-library/vector.

Source

vector.lisp.

Function: length (v-1923)

LENGTH :: ∀ A. ((LISPARRAY A) → UFIX) Return the length of the ‘LispArray‘ ‘v‘.

Package

coalton-library/lisparray.

Source

lisparray.lisp.

Function: lifta2 (dict _0 _1 _2)

LIFTA2 :: ∀ A B C D. APPLICATIVE D ⇒ ((A → B → C) → (D A) → (D B) → (D C))

Package

coalton-library/classes.

Source

classes.lisp.

Function: liftf (dict2124 f-2943)

LIFTF :: ∀ A B. FUNCTOR A ⇒ ((A B) → ((FREE A) B)) Lift a Functor into the Free Monad.

Package

coalton-library/monad/free.

Source

monad/free.lisp.

Function: lisp-version (_2261)

LISP-VERSION :: (UNIT → STRING)
The lisp implementation version (stored at compile time).

Package

coalton-library/system.

Source

system.lisp.

Function: literal-equal (x y)

Are coalton literal values equal?

Package

coalton-impl/util.

Source

utilities.lisp.

Function: ln (dict _0)

LN :: ∀ A. EXPONENTIABLE A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Reader: location-source (instance)
Package

coalton-impl/source.

Source

source.lisp.

Target Slot

source.

Reader: location-span (instance)
Package

coalton-impl/source.

Source

source.lisp.

Target Slot

span.

Function: location< (a b)

If locations A and B appear within the same source, return T if A’s span starts before B’s. If locations appear in different sources, compare the sources by name.

Package

coalton-impl/source.

Source

source.lisp.

Function: log (dict _0 _1)

LOG :: ∀ A. EXPONENTIABLE A ⇒ (A → A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: lookup (dict1768 e-2093 xs-2094)

LOOKUP :: ∀ A B. EQ A ⇒ (A → (LIST (TUPLE A B)) → (OPTIONAL B))
Returns the value of the first (key, value) tuple in XS where the key matches E.

Package

coalton-library/list.

Source

list.lisp.

Function: lookup (dict2066 mp-2858 k-2859)

LOOKUP :: ∀ A B. ORD A ⇒ ((MAP A B) → A → (OPTIONAL B))
Retrieve the value associated with K in MP, or None if MP does not contain K.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Function: lookup (dict2006 haystack-2657 needle-2658)

LOOKUP :: ∀ A. ORD A ⇒ ((TREE A) → A → (OPTIONAL A)) If HAYSTACK contains an element ‘==‘ to NEEDLE, return it.

Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Function: lookup-class (env symbol &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-class (name)

Lookup a given class

Package

coalton.

Source

debug.lisp.

Function: lookup-class-instance (env pred &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-class-instances (env class &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-code (env name &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-code (name)

Lookup the compiled code of a given definition

Package

coalton.

Source

debug.lisp.

Function: lookup-constructor (env symbol &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-function (env symbol &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-function-source-parameter-names (env function-name)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-fundep-environment (env class &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-fundeps (name)

Lookup the fundep structure for a given class

Package

coalton.

Source

debug.lisp.

Function: lookup-instance-by-codegen-sym (env codegen-sym &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-method-inline (env method instance &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-name (env symbol &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-specialization (env from to &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-specialization-by-type (env from ty &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-struct (env symbol &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-type (env symbol &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lookup-value-type (env symbol &key no-error)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: lowercase? (c-2416)

LOWERCASE? :: (CHAR → BOOLEAN) Is C a lowercase character?

Package

coalton-library/char.

Source

char.lisp.

Function: lsh (dict864 dict865 x-651 n-652)

LSH :: ∀ A B. (INTEGRAL B) (BITS A) ⇒ (A → B → A) Left shift X by N

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: magnitude (dict1066 dict1067 z-1306)

MAGNITUDE :: ∀ A. (RADICAL A) (COMPLEX A) ⇒ ((COMPLEX A) → A) For ‘z = x + yi‘,

(magnitude z) = (sqrt (+ (^ x 2) (^ y 2)))

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: make (dict _0 _1)

MAKE :: ∀ A B. RANDOMACCESS B A ⇒ (UFIX → A → B)

Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Function: make (dict1747 n-1916 x-1917)

MAKE :: ∀ A. RUNTIMEREPR A ⇒ (UFIX → A → (LISPARRAY A)) Make a new ‘LispArray‘ of length ‘n‘ initialized to ‘x‘.

If the type of ‘x‘ represents a specialized array

Package

coalton-library/lisparray.

Source

lisparray.lisp.

Function: make-accessor (&key from to field location)
Package

coalton-impl/typechecker/accessor.

Source

accessor.lisp.

Function: make-ast-substitution (&key from to)
Package

coalton-impl/codegen/ast-substitutions.

Source

ast-substitutions.lisp.

Function: make-attribute-monomorphize (&key location)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-attribute-repr (&key location type arg)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-candidate-manager (&key map stack)
Package

coalton-impl/codegen/monomorphize.

Source

monomorphize.lisp.

Function: make-constructor (&key name fields docstring location)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-constructor-entry (&key name arity constructs classname docstring compressed-repr)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: make-cursor (value source message)

Make a cursor that points at VALUE.

Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Function: make-custom-hash-table (size hash-function test-function)
Package

coalton/hashtable-shim.

Source

impl-sbcl.lisp.

Function: make-default-environment ()
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: make-defpackage (package)

Generate a Lisp defpackage form from a Caolton toplevel-package structure.

Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-function-env-entry (&key name arity)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: make-function-table (env)
Package

coalton-impl/codegen/optimizer.

Source

optimizer.lisp.

Function: make-function-type (from to)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: make-function-type* (args to)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: make-fundep (&key from to)
Package

coalton-impl/typechecker/fundeps.

Source

fundeps.lisp.

Function: make-fundep (&key left right location)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-hoister (&key hoist-points top-hoist-point)
Package

coalton-impl/codegen/hoister.

Source

hoister.lisp.

Function: make-identifier-src (&key name location)
Package

coalton-impl/parser/base.

Source

base.lisp.

Function: make-immutable-listmap (&key data)
Package

coalton-impl/algorithm/immutable-listmap.

Source

immutable-listmap.lisp.

Function: make-immutable-map (&key data)
Package

coalton-impl/algorithm/immutable-map.

Source

immutable-map.lisp.

Function: make-instance-method-definition (&key location name params body)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Function: make-instance-method-definition (&key name params body location)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-keyword-src (&key name location)
Package

coalton-impl/parser/base.

Source

base.lisp.

Function: make-kfun (&key from to)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Function: make-kind-function* (from to)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Function: make-ksubstitution (&key from to)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Function: make-kvariable ()
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Function: make-kyvar (&key id)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Function: make-location (source span)

Make a source location structure from a SOURCE and a SPAN.

Package

coalton-impl/source.

Source

source.lisp.

Function: make-map (&key initial-contents test)

Construct an environment map containing the keys and values of the association list ALIST.

Environment maps have a readable representation as an alist.
Hash table is initialized using TEST.

Package

coalton-impl/typechecker/map.

Source

map.lisp.

Function: make-match-branch (&key pattern body)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-method-definition (&key location docstring name type)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-name-entry (&key name type docstring location)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: make-node-abstraction (&key type vars subexpr)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-abstraction (&key type location params body)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-abstraction (&key location params body)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-accessor (&key type location name)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-accessor (&key location name)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-and (&key type location nodes)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-and (&key location nodes)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-application (&key type rator rands)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-application (&key type location rator rands)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-application (&key location rator rands)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-bind (&key type name expr body)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-bind (&key pattern expr location)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-bind (&key pattern expr location)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-block (&key type name body)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-body (&key nodes last-node)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-body (&key nodes last-node)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-break (&key type label)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-break (&key type location label)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-break (&key location label)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-cond (&key type location clauses)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-cond (&key location clauses)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-cond-clause (&key expr body location)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-cond-clause (&key expr body location)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-continue (&key type label)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-continue (&key type location label)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-continue (&key location label)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-direct-application (&key type rator-type rator rands)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-do (&key type location nodes last-node)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-do (&key location nodes last-node)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-do-bind (&key pattern expr location)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-do-bind (&key pattern expr location)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-dynamic-extent (&key type name node body)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-field (&key type name dict)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-for (&key type location label pattern expr body)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-for (&key location label pattern expr body)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-if (&key type location expr then else)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-if (&key location expr then else)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-integer-literal (&key type location value)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-let (&key type bindings subexpr)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-let (&key type location bindings body)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-let (&key location bindings declares body)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-let-binding (&key name value location)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-let-binding (&key name value location)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-let-declare (&key name type location)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-lisp (&key type vars form)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-lisp (&key type location vars var-names body)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-lisp (&key location type vars var-names body)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-literal (&key type value)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-literal (&key type location value)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-literal (&key location value)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-loop (&key type label body)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-loop (&key type location label body)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-loop (&key location label body)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-match (&key type expr branches)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-match (&key type location expr branches)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-match (&key location expr branches)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-match-branch (&key pattern body location)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-match-branch (&key pattern body location)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-or (&key type location nodes)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-or (&key location nodes)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-progn (&key type location body)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-progn (&key location body)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-return (&key type location expr)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-return (&key location expr)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-return-from (&key type name expr)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-seq (&key type nodes)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-the (&key location type expr)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-unless (&key type location expr body)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-unless (&key location expr body)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-variable (&key type value)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-variable (&key type location name)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-variable (&key location name)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-when (&key type location expr body)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-when (&key location expr body)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-while (&key type label expr body)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-while (&key type location label expr body)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-while (&key location label expr body)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-node-while-let (&key type label pattern expr body)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: make-node-while-let (&key type location label pattern expr body)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: make-node-while-let (&key location label pattern expr body)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: make-partial-type-env (&key env ty-table class-table)
Package

coalton-impl/typechecker/partial-type-env.

Source

partial-type-env.lisp.

Function: make-pattern-constructor (&key type location name patterns)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Function: make-pattern-constructor (&key type name patterns)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Function: make-pattern-constructor (&key location name patterns)
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Function: make-pattern-literal (&key type location value)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Function: make-pattern-literal (&key type value)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Function: make-pattern-literal (&key location value)
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Function: make-pattern-var (&key type location name orig-name)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Function: make-pattern-var (&key type name)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Function: make-pattern-var (&key location name orig-name)
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Function: make-pattern-wildcard (&key type location)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Function: make-pattern-wildcard (&key type)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Function: make-pattern-wildcard (&key location)
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Function: make-program (&key package types structs declares defines classes instances lisp-forms specializations)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-qualified-ty (&key predicates type location)
Package

coalton-impl/parser/types.

Source

types.lisp.

Function: make-qualified-ty (&key predicates type)
Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Function: make-source-error-context (&key message)
Package

source-error/error.

Source

error.lisp.

Function: make-source-error-help (&key span replacement message)
Package

source-error/error.

Source

error.lisp.

Function: make-source-error-note (&key type span message)
Package

source-error/error.

Source

error.lisp.

Function: make-source-file (file &key name offset)

Make a source that supplies error context from a FILE.

OFFSET indicates starting character offset within the file.

Package

coalton-impl/source.

Source

source.lisp.

Function: make-source-string (string &key name)

Make a source that supplies error context from a string.

Package

coalton-impl/source.

Source

source.lisp.

Function: make-specialization-entry (&key from to to-ty)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: make-struct-entry (&key name fields docstring)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: make-struct-field (&key name type index docstring)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: make-struct-field (&key location docstring name type)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-struct-or-class-field (&key name type)
Package

coalton-impl/codegen/struct-or-class.

Source

struct-or-class.lisp.

Function: make-substitution (&key from to)
Package

coalton-impl/typechecker/substitutions.

Source

substitutions.lisp.

Function: make-tapp (&key location from to)
Package

coalton-impl/parser/types.

Source

types.lisp.

Function: make-tapp (&key from to)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: make-tc-env (&key env ty-table)
Package

coalton-impl/typechecker/tc-env.

Source

tc-env.lisp.

Function: make-tgen (&key id)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: make-toplevel-declare (&key name type location monomorphize)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-toplevel-define (&key location name params body)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Function: make-toplevel-define (&key location docstring name params orig-params body monomorphize)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-toplevel-define-class (&key location docstring name vars preds fundeps methods head-location)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-toplevel-define-instance (&key location context pred methods head-location)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Function: make-toplevel-define-instance (&key location docstring context pred methods head-location compiler-generated)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-toplevel-define-struct (&key location docstring name vars fields repr head-location)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-toplevel-define-type (&key location docstring name vars ctors repr head-location)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-toplevel-lisp-form (&key body location)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-toplevel-specialize (&key from to type location)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: make-translation-unit (&key types definitions instances lisp-forms classes package)
Package

coalton-impl/typechecker/translation-unit.

Source

translation-unit.lisp.

Function: make-traverse-block (&key variable accessor literal integer-literal bind body abstraction let-binding let lisp match-branch match progn return application or and if when unless cond-clause cond while while-let for loop break continue do-bind do)
Package

coalton-impl/typechecker/traverse.

Source

traverse.lisp.

Function: make-traverse-let-action-skipping-cons-bindings ()

This is an action to ensure that let-bindings to fully saturated applications of ‘’coalton:Cons‘ are untouched by a traversal. The current ‘codegen:codegen-let‘ code for recursive data requires direct applications of a constructor, so transformations like inlining may produce a form which the codegen is unable to recognize. Overriding the default ‘:traverse node-let‘ action with this action will ensure that let-bindings to saturated applications of ‘’coalton:Cons‘ will always be returned with the syntactic form of a direct application with rator ‘’coalton:Cons‘.

Package

coalton-impl/codegen/traverse.

Source

traverse.lisp.

Function: make-ty-class (&key name predicate superclasses class-variables class-variable-map fundeps unqualified-methods codegen-sym superclass-dict superclass-map docstring location)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: make-ty-class-instance (&key constraints predicate codegen-sym method-codegen-syms docstring)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: make-ty-class-method (&key name type docstring)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: make-ty-predicate (&key class types location)
Package

coalton-impl/parser/types.

Source

types.lisp.

Function: make-ty-predicate (&key class types location)
Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Function: make-ty-scheme (&key kinds type)
Package

coalton-impl/typechecker/scheme.

Source

scheme.lisp.

Function: make-tycon (&key location name)
Package

coalton-impl/parser/types.

Source

types.lisp.

Function: make-tycon (&key name kind)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: make-type-definition (&key name type runtime-type explicit-repr enum-repr newtype constructors constructor-types constructor-args docstring location)
Package

coalton-impl/typechecker/define-type.

Source

define-type.lisp.

Function: make-type-entry (&key name runtime-type type tyvars constructors explicit-repr enum-repr newtype docstring location)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: make-tyvar (&key location name)
Package

coalton-impl/parser/types.

Source

types.lisp.

Function: make-tyvar (&key id kind)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: make-uninitialized (dict1748 n-1919)

MAKE-UNINITIALIZED :: ∀ A. RUNTIMEREPR A ⇒ (UFIX → (LISPARRAY A))
Make a new LispArray of length ‘n‘ that can store elements of type ‘:t‘.

WARNING: The consequences are undefined if an uninitialized element is read before being set.

Package

coalton-library/lisparray.

Source

lisparray.lisp.

Function: make-variable (&optional kind)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: map (dict _0 _1)

MAP :: ∀ A B C. FUNCTOR C ⇒ ((A → B) → (C A) → (C B))

Package

coalton-library/classes.

Source

classes.lisp.

Function: map-err (f-1848 x-1849)

MAP-ERR :: ∀ A B C. ((A → B) → (RESULT A C) → (RESULT B C)) Map over the ERR case

Package

coalton-library/result.

Source

result.lisp.

Function: map-fst (dict661 f-30 b-31)

MAP-FST :: ∀ A B C D. BIFUNCTOR C ⇒ ((A → B) → (C A D) → (C B D)) Map over the first argument of a ‘Bifunctor‘.

Package

coalton-library/classes.

Source

classes.lisp.

Function: map-snd (dict662 f-33 b-34)

MAP-SND :: ∀ A B C D. BIFUNCTOR C ⇒ ((A → B) → (C D A) → (C D B)) Map over the second argument of a ‘Bifunctor‘.

Package

coalton-library/classes.

Source

classes.lisp.

Function: map-while! (f-1705 iter-1706)

MAP-WHILE! :: ∀ A B. ((A → (OPTIONAL B)) → (ITERATOR A) → (ITERATOR B)) Map an iterator, stopping early if F returns NONE.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: maphash-values-new (function table)

Map across the values of a hash-table. Returns a new hash-table with unchanged keys.

Package

coalton-impl/util.

Source

utilities.lisp.

Reader: match-branch-body (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

body.

Reader: match-branch-pattern (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

pattern.

Function: match-list (list1 list2)

Returns true if all of the types in LIST2 match the types in LIST1 pairwise

Package

coalton-impl/typechecker/unify.

Source

unify.lisp.

Function: max (dict653 x-23 y-24)

MAX :: ∀ A. ORD A ⇒ (A → A → A)
Returns the greater element of ‘x‘ and ‘y‘.

Package

coalton-library/classes.

Source

classes.lisp.

Function: max! (dict1566 iter-1761)

MAX! :: ∀ A. ORD A ⇒ ((ITERATOR A) → (OPTIONAL A))
Return the most-positive element of ITER, or ‘None‘ if ITER is empty.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: maxbound (dict)

MAXBOUND :: ∀ A. BOUNDED A ⇒ A

Package

coalton-library/math/bounded.

Source

bounded.lisp.

Function: maximize-by! (dict1570 f-1769 iter-1770)

MAXIMIZE-BY! :: ∀ A B. ORD B ⇒ ((A → B) → (ITERATOR A) → (OPTIONAL A))
For a function F, which maps the iterator, return the element of ITER where (F ELT) is the most-positive.

Return ‘None’ if ITER is empty.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: maximum (dict1776 l-2247)

MAXIMUM :: ∀ A. ORD A ⇒ ((LIST A) → (OPTIONAL A)) Returns a greatest element of a list, or None.

Package

coalton-library/list.

Source

list.lisp.

Function: maybe-read-form (stream source &optional eclector-client)

Read the next form or return if there is no next form.

Returns (VALUES FORM PRESENTP EOFP)

Package

coalton-impl/parser/reader.

Source

reader.lisp.

Function: mconcat (dict657 dict658)

MCONCAT :: ∀ A B. (FOLDABLE A) (MONOID B) ⇒ ((A B) → B) Fold a container of monoids into a single element.

Package

coalton-library/classes.

Source

classes.lisp.

Function: member (dict1764 e-2074 xs-2075)

MEMBER :: ∀ A. EQ A ⇒ (A → (LIST A) → BOOLEAN) Returns true if any element of XS is equal to E.

Package

coalton-library/list.

Source

list.lisp.

Function: mempty (dict)

MEMPTY :: ∀ A. MONOID A ⇒ A

Package

coalton-library/classes.

Source

classes.lisp.

Function: merge (dict2283 dict2284 path1-3235 path2-3236)

MERGE :: ∀ A B. (INTO A PATHNAME) (INTO B PATHNAME) ⇒ (A → B → PATHNAME)
Merges two pathnames together. The directory pathname should be the first argument.

Package

coalton-library/file.

Source

file.lisp.

Function: merge (dict2076 a-2908 b-2909)

MERGE :: ∀ A B. ORD A ⇒ ((MAP A B) → (MAP A B) → (MAP A B))
Construct a Tree containing all the mappings of both A and B.

If A and B contain mappings X -> A’ and X -> B’, it is undefined whether the result maps X to A’ or B’.

Because of the possibility that A and B will map the same X to different A’ and B’, this is not an associative operation, and therefore Map cannot implement Monoid.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Function: merge (dict2015 a-2834 b-2835)

MERGE :: ∀ A. ORD A ⇒ ((TREE A) → (TREE A) → (TREE A))
Construct a Tree containing all the elements of both A and B.

If A and B contain elements A’ and B’ respectively where (== A’ B’), the result will contain either A’ or B’. Which one is chosen for the result is undefined.

Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Function: merge-substitution-lists (s1 s2)

Merge substitution lists S1 and S2 together, erroring on disagreeing entries.

Package

coalton-impl/typechecker/substitutions.

Source

substitutions.lisp.

Reader: method-definition-name (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

name.

Reader: method-definition-type (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

type.

Function: min (dict654 x-25 y-26)

MIN :: ∀ A. ORD A ⇒ (A → A → A) Returns the lesser element of ‘x‘ and ‘y‘.

Package

coalton-library/classes.

Source

classes.lisp.

Function: min! (dict1567 iter-1762)

MIN! :: ∀ A. ORD A ⇒ ((ITERATOR A) → (OPTIONAL A))
Return the most-negative element of ITER, or ‘None‘ if ITER is empty.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: minbound (dict)

MINBOUND :: ∀ A. BOUNDED A ⇒ A

Package

coalton-library/math/bounded.

Source

bounded.lisp.

Function: minimize-by! (dict1571 f-1771 iter-1772)

MINIMIZE-BY! :: ∀ A B. ORD B ⇒ ((A → B) → (ITERATOR A) → (OPTIONAL A))
For a function F, which maps the iterator, return the element of ITER where (F ELT) is the most-negative.

Return ‘None’ if ITER is empty.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: minimum (dict1777 l-2248)

MINIMUM :: ∀ A. ORD A ⇒ ((LIST A) → (OPTIONAL A)) Returns a least element of a list, or None.

Package

coalton-library/list.

Source

list.lisp.

Function: mkfraction (a-628 b-629)

MKFRACTION :: (INTEGER → INTEGER → FRACTION)

Package

coalton-library/math/fraction.

Source

fraction.lisp.

Function: mod (dict _0 _1)

MOD :: ∀ A. REMAINDER A ⇒ (A → A → A)

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: monomorphize (name manager package resolve-table optimize-node env)
Package

coalton-impl/codegen/monomorphize.

Source

monomorphize.lisp.

Function: msum (dict744 dict745 xs-186)

MSUM :: ∀ A B. (MONOID B) (FOLDABLE A) ⇒ ((A B) → B) Fold over a list using ‘<>‘.

Package

coalton-library/functions.

Source

functions.lisp.

Reader: name-entry-name (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

name.

Reader: name-entry-type (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

type.

Function: nan (dict)

NAN :: ∀ A. TRANSFINITE A ⇒ A

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: nan? (dict _0)

NAN? :: ∀ A. TRANSFINITE A ⇒ (A → BOOLEAN)

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: negate (dict775 x-201)

NEGATE :: ∀ A. NUM A ⇒ (A → A)
The negation, or additive inverse, of ‘x‘.

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: negative-infinity (dict773 dict774)

NEGATIVE-INFINITY :: ∀ A. (TRANSFINITE A) (NUM A) ⇒ A

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: negative? (dict785 dict786 x-209)

NEGATIVE? :: ∀ A. (NUM A) (ORD A) ⇒ (A → BOOLEAN) Is ‘x‘ negative?

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: new (dict1898 start-2484 len-2485 v-2486)

NEW :: ∀ A B. SLICEABLE (A B) ⇒ (UFIX → UFIX → (A B) → (SLICE B))
Create a new slice backed by ‘v‘ starting at index ‘start‘ and continuing for ‘len‘ elements.

Package

coalton-library/slice.

Source

slice.lisp.

Function: new (dict1926 _1927)

NEW :: ∀ A B. HASH A ⇒ (UNIT → (HASHTABLE A B)) Create a new empty hashtable

Package

coalton-library/hashtable.

Source

hashtable.lisp.

Function: new (dict2179 _2180)

NEW :: ∀ A. RUNTIMEREPR A ⇒ (UNIT → (SEQ A)) Create a new empty ‘Seq‘.

Package

coalton-library/seq.

Source

seq.lisp.

Function: new (_1968)

NEW :: ∀ A. (UNIT → (QUEUE A)) Create a new empty queue.

Package

coalton-library/queue.

Source

queue.lisp.

Function: new (f-1634)

NEW :: ∀ A. ((UNIT → (OPTIONAL A)) → (ITERATOR A)) Create a new iterator from a function that yields elements.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: new (_1860)

NEW :: ∀ A. (UNIT → (VECTOR A)) Create a new empty vector

Package

coalton-library/vector.

Source

vector.lisp.

Function: new (data-1550)

NEW :: ∀ A. (A → (CELL A)) Create a new mutable cell

Package

coalton-library/cell.

Source

cell.lisp.

Function: next (cursor &key pred unwrap)

Return the next value from a nonempty cursor.

If PRED is non-NIL, only consume a value if it is true.
If UNWRAP is NIL, return the CST node, otherwise, return the raw value.

Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Function: next! (iter-1640)

NEXT! :: ∀ A. ((ITERATOR A) → (OPTIONAL A))
Advance ITER, returning its next yielded value, or ‘None‘ if the iterator is exhausted.
Behavior is undefined if two threads concurrently call ‘next!‘ on the same iterator without a lock. Note that most of the operators defined on iterators call ‘next!‘ internally, or create new iterators which will call ‘next!‘ on their inputs.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: next-pprint-variable ()

Get the next type variable symbol interned in the keyword package

Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: next-pprint-variable-as-tvar (&optional kind)

Get the next type variable as a TVAR

Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: next-symbol (cursor missing not-symbol)

Return the next symbol in cursor.
If the cursor is empty, signal an error with MISSING as the message.
If the next element is not a symbol, signal an error with NOT-SYMBOL as the message.

Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Reader: node-abstraction-body (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-abstraction-body (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

body.

Function: node-abstraction-p (object)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: node-abstraction-p (object)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Function: node-abstraction-p (object)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Reader: node-abstraction-params (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

params.

Reader: node-abstraction-params (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

params.

Reader: node-abstraction-subexpr (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

subexpr.

Reader: node-abstraction-vars (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

vars.

Reader: node-accessor-name (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

name.

Reader: node-accessor-name (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

name.

Reader: node-and-nodes (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

nodes.

Reader: node-and-nodes (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

nodes.

Function: node-application-p (object)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Reader: node-application-rands (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

rands.

Reader: node-application-rands (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

rands.

Reader: node-application-rands (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

rands.

Reader: node-application-rator (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

rator.

Reader: node-application-rator (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

rator.

Reader: node-application-rator (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

rator.

Reader: node-bind-body (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

body.

Reader: node-bind-expr (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

expr.

Reader: node-bind-expr (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-bind-expr (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-bind-name (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

name.

Reader: node-bind-pattern (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

pattern.

Reader: node-bind-pattern (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

pattern.

Function: node-binding-sccs (bindings)

Returns a list of SCCs ordered from least to most depended on.

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Reader: node-block-body (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

body.

Reader: node-block-name (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

name.

Reader: node-body-last-node (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

last-node.

Reader: node-body-last-node (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

last-node.

Reader: node-body-nodes (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

nodes.

Reader: node-body-nodes (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

nodes.

Reader: node-break-label (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

label.

Reader: node-break-label (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

label.

Reader: node-break-label (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

label.

Reader: node-cond-clause-body (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-cond-clause-body (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-cond-clause-expr (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-cond-clause-expr (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-cond-clauses (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

clauses.

Reader: node-cond-clauses (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

clauses.

Reader: node-continue-label (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

label.

Reader: node-continue-label (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

label.

Reader: node-continue-label (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

label.

Function: node-direct-application-p (object)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Reader: node-direct-application-rands (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

rands.

Reader: node-direct-application-rator (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

rator.

Reader: node-direct-application-rator-type (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

rator-type.

Reader: node-do-bind-expr (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-do-bind-expr (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-do-bind-pattern (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

pattern.

Reader: node-do-bind-pattern (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

pattern.

Reader: node-do-last-node (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

last-node.

Reader: node-do-last-node (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

last-node.

Reader: node-do-nodes (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

nodes.

Reader: node-do-nodes (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

nodes.

Reader: node-dynamic-extent-body (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

body.

Reader: node-dynamic-extent-name (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

name.

Reader: node-dynamic-extent-node (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

node.

Reader: node-field-dict (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

dict.

Reader: node-field-name (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

name.

Function: node-field-p (object)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Reader: node-for-body (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-for-body (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-for-expr (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-for-expr (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-for-label (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

label.

Reader: node-for-label (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

label.

Reader: node-for-pattern (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

pattern.

Reader: node-for-pattern (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

pattern.

Function: node-free-p (node bound-variables)

Return true if every variable in ‘node‘ is free with respect to ‘bound-variables‘

Package

coalton-impl/codegen/ast.

Source

transformations.lisp.

Reader: node-if-else (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

else.

Reader: node-if-else (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

else.

Reader: node-if-expr (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-if-expr (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-if-then (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

then.

Reader: node-if-then (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

then.

Reader: node-integer-literal-value (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

value.

Reader: node-integer-literal-value (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

value.

Reader: node-let-binding-name (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

name.

Reader: node-let-binding-name (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

name.

Reader: node-let-binding-value (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

value.

Reader: node-let-binding-value (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

value.

Reader: node-let-bindings (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

bindings.

Reader: node-let-bindings (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

bindings.

Reader: node-let-bindings (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

bindings.

Reader: node-let-body (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-let-body (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-let-declare-name (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

name.

Reader: node-let-declare-type (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

type.

Reader: node-let-declares (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

declares.

Function: node-let-p (object)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Reader: node-let-subexpr (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

subexpr.

Reader: node-lisp-body (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-lisp-body (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-lisp-form (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

form.

Function: node-lisp-p (object)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: node-lisp-type (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Reader: node-lisp-type (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

type.

Reader: node-lisp-var-names (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

var-names.

Reader: node-lisp-var-names (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

var-names.

Reader: node-lisp-vars (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

vars.

Reader: node-lisp-vars (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

vars.

Reader: node-lisp-vars (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

vars.

Function: node-literal-p (object)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Reader: node-literal-value (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

value.

Reader: node-literal-value (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

value.

Reader: node-literal-value (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

value.

Reader: node-loop-body (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

body.

Reader: node-loop-body (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-loop-body (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-loop-label (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

label.

Reader: node-loop-label (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

label.

Reader: node-loop-label (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

label.

Reader: node-match-branch-body (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-match-branch-body (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-match-branch-pattern (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

pattern.

Reader: node-match-branch-pattern (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

pattern.

Reader: node-match-branches (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

branches.

Reader: node-match-branches (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

branches.

Reader: node-match-branches (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

branches.

Reader: node-match-expr (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

expr.

Reader: node-match-expr (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-match-expr (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-or-nodes (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

nodes.

Reader: node-or-nodes (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

nodes.

Reader: node-progn-body (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-progn-body (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

body.

Function: node-rands (node)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: node-rator-name (node)

Returns the name of the function being called if it is known

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Function: node-rator-type (node)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Reader: node-return-expr (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-return-expr (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-return-from-expr (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

expr.

Reader: node-return-from-name (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

name.

Reader: node-seq-nodes (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

nodes.

Reader: node-the-expr (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-the-type (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

type.

Function: node-type (node)

Get the stored type of ‘node‘.

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Reader: node-type (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

type.

Reader: node-unless-body (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-unless-body (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-unless-expr (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-unless-expr (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-variable-name (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

name.

Reader: node-variable-name (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

name.

Function: node-variable-p (object)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Reader: node-variable-value (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

value.

Function: node-variables (node &key variable-namespace-only)

Return a deduplicated list of identifiers representing variables in both CL namespaces appearing in ‘node‘

Package

coalton-impl/codegen/ast.

Source

transformations.lisp.

Reader: node-when-body (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-when-body (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-when-expr (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-when-expr (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-while-body (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

body.

Reader: node-while-body (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-while-body (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-while-expr (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

expr.

Reader: node-while-expr (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-while-expr (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-while-label (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

label.

Reader: node-while-label (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

label.

Reader: node-while-label (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

label.

Reader: node-while-let-body (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

body.

Reader: node-while-let-body (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-while-let-body (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

body.

Reader: node-while-let-expr (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

expr.

Reader: node-while-let-expr (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-while-let-expr (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

expr.

Reader: node-while-let-label (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

label.

Reader: node-while-let-label (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

label.

Reader: node-while-let-label (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

label.

Reader: node-while-let-pattern (instance)
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Target Slot

pattern.

Reader: node-while-let-pattern (instance)
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Target Slot

pattern.

Reader: node-while-let-pattern (instance)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Target Slot

pattern.

Function: none ()
Package

coalton-library/classes.

Source

classes.lisp.

Function: none? (x-1798)

NONE? :: ∀ A. ((OPTIONAL A) → BOOLEAN) Is X None?

Package

coalton-library/optional.

Source

optional.lisp.

Function: nonnegative? (dict789 dict790 x-211)

NONNEGATIVE? :: ∀ A. (NUM A) (ORD A) ⇒ (A → BOOLEAN) Is ‘x‘ not negative?

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: nonpositive? (dict787 dict788 x-210)

NONPOSITIVE? :: ∀ A. (NUM A) (ORD A) ⇒ (A → BOOLEAN) Is ‘x‘ not positive?

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: nonzero? (dict792 x-213)

NONZERO? :: ∀ A. NUM A ⇒ (A → BOOLEAN) Is ‘x‘ not zero?

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: not (dict _0)

NOT :: ∀ A. BITS A ⇒ (A → A)
The bitwise logical ‘not‘ of two integers

Package

coalton-library/bits.

Source

bits.lisp.

Function: not (x-737)

NOT :: (BOOLEAN → BOOLEAN) Synonym for ‘boolean-not‘.

Package

coalton-library/builtin.

Source

builtin.lisp.

Function: note (location format-string &rest format-args)

Return a note that describes a source LOCATION.

Package

coalton-impl/source.

Source

source.lisp.

Function: note (source locatable format-string &rest format-args)

Make a source note using SOURCE and CST:SOURCE as location.

Package

coalton-impl/parser/base.

Source

base.lisp.

Function: note-end (source locatable format-string &rest format-args)

Make a source note using SOURCE and the location immediately following CST:SOURCE as location.

Package

coalton-impl/parser/base.

Source

base.lisp.

Function: nth (n-2043 l-2044)

NTH :: ∀ A. (UFIX → (LIST A) → A)
Like INDEX, but errors if the index is not found.

Package

coalton-library/list.

Source

list.lisp.

Function: nth-cdr (n-2045 l-2046)

NTH-CDR :: ∀ A. (UFIX → (LIST A) → (LIST A)) Returns the nth-cdr of a list.

Package

coalton-library/list.

Source

list.lisp.

Function: nth-root (dict _0 _1)

NTH-ROOT :: ∀ A. RADICAL A ⇒ (INTEGER → A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: null? (xs-2001)

NULL? :: ∀ A. ((LIST A) → BOOLEAN) Returns TRUE if XS is an empty list.

Package

coalton-library/list.

Source

list.lisp.

Function: numerator (q-630)

NUMERATOR :: (FRACTION → INTEGER) The numerator of a fraction.

Package

coalton-library/math/fraction.

Source

fraction.lisp.

Function: odd? (dict867 n-654)

ODD? :: ∀ A. INTEGRAL A ⇒ (A → BOOLEAN) Is N odd?

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: ok (_0)

OK :: ∀ A B. (B → (RESULT A B))

Package

coalton-library/classes.

Source

classes.lisp.

Function: ok-or-error (dict1691 res-1855)

OK-OR-ERROR :: ∀ A B. SIGNALABLE A ⇒ ((RESULT A B) → B)

Package

coalton-library/result.

Source

result.lisp.

Function: ok? (x-1846)

OK? :: ∀ A B. ((RESULT A B) → BOOLEAN) Returns TRUE if X is OK

Package

coalton-library/result.

Source

result.lisp.

Function: once (item-1674)

ONCE :: ∀ A. (A → (ITERATOR A)) Yield ‘item‘ once.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: open (dict _0)

OPEN :: ∀ A. FILE A ⇒ (STREAMOPTIONS → (RESULT FILEERROR (FILESTREAM A)))

Package

coalton-library/file.

Source

file.lisp.

Function: optimize! (better?-1756 iter-1757)

OPTIMIZE! :: ∀ A. ((A → A → BOOLEAN) → (ITERATOR A) → (OPTIONAL A))
For an order BETTER? which returns ‘True‘ if its first argument is better than its second argument, return the best element of ITER.

Return ‘None‘ if ITER is empty.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: optimize-bindings (bindings monomorphize-table package env)
Package

coalton-impl/codegen/optimizer.

Source

optimizer.lisp.

Function: optimize-by! (better?-1763 f-1764 iter-1765)

OPTIMIZE-BY! :: ∀ A B. ((A → A → BOOLEAN) → (B → A) → (ITERATOR B) → (OPTIONAL B))
For an order BETTER? which returns ‘True‘ if its first argument is better than its second argument, return the element of ITER where (F ELT) is the best.

Return ‘None‘ if ITER is empty.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: optimize-node (node env)
Package

coalton-impl/codegen/optimizer.

Source

optimizer.lisp.

Function: optimumby (f-2241 xs-2242)

OPTIMUMBY :: ∀ A. ((A → A → BOOLEAN) → (LIST A) → (OPTIONAL A)) Returns an optimum according to a total order.

Package

coalton-library/list.

Source

list.lisp.

Function: or (dict _0 _1)

OR :: ∀ A. BITS A ⇒ (A → A → A)
The bitwise logical ‘or‘ of two integers

Package

coalton-library/bits.

Source

bits.lisp.

Function: or! (iter-1738)

OR! :: ((ITERATOR BOOLEAN) → BOOLEAN)
Returns True if any iterator elements are True. May not consume the entire iterator. Returns False on an empty iterator.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: os (_2258)

OS :: (UNIT → STRING)
The system’s operating system (stored at compile time).

Package

coalton-library/system.

Source

system.lisp.

Function: output (_0 _1)

OUTPUT :: (PATHNAME → IFEXISTS → STREAMOPTIONS) Constructor for opening an output stream.

Package

coalton-library/file.

Source

file.lisp.

Function: pair-with (func-184 left-185)

PAIR-WITH :: ∀ A B. ((A → B) → A → (TUPLE A B)) Create a ‘Tuple‘ of the form ‘(Tuple left (func left))‘.

Package

coalton-library/functions.

Source

functions.lisp.

Function: pair-with! (func-1729 keys-1730)

PAIR-WITH! :: ∀ A B. ((A → B) → (ITERATOR A) → (ITERATOR (TUPLE A B)))
Returns an iterator over tuples whose FSTs are elements from KEYS, and whose SNDs are the results of applying FUNC to those KEYS.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: parse-body (form preceding-form source)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: parse-error (message &rest notes)

Signal PARSE-ERROR with provided MESSAGE and source NOTES.

Package

coalton-impl/parser/base.

Source

base.lisp.

Function: parse-expression (form source)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: parse-int (str-2447)

PARSE-INT :: (STRING → (OPTIONAL INTEGER)) Parse the integer in string ‘str‘.

Package

coalton-library/string.

Source

string.lisp.

Function: parse-list (f list_ file)
Package

coalton-impl/parser/base.

Source

base.lisp.

Function: parse-pattern (form source)
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Function: parse-predicate (forms location)
Package

coalton-impl/parser/types.

Source

types.lisp.

Function: parse-qualified-type (form source)
Package

coalton-impl/parser/types.

Source

types.lisp.

Function: parse-qualified-type (unparsed-ty env)
Package

coalton-impl/typechecker/parse-type.

Source

parse-type.lisp.

Function: parse-toplevel-form (form program attributes source)

Parse a toplevel Coalton form in FORM, recording source locations that refer to SOURCE.
If the parsed form is a program definition, add it to PROGRAM and return T.
If the parsed form is an attribute (e.g., repr or monomorphize), add it to to ATTRIBUTES and return NIL.

Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: parse-ty-scheme (ty env)
Package

coalton-impl/typechecker/parse-type.

Source

parse-type.lisp.

Function: parse-type (form source)
Package

coalton-impl/parser/types.

Source

types.lisp.

Function: parse-type (ty env)
Package

coalton-impl/typechecker/parse-type.

Source

parse-type.lisp.

Function: parse-variable (form source)
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Function: partial-type-env-add-class (env pred)
Package

coalton-impl/typechecker/partial-type-env.

Source

partial-type-env.lisp.

Function: partial-type-env-add-type (env name type)
Package

coalton-impl/typechecker/partial-type-env.

Source

partial-type-env.lisp.

Function: partial-type-env-add-var (env var)
Package

coalton-impl/typechecker/partial-type-env.

Source

partial-type-env.lisp.

Reader: partial-type-env-env (instance)
Package

coalton-impl/typechecker/partial-type-env.

Source

partial-type-env.lisp.

Target Slot

env.

Function: partial-type-env-lookup-class (env pred)
Package

coalton-impl/typechecker/partial-type-env.

Source

partial-type-env.lisp.

Function: partial-type-env-lookup-type (env tycon)
Package

coalton-impl/typechecker/partial-type-env.

Source

partial-type-env.lisp.

Function: partial-type-env-lookup-var (env var source)
Package

coalton-impl/typechecker/partial-type-env.

Source

partial-type-env.lisp.

Function: partial-type-env-replace-type (env name type)
Package

coalton-impl/typechecker/partial-type-env.

Source

partial-type-env.lisp.

Reader: partial-type-env-ty-table (instance)
Package

coalton-impl/typechecker/partial-type-env.

Source

partial-type-env.lisp.

Target Slot

ty-table.

Function: partition (f-2224 xs-2225)

PARTITION :: ∀ A. ((A → BOOLEAN) → (LIST A) → (TUPLE (LIST A) (LIST A)))
Splits a list into two new lists. The first list contains elements matching predicate F.

Package

coalton-library/list.

Source

list.lisp.

Reader: pattern-constructor-name (instance)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Target Slot

name.

Reader: pattern-constructor-name (instance)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Target Slot

name.

Reader: pattern-constructor-name (instance)
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Target Slot

name.

Function: pattern-constructor-p (object)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Function: pattern-constructor-p (object)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Reader: pattern-constructor-patterns (instance)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Target Slot

patterns.

Reader: pattern-constructor-patterns (instance)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Target Slot

patterns.

Reader: pattern-constructor-patterns (instance)
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Target Slot

patterns.

Function: pattern-list-p (x)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Function: pattern-literal-p (object)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Function: pattern-literal-p (object)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Reader: pattern-literal-value (instance)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Target Slot

value.

Reader: pattern-literal-value (instance)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Target Slot

value.

Reader: pattern-literal-value (instance)
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Target Slot

value.

Reader: pattern-type (instance)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Target Slot

type.

Reader: pattern-type (instance)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Target Slot

type.

Reader: pattern-var-name (instance)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Target Slot

name.

Reader: pattern-var-name (instance)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Target Slot

name.

Reader: pattern-var-name (instance)
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Target Slot

name.

Reader: pattern-var-orig-name (instance)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Target Slot

orig-name.

Reader: pattern-var-orig-name (instance)
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Target Slot

orig-name.

Function: pattern-var-p (object)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Function: pattern-var-p (object)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Function: pattern-var-p (object)
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Function: pattern-variables (pattern)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Function: pattern-variables (pattern)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Function: pattern-variables (pattern)
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Function: pattern-wildcard-p (object)
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Function: pattern-wildcard-p (object)
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Function: peek (q-2580)

PEEK :: ∀ A. ((QUEUE A) → (OPTIONAL A)) Peek at the first item of ‘q‘.

Package

coalton-library/queue.

Source

queue.lisp.

Function: peek (cursor &key unwrap)

Peek at the value of CURSOR without changing any state.

Package

coalton-impl/parser/cursor.

Source

cursor.lisp.

Function: peek-unsafe (q-2581)

PEEK-UNSAFE :: ∀ A. ((QUEUE A) → A)
Peek at the first item of ‘q‘ without checking if the queue is empty.

Package

coalton-library/queue.

Source

queue.lisp.

Function: perms (l-2261)

PERMS :: ∀ A. ((LIST A) → (LIST (LIST A))) Produce all permutations of the list L.

Package

coalton-library/list.

Source

list.lisp.

Function: phase (dict _0)

PHASE :: ∀ A. POLAR A ⇒ ((COMPLEX A) → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: pi (dict)

PI :: ∀ A. TRIGONOMETRIC A ⇒ A

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: polar (dict _0)

POLAR :: ∀ A. POLAR A ⇒ ((COMPLEX A) → (TUPLE A A))

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: pop (seq-3022)

POP :: ∀ A. ((SEQ A) → (OPTIONAL (TUPLE A (SEQ A))))
If ‘seq‘ is empty, return ‘None‘. Otherwise, the last member of ‘seq‘ and a new ‘Seq‘ instance.

Package

coalton-library/seq.

Source

seq.lisp.

Function: pop! (q-2578)

POP! :: ∀ A. ((QUEUE A) → (OPTIONAL A)) Remove and return the first item of ‘q‘.

Package

coalton-library/queue.

Source

queue.lisp.

Function: pop! (v-2338)

POP! :: ∀ A. ((VECTOR A) → (OPTIONAL A)) Remove and return the last item of ‘v‘.

Package

coalton-library/vector.

Source

vector.lisp.

Function: pop! (cel-1562)

POP! :: ∀ A. ((CELL (LIST A)) → (OPTIONAL A)) Remove and return the first element of the list in CEL.

Package

coalton-library/cell.

Source

cell.lisp.

Function: pop-final-hoist-point (hoister)
Package

coalton-impl/codegen/hoister.

Source

hoister.lisp.

Function: pop-hoist-point (hoister)
Package

coalton-impl/codegen/hoister.

Source

hoister.lisp.

Function: pop-unsafe! (q-2579)

POP-UNSAFE! :: ∀ A. ((QUEUE A) → A)
Remove and return the first item of ‘q‘ without checking if the queue is empty.

Package

coalton-library/queue.

Source

queue.lisp.

Function: pop-unsafe! (v-2339)

POP-UNSAFE! :: ∀ A. ((VECTOR A) → A)
Remove and return the last item of ‘v‘ without checking if the vector is empty.

Package

coalton-library/vector.

Source

vector.lisp.

Function: positive? (dict783 dict784 x-208)

POSITIVE? :: ∀ A. (NUM A) (ORD A) ⇒ (A → BOOLEAN) Is ‘x‘ positive?

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: pow (dict _0 _1)

POW :: ∀ A. EXPONENTIABLE A ⇒ (A → A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: pprint-predicate (stream predicate)
Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Function: pprint-tvar (tvar)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: pprint-ty (stream ty)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: pred-type (pred env)

Returns a type represention of PRED

Package

coalton-impl/codegen/resolve-instance.

Source

resolve-instance.lisp.

Function: predicate-match (pred1 pred2 &optional subs)

Returns a SUBSTITUTION-LIST of the most general substitutions required to unify PRED1 to PRED2.

Package

coalton-impl/typechecker/unify.

Source

unify.lisp.

Function: predicate-mgu (pred1 pred2)

Returns a SUBSTITUTION-LIST of the most general substitutions required to unify PRED1 and PRED2.

Package

coalton-impl/typechecker/unify.

Source

unify.lisp.

Function: primal-part (g1141)

PRIMAL-PART :: ∀ A. ((DUAL A) → A)
The primal (i.e., real) part of a dual number.

Package

coalton-library/math/dual.

Source

dual.lisp.

Function: print (dict742 item-152)

PRINT :: ∀ A. INTO A STRING ⇒ (A → UNIT)
Print the String representation of ‘item‘ to ‘cl:*standard-output*‘.

Package

coalton-library/functions.

Source

functions.lisp.

Function: print-class-db (&optional package)

Print the global class environment

Package

coalton.

Source

debug.lisp.

Function: print-instance-db (&optional package)

Print the global instance environment

Package

coalton.

Source

debug.lisp.

Function: print-specializations (&optional package)

Print all specializations

Package

coalton.

Source

debug.lisp.

Function: print-type-db (&optional package)

Print the global type environment

Package

coalton.

Source

debug.lisp.

Function: print-value-db (&optional package)

Print the global value environment

Package

coalton.

Source

debug.lisp.

Function: product (dict1779 xs-2250)

PRODUCT :: ∀ A. NUM A ⇒ ((LIST A) → A) Returns the product of XS

Package

coalton-library/list.

Source

list.lisp.

Function: profile (_0 _1 _2 _3)

PROFILE :: ∀ A. (A → UFIX → UFIX → UFIX → (PROFILE A)) A profile of a run function.

Package

coalton-library/system.

Source

system.lisp.

Reader: program-classes (instance)
Writer: (setf program-classes) (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

classes.

Reader: program-declares (instance)
Writer: (setf program-declares) (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

declares.

Reader: program-defines (instance)
Writer: (setf program-defines) (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

defines.

Reader: program-instances (instance)
Writer: (setf program-instances) (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

instances.

Reader: program-lisp-forms (instance)
Writer: (setf program-lisp-forms) (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

lisp-forms.

Function: program-lisp-package (program)

Return the Lisp package associated with PROGRAM, or current *PACKAGE* if none was specified.

Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Reader: program-package (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

package.

Reader: program-specializations (instance)
Writer: (setf program-specializations) (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

specializations.

Reader: program-structs (instance)
Writer: (setf program-structs) (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

structs.

Reader: program-types (instance)
Writer: (setf program-types) (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

types.

Function: project-indices (indices data)
Package

coalton-impl/util.

Source

utilities.lisp.

Function: project-map (indices map data)
Package

coalton-impl/util.

Source

utilities.lisp.

Function: propagate-constants (node env)
Package

coalton-impl/codegen/constant-propagation.

Source

constant-propagation.lisp.

Function: proper (dict _0)

PROPER :: ∀ A. QUANTIZABLE A ⇒ (A → (TUPLE INTEGER A))

Package

coalton-library/math/real.

Source

real.lisp.

Function: proxy-inner (_587)

PROXY-INNER :: ∀ A B. ((PROXY (A B)) → (PROXY B))

Package

coalton-library/types.

Source

types.lisp.

Function: proxy-of (_585)

PROXY-OF :: ∀ A. (A → (PROXY A))
Returns a Proxy containing the type of the parameter.

Package

coalton-library/types.

Source

types.lisp.

Function: pure (dict _0)

PURE :: ∀ A B. APPLICATIVE B ⇒ (A → (B A))

Package

coalton-library/classes.

Source

classes.lisp.

Function: push (seq-3014 a-3015)

PUSH :: ∀ A. ((SEQ A) → A → (SEQ A))
Push ‘a‘ onto the end of ‘seq‘, returning a new ‘Seq‘ instance.

Package

coalton-library/seq.

Source

seq.lisp.

Function: push! (item-2576 q-2577)

PUSH! :: ∀ A. (A → (QUEUE A) → UNIT) Push ‘item‘ onto the end of ‘q‘.

Package

coalton-library/queue.

Source

queue.lisp.

Function: push! (item-2336 v-2337)

PUSH! :: ∀ A. (A → (VECTOR A) → UFIX)
Append ‘item‘ to ‘v‘ and resize ‘v‘ if necessary, returning the index of the new item.

Package

coalton-library/vector.

Source

vector.lisp.

Function: push! (cel-1560 new-elt-1561)

PUSH! :: ∀ A. ((CELL (LIST A)) → A → (LIST A)) Push NEW-ELT onto the start of the list in CEL.

Package

coalton-library/cell.

Source

cell.lisp.

Function: push-hoist-point (bound-variables hoister)
Package

coalton-impl/codegen/hoister.

Source

hoister.lisp.

Function: put (seq-2999 idx-3000 a-3001)

PUT :: ∀ A. ((SEQ A) → UFIX → A → (OPTIONAL (SEQ A)))
If ‘idx‘ is less than ‘(size seq)‘, Return a new ‘seq‘ whose ‘idx‘ position contains ‘a‘.

Package

coalton-library/seq.

Source

seq.lisp.

Function: put (state-2613)

PUT :: ∀ A. (A → (ST A UNIT))
A StatefulComputation with state set to be given state. The returned value is Unit.

Package

coalton-library/monad/state.

Source

monad/state.lisp.

Reader: qualified-ty-predicates (instance)
Package

coalton-impl/parser/types.

Source

types.lisp.

Target Slot

predicates.

Reader: qualified-ty-predicates (instance)
Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Target Slot

predicates.

Reader: qualified-ty-type (instance)
Package

coalton-impl/parser/types.

Source

types.lisp.

Target Slot

type.

Reader: qualified-ty-type (instance)
Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Target Slot

type.

Function: qualify (predicates type)

Qualify TYPE with PREDICATES

Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Function: quantify (tyvars type)
Package

coalton-impl/typechecker/scheme.

Source

scheme.lisp.

Function: quantify-using-tvar-order (tyvars type)
Package

coalton-impl/typechecker/scheme.

Source

scheme.lisp.

Function: quantization (_0 _1 _2 _3 _4)

QUANTIZATION :: ∀ A. (A → INTEGER → A → INTEGER → A → (QUANTIZATION A))

Package

coalton-library/math/real.

Source

real.lisp.

Function: quantize (dict906 x-987)

QUANTIZE :: ∀ A. REAL A ⇒ (A → (QUANTIZATION A))
Given X, (QUANTIZE X) will return the least integer greater or equal to X, and the greatest integer less than or equal to X, along with their respective remainders expressed as values of type of X.

Package

coalton-library/math/real.

Source

real.lisp.

Function: quot (dict _0 _1)

QUOT :: ∀ A. REMAINDER A ⇒ (A → A → A)

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: quotrem (dict _0 _1)

QUOTREM :: ∀ A. REMAINDER A ⇒ (A → A → (TUPLE A A))

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: range (start-2420 end-2421)

RANGE :: (CHAR → CHAR → (ITERATOR CHAR))
An inclusive range of characters from START to END by cl:char-code.

Package

coalton-library/char.

Source

char.lisp.

Function: range (dict1760 dict1761 start-2056 end-2057)

RANGE :: ∀ A. (NUM A) (ORD A) ⇒ (A → A → (LIST A))
Returns a list containing the numbers from START to END inclusive, counting by 1.

COALTON-USER> (coalton (range 1 5))
(1 2 3 4 5)

COALTON-USER> (coalton (range 5 2))
(5 4 3 2)

Package

coalton-library/list.

Source

list.lisp.

Function: range-decreasing (dict1544 dict1545 step-1661 start-1662 end-1663)

RANGE-DECREASING :: ∀ A. (NUM A) (ORD A) ⇒ (A → A → A → (ITERATOR A))
A range which begins below START and counts down through and including END by STEP.

Equivalent to reversing ‘range-increasing‘

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: range-increasing (dict1538 dict1539 step-1651 start-1652 end-1653)

RANGE-INCREASING :: ∀ A. (NUM A) (ORD A) ⇒ (A → A → A → (ITERATOR A))
An iterator which begins at START and yields successive elements spaced by STEP, stopping before END.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: read (dict _0)

READ :: ∀ A. FILE A ⇒ ((FILESTREAM A) → (RESULT FILEERROR A))

Package

coalton-library/file.

Source

file.lisp.

Function: read (cel-1551)

READ :: ∀ A. ((CELL A) → A) Read the value of a mutable cell

Package

coalton-library/cell.

Source

cell.lisp.

Function: read-char (stream-3277)

READ-CHAR :: ((FILESTREAM CHAR) → (RESULT FILEERROR CHAR)) Reads a character from an FileStream.

Package

coalton-library/file.

Source

file.lisp.

Function: read-expression (stream source)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: read-file-lines (dict2336 path-3378)

READ-FILE-LINES :: ∀ A. INTO A PATHNAME ⇒ (A → (RESULT FILEERROR (LIST STRING))) Reads a file into lines, given a pathname or string.

Package

coalton-library/file.

Source

file.lisp.

Function: read-file-to-string (dict2335 path-3376)

READ-FILE-TO-STRING :: ∀ A. INTO A PATHNAME ⇒ (A → (RESULT FILEERROR STRING)) Reads a file into a string, given a pathname string.

Package

coalton-library/file.

Source

file.lisp.

Function: read-file-to-vector (dict2317 dict2318 stream-3351)

READ-FILE-TO-VECTOR :: ∀ A. (RUNTIMEREPR A) (FILE A) ⇒ ((FILESTREAM A) → (RESULT FILEERROR (VECTOR A))) Reads a file into a vector of type ‘:a‘.

Package

coalton-library/file.

Source

file.lisp.

Function: read-program (stream source &optional mode)

Read a PROGRAM from SOURCE (an instance of source-error:source).
MODE may be one of :file or :macro.

If MODE is :file, a package form is required.
If MODE is :macro, a package form is forbidden, and an explicit check is made for EOF.

Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Function: read-vector (dict2316 stream-3346 chunk-size-3347)

READ-VECTOR :: ∀ A. FILE A ⇒ ((FILESTREAM A) → UFIX → (RESULT FILEERROR (VECTOR A))) Reads a chunk of a file into a vector of type ‘:a‘.

Package

coalton-library/file.

Source

file.lisp.

Function: readable? (dict _0)

READABLE? :: ∀ A B. RANDOMACCESS B A ⇒ (B → BOOLEAN)

Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Function: real-approx (dict _0 _1)

REAL-APPROX :: ∀ A. REAL A ⇒ (UFIX → A → FRACTION)

Package

coalton-library/math/real.

Source

real.lisp.

Function: real-part (dict _0)

REAL-PART :: ∀ A. COMPLEX A ⇒ ((COMPLEX A) → A)

Package

coalton-library/math/complex.

Source

complex.lisp.

Function: reciprocal (dict _0)

RECIPROCAL :: ∀ A. RECIPROCABLE A ⇒ (A → A)

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: recursive-iter (succ-1646 done?-1647 start-1648)

RECURSIVE-ITER :: ∀ A. ((A → A) → (A → BOOLEAN) → A → (ITERATOR A))
An iterator which yields first START, then (SUCC START), then (SUCC (SUCC START)), and so on, stopping as soon as such a value is ‘done?‘.

Beware off-by-one errors: the first value which is ‘done?‘ is not yielded. If ‘(done? start)’ is true, the
iterator is empty.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: reduce (dict743 f-163 y-164 xs-165)

REDUCE :: ∀ A B C. FOLDABLE C ⇒ ((A → B → B) → B → (C A) → B)
The same as ‘fold‘ but with the argument order swapped to match ‘cl:reduce‘

Package

coalton-library/functions.

Source

functions.lisp.

Function: reduce-context (env preds subs)
Package

coalton-impl/typechecker/context-reduction.

Source

context-reduction.lisp.

Function: ref (str-2450 idx-2451)

REF :: (STRING → UFIX → (OPTIONAL CHAR)) Return the ‘idx‘th character of ‘str‘.

Package

coalton-library/string.

Source

string.lisp.

Function: ref-unchecked (str-2448 idx-2449)

REF-UNCHECKED :: (STRING → UFIX → CHAR)
Return the ‘idx‘th character of ‘str‘. This function is partial.

Package

coalton-library/string.

Source

string.lisp.

Function: rem (dict _0 _1)

REM :: ∀ A. REMAINDER A ⇒ (A → A → A)

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: remove (dict1771 x-2111 ys-2112)

REMOVE :: ∀ A. EQ A ⇒ (A → (LIST A) → (LIST A))
Return a new list with the first element equal to ‘x‘ removed.

Package

coalton-library/list.

Source

list.lisp.

Function: remove (dict2071 mp-2881 k-2882)

REMOVE :: ∀ A B. ORD A ⇒ ((MAP A B) → A → (OPTIONAL (MAP A B)))
Remove the mapping associated with K in MP. If K does not have a value in MP, return None.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Function: remove (dict2011 tre-2779 elt-2780)

REMOVE :: ∀ A. ORD A ⇒ ((TREE A) → A → (OPTIONAL (TREE A)))
Construct a new Tree like TRE but without an element ‘==’ to ELT. Return None if TRE does not contain an element ‘==‘ to ELT.

Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Function: remove! (dict1930 table-2542 key-2543)

REMOVE! :: ∀ A B. HASH A ⇒ ((HASHTABLE A B) → A → UNIT) Remove the entry at KEY from TABLE

Package

coalton-library/hashtable.

Source

hashtable.lisp.

Function: remove-directory! (dict2289 path-3247)

REMOVE-DIRECTORY! :: ∀ A. INTO A PATHNAME ⇒ (A → (RESULT FILEERROR A)) Deletes an empty directory.

Package

coalton-library/file.

Source

file.lisp.

Function: remove-directory-recursive! (dict2290 path-3249)

REMOVE-DIRECTORY-RECURSIVE! :: ∀ A. INTO A PATHNAME ⇒ (A → (RESULT FILEERROR UNIT))
Deletes a target directory recursively. Equivalent to ‘rm -r‘. Errors if the path is not a directory.

Package

coalton-library/file.

Source

file.lisp.

Function: remove-duplicates (dict1770 xs-2103)

REMOVE-DUPLICATES :: ∀ A. EQ A ⇒ ((LIST A) → (LIST A)) Returns a new list without duplicate elements.

Package

coalton-library/list.

Source

list.lisp.

Function: remove-duplicates! (dict1962 iter-2567)

REMOVE-DUPLICATES! :: ∀ A. HASH A ⇒ ((ITERATOR A) → (ITERATOR A)) Yield unique elements from ITER in order of first appearance.

Package

coalton-library/iterator.

Source

hashtable.lisp.

Function: remove-if (pred-2109 xs-2110)

REMOVE-IF :: ∀ A. ((A → BOOLEAN) → (LIST A) → (LIST A))
Return a new list with the first element for which PRED is ‘True‘ is removed.

Package

coalton-library/list.

Source

list.lisp.

Function: rename-type-variables (ty)
Package

coalton-impl/parser/renamer.

Source

renamer.lisp.

Function: rename-type-variables (node &optional renamer)

Rename the type variables of ‘node‘ and its subnodes according to the function ‘renamer‘, returning the new node tree.

Package

coalton-impl/codegen/transformations.

Source

transformations.lisp.

Function: rename-variables (node)
Package

coalton-impl/parser/renamer.

Source

renamer.lisp.

Function: repeat (n-2004 x-2005)

REPEAT :: ∀ A. (UFIX → A → (LIST A))
Returns a list with the same value repeated multiple times.

Package

coalton-library/list.

Source

list.lisp.

Function: repeat (item-1671)

REPEAT :: ∀ A. (A → (ITERATOR A)) Yield ITEM over and over, infinitely.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: repeat-for (item-1672 count-1673)

REPEAT-FOR :: ∀ A. (A → UFIX → (ITERATOR A)) Yield ITEM COUNT times, then stop.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: replace (dict2068 mp-2865 k-2866 v-2867)

REPLACE :: ∀ A B. ORD A ⇒ ((MAP A B) → A → B → (OPTIONAL (TUPLE (MAP A B) B)))
Change the association of K to V in MP. If MP did not already contain a mapping for K, return None.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Function: replace (dict2008 tre-2751 elt-2752)

REPLACE :: ∀ A. ORD A ⇒ ((TREE A) → A → (OPTIONAL (TUPLE (TREE A) A))) Construct a new Tree like TRE but with ELT replacing an old element ‘==‘ to ELT.

Return the new tree and the removed element.

If TRE did not have an element ‘==’ to ELT, return None.

Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Function: replace-or-insert (dict2069 mp-2871 k-2872 v-2873)

REPLACE-OR-INSERT :: ∀ A B. ORD A ⇒ ((MAP A B) → A → B → (TUPLE (MAP A B) (OPTIONAL B))) Update MP to associate K with V.

If MP already contains a mapping for K, replace it and return the old value.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Function: replace-or-insert (dict2009 tre-2763 elt-2764)

REPLACE-OR-INSERT :: ∀ A. ORD A ⇒ ((TREE A) → A → (TUPLE (TREE A) (OPTIONAL A)))
Construct a new Tree like TRE but containing ELT.

If TRE already had an element ‘==‘ to ELT, remove it, replace it with ELT, and return the removed value alongside the new tree.

Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Function: required (name)

A function to call as a slot initializer when it’s required.

Package

coalton-impl/util.

Source

utilities.lisp.

Function: resolve-dict (pred context env)

Resolve PRED to a node

Package

coalton-impl/codegen/resolve-instance.

Source

resolve-instance.lisp.

Function: resolve-static-dict (pred context env)

Attempt to resolve PRED from static instances

Package

coalton-impl/codegen/resolve-instance.

Source

resolve-instance.lisp.

Function: reverse (xs-2013)

REVERSE :: ∀ A. ((LIST A) → (LIST A))
Returns a new list containing the same elements in reverse order.

Package

coalton-library/list.

Source

list.lisp.

Function: reverse (s-2429)

REVERSE :: (STRING → STRING) Reverse a string.

Package

coalton-library/string.

Source

string.lisp.

Function: round (dict897 dict898 x-943)

ROUND :: ∀ A. (QUANTIZABLE A) (NUM A) ⇒ (A → INTEGER)
Return the nearest integer to X, with ties breaking towards even numbers.

Package

coalton-library/math/real.

Source

real.lisp.

Function: round-half-down (dict909 dict910 x-993)

ROUND-HALF-DOWN :: ∀ A. (QUANTIZABLE A) (NUM A) ⇒ (A → INTEGER)
Return the nearest integer to X, with ties breaking toward positive infinity.

Package

coalton-library/math/real.

Source

real.lisp.

Function: round-half-up (dict907 dict908 x-992)

ROUND-HALF-UP :: ∀ A. (QUANTIZABLE A) (NUM A) ⇒ (A → INTEGER)
Return the nearest integer to X, with ties breaking toward positive infinity.

Package

coalton-library/math/real.

Source

real.lisp.

Function: round/ (a-1004 b-1005)

ROUND/ :: (INTEGER → INTEGER → INTEGER) Divide two integers and round the quotient.

Package

coalton-library/math/real.

Source

real.lisp.

Function: rsh (dict862 dict863 x-649 n-650)

RSH :: ∀ A B. (INTEGRAL B) (BITS A) ⇒ (A → B → A) Right shift X by N

Package

coalton-library/math/integral.

Source

integral.lisp.

Function: run (sc-2615)

RUN :: ∀ A B. ((ST A B) → A → (TUPLE A B))
Runs a StatefulComputation to produce a final updated state and value given an initial state

Package

coalton-library/monad/state.

Source

monad/state.lisp.

Function: runtime-quote (x)
Package

coalton-impl/util.

Source

utilities.lisp.

Function: runtime-repr (dict _0)

RUNTIME-REPR :: ∀ A. RUNTIMEREPR A ⇒ ((PROXY A) → LISPTYPE)

Package

coalton-library/types.

Source

types.lisp.

Function: runtime-repr-of (dict588 x-3)

RUNTIME-REPR-OF :: ∀ A. RUNTIMEREPR A ⇒ (A → LISPTYPE)
Returns the runtime representation of the type of the given value.

Package

coalton-library/types.

Source

types.lisp.

Function: safe/ (dict911 dict912 x-994 y-995)

SAFE/ :: ∀ A B. (NUM A) (DIVIDABLE A B) ⇒ (A → A → (OPTIONAL B)) Safely divide X by Y, returning None if Y is zero.

Package

coalton-library/math/real.

Source

real.lisp.

Function: scale (x-1443 j-1444)

SCALE :: (DYADIC → INTEGER → DYADIC) Scales the exponent of a dyadic X by J.

Package

coalton-library/math/dyadic.

Source

dyadic.lisp.

Function: scheme-predicates (ty-scheme)

Get freshly instantiated predicates of scheme TY-SCHEME

Package

coalton-impl/typechecker/scheme.

Source

scheme.lisp.

Function: secondary-note (location format-string &rest format-args)

Return a note that describes a primary source LOCATION.

Package

coalton-impl/source.

Source

source.lisp.

Function: secondary-note (source locatable format-string &rest format-args)

Make a source note using SOURCE and CST:SOURCE as location.

Package

coalton-impl/parser/base.

Source

base.lisp.

Function: sequence (dict659 dict660)

SEQUENCE :: ∀ A B C. (TRAVERSABLE A) (APPLICATIVE B) ⇒ ((A (B C)) → (B (A C)))

Package

coalton-library/classes.

Source

classes.lisp.

Function: set! (idx-2489 item-2490 s-2491)

SET! :: ∀ A. (UFIX → A → (SLICE A) → UNIT) Set the element at index ‘idx‘ in ‘s‘ to ‘item‘.

Package

coalton-library/slice.

Source

slice.lisp.

Function: set! (dict1929 table-2539 key-2540 value-2541)

SET! :: ∀ A B. HASH A ⇒ ((HASHTABLE A B) → A → B → UNIT) Set KEY to VALUE in TABLE

Package

coalton-library/hashtable.

Source

hashtable.lisp.

Function: set! (dict1324 storage-1546 index-1547 value-1548)

SET! :: ∀ A B. RANDOMACCESS A B ⇒ (A → UFIX → B → (OPTIONAL UNIT))
Write the element ‘value‘ at ‘index‘ of the random-access storage ‘storage‘. Return ‘None‘ if the write is out-of-bounds or not permitted.

Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Function: set! (idx-2344 item-2345 v-2346)

SET! :: ∀ A. (UFIX → A → (VECTOR A) → UNIT)
Set the ‘idx‘th element of ‘v‘ to ‘item‘. This function left intentionally unsafe because it does not have a return value to check.

Package

coalton-library/vector.

Source

vector.lisp.

Function: set! (v-1926 i-1927 x-1928)

SET! :: ∀ A. ((LISPARRAY A) → UFIX → A → UNIT) Set the ‘i‘th value of the ‘LispArray‘ ‘v‘ to ‘x‘.

Package

coalton-library/lisparray.

Source

lisparray.lisp.

Function: set-capacity! (new-capacity-2332 v-2333)

SET-CAPACITY! :: ∀ A. (UFIX → (VECTOR A) → UNIT)
Set the capacity of ‘v‘ to ‘new-capacity‘. Setting the capacity to lower then the length will remove elements from the end.

Package

coalton-library/vector.

Source

vector.lisp.

Function: set-class (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: set-code (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: set-constructor (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: set-file-position (stream-3285 i-3286)

SET-FILE-POSITION :: ∀ A. ((FILESTREAM A) → UFIX → (RESULT FILEERROR UNIT)) Sets the file position of a file stream.

Package

coalton-library/file.

Source

file.lisp.

Function: set-function (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: set-function-source-parameter-names (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: set-method-inline (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: set-name (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: set-struct (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: set-type (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: set-value-type (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: setenv! (var-3205 val-3206)

SETENV! :: (STRING → STRING → UNIT)
Sets an environment variable ‘var‘ to string ‘val‘, only if ‘var‘ already exists.

Package

coalton-library/system.

Source

system.lisp.

Function: shift (k-1447 a-1448)

SHIFT :: (UFIX → DYADIC → DYADIC)
Shift dyadic A to its floor with K+1 bits of precision.

Package

coalton-library/math/dyadic.

Source

dyadic.lisp.

Function: shift (dict _0 _1)

SHIFT :: ∀ A. BITS A ⇒ (INTEGER → A → A)
The arithmetic left-shift of an integer by an integer number of bits

Package

coalton-library/bits.

Source

bits.lisp.

Function: sign (dict778 dict779 dict780 x-203)

SIGN :: ∀ A B. (ORD A) (NUM A) (NUM B) ⇒ (A → B) The sign of ‘x‘, where ‘(sign 0) = 1‘.

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: simple-kind-p (kind)

Whether KIND is a simple kind (either * or a function from many * to *)

Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Function: simplify (d-1436)

SIMPLIFY :: (DYADIC → DYADIC)
Simplifies a Dyadic by maximizing the absolute value of the exponent.

Package

coalton-library/math/dyadic.

Source

dyadic.lisp.

Function: simplify-integer (n-1433)

SIMPLIFY-INTEGER :: (INTEGER → DYADIC) Finds the simplest dyadic given an integer

Package

coalton-library/math/dyadic.

Source

dyadic.lisp.

Function: sin (dict _0)

SIN :: ∀ A. TRIGONOMETRIC A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: sincos (dict1068 x-1303)

SINCOS :: ∀ A. TRIGONOMETRIC A ⇒ (A → (TUPLE A A)) Computes the sine and cosine of X.

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: singleton (x-2002)

SINGLETON :: ∀ A. (A → (LIST A)) Returns a list containing one element.

Package

coalton-library/list.

Source

list.lisp.

Function: singleton (x-2326)

SINGLETON :: ∀ A. (A → (VECTOR A))
Create a new vector with a single element equal to ‘x‘

Package

coalton-library/vector.

Source

vector.lisp.

Function: singleton? (xs-2003)

SINGLETON? :: ∀ A. ((LIST A) → BOOLEAN)
Is ‘xs‘ a list containing exactly one element?

Package

coalton-library/list.

Source

list.lisp.

Function: singleton? (v-2330)

SINGLETON? :: ∀ A. ((VECTOR A) → BOOLEAN) Is ‘v‘ a singleton?

Package

coalton-library/vector.

Source

vector.lisp.

Function: sinh (dict1074 x-1308)

SINH :: ∀ A. ELEMENTARY A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: size (seq-2985)

SIZE :: ∀ A. ((SEQ A) → UFIX)
Return the number of elements in the ‘seq‘.

Package

coalton-library/seq.

Source

seq.lisp.

Function: size-hint (iter-1637)

SIZE-HINT :: ∀ A. ((ITERATOR A) → (OPTIONAL UFIX))

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: sleep (n-3194)

SLEEP :: (INTEGER → UNIT) Sleep for ‘n‘ seconds.

Package

coalton-library/system.

Source

system.lisp.

Function: snd (g1367)

SND :: ∀ A B. ((TUPLE A B) → B) Get the second element of a tuple.

Package

coalton-library/tuple.

Source

tuple.lisp.

Function: solve-accessors (accessors env)
Package

coalton-impl/typechecker/accessor.

Source

accessor.lisp.

Function: solve-fundeps (env preds subs)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: some (_0)

SOME :: ∀ A. (A → (OPTIONAL A))

Package

coalton-library/classes.

Source

classes.lisp.

Function: some? (x-1797)

SOME? :: ∀ A. ((OPTIONAL A) → BOOLEAN) Is X Some?

Package

coalton-library/optional.

Source

optional.lisp.

Function: sort (dict1774 xs-2201)

SORT :: ∀ A. ORD A ⇒ ((LIST A) → (LIST A)) Performs a sort of XS.

Package

coalton-library/list.

Source

list.lisp.

Function: sort! (dict1862 v-2365)

SORT! :: ∀ A. ORD A ⇒ ((VECTOR A) → UNIT) Sort a vector in-place in ascending order.

Package

coalton-library/vector.

Source

vector.lisp.

Function: sort-by! (f-2363 v-2364)

SORT-BY! :: ∀ A. ((A → A → BOOLEAN) → (VECTOR A) → UNIT) Sort a vector in-place with predicate function ‘f‘.

Package

coalton-library/vector.

Source

vector.lisp.

Function: sortby (cmp-2202 xs-2203)

SORTBY :: ∀ A. ((A → A → ORD) → (LIST A) → (LIST A)) Generic version of sort

Package

coalton-library/list.

Source

list.lisp.

Reader: source-error-location (instance)
Package

source-error/error.

Source

error.lisp.

Target Slot

location.

Reader: source-error-source (instance)
Package

source-error/error.

Source

error.lisp.

Target Slot

source.

Function: span-end (span)

Return the zero-based offset immediately past the last character in SPAN.

Package

coalton-impl/source.

Source

source.lisp.

Function: span-start (span)

Return the zero-based offset of the first character in SPAN.

Package

coalton-impl/source.

Source

source.lisp.

Reader: specialization-entry-from (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

from.

Reader: specialization-entry-to (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

to.

Reader: specialization-entry-to-ty (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

to-ty.

Function: split (c-2259 str-2260)

SPLIT :: (CHAR → STRING → (LIST STRING))

Package

coalton-library/list.

Source

list.lisp.

Function: split (n-2436 str-2437)

SPLIT :: (UFIX → STRING → (TUPLE STRING STRING)) Splits a string into a head and tail at the nth index.

Package

coalton-library/string.

Source

string.lisp.

Function: split-context (env environment-vars preds subs)

Split PREDS into retained predicates and deferred predicates

Returns (VALUES deferred-preds retained-preds defaultable-preds)

Package

coalton-impl/typechecker/context-reduction.

Source

context-reduction.lisp.

Function: sqrt (dict _0)

SQRT :: ∀ A. RADICAL A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: square-magnitude (dict1022 a-1062)

SQUARE-MAGNITUDE :: ∀ A. COMPLEX A ⇒ ((COMPLEX A) → A) The length of a complex number.

Package

coalton-library/math/complex.

Source

complex.lisp.

Function: st (x)

ST :: ∀ A B. ((A → (TUPLE A B)) → (ST A B))

Package

coalton-library/monad/state.

Source

monad/state.lisp.

Function: static-predicate-p (pred)

Is PRED a static predicate (no type variables)

Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Function: strip-prefix (prefix-2438 str-2439)

STRIP-PREFIX :: (STRING → STRING → (OPTIONAL STRING)) Returns a string without a give prefix, or ‘None‘ if the string does not have that suffix.

Package

coalton-library/string.

Source

string.lisp.

Function: strip-suffix (suffix-2442 str-2443)

STRIP-SUFFIX :: (STRING → STRING → (OPTIONAL STRING)) Returns a string without a give suffix, or ‘None‘ if the string does not have that suffix.

Package

coalton-library/string.

Source

string.lisp.

Reader: struct-entry-fields (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

fields.

Reader: struct-entry-name (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

name.

Reader: struct-field-index (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

index.

Reader: struct-field-name (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

name.

Reader: struct-field-name (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

name.

Reader: struct-field-type (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

type.

Reader: struct-field-type (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

type.

Function: struct-or-class (&key classname constructor superclass fields mode)
Package

coalton-impl/codegen/struct-or-class.

Source

struct-or-class.lisp.

Reader: struct-or-class-field-name (instance)
Package

coalton-impl/codegen/struct-or-class.

Source

struct-or-class.lisp.

Target Slot

name.

Reader: struct-or-class-field-type (instance)
Package

coalton-impl/codegen/struct-or-class.

Source

struct-or-class.lisp.

Target Slot

type.

Function: subdirectories (dict2287 path-3243)

SUBDIRECTORIES :: ∀ A. INTO A PATHNAME ⇒ (A → (RESULT FILEERROR (LIST PATHNAME)))
Returns all subdirectories within the directory. Returns an error if the pathname is not a directory pathname.

Package

coalton-library/file.

Source

file.lisp.

Reader: substitution-from (instance)
Package

coalton-impl/typechecker/substitutions.

Source

substitutions.lisp.

Target Slot

from.

Function: substitution-p (object)
Package

coalton-impl/typechecker/substitutions.

Source

substitutions.lisp.

Reader: substitution-to (instance)
Package

coalton-impl/typechecker/substitutions.

Source

substitutions.lisp.

Target Slot

to.

Function: substring (str-2431 start-2432 end-2433)

SUBSTRING :: (STRING → UFIX → UFIX → STRING)
Compute a substring of a string bounded by given indices.

Package

coalton-library/string.

Source

string.lisp.

Function: substring-index (small-2452 big-2453)

SUBSTRING-INDEX :: (STRING → STRING → (OPTIONAL UFIX))
If the first argument appears as a substring within the second argument, return the starting index into the second argument.

Package

coalton-library/string.

Source

string.lisp.

Function: substring? (small-2454 big-2455)

SUBSTRING? :: (STRING → STRING → BOOLEAN)
Return true if the first argument appears as a substring within the second argument.

Package

coalton-library/string.

Source

string.lisp.

Function: sum (dict1778 xs-2249)

SUM :: ∀ A. NUM A ⇒ ((LIST A) → A) Returns the sum of XS

Package

coalton-library/list.

Source

list.lisp.

Function: sum! (dict1564 iter-1742)

SUM! :: ∀ A. NUM A ⇒ ((ITERATOR A) → A) Add together all the elements of ITER.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: swap! (cel-1552 data-1553)

SWAP! :: ∀ A. ((CELL A) → A → A)
Replace the value of a mutable cell with a new value, then return the old value

Package

coalton-library/cell.

Source

cell.lisp.

Function: swap-remove! (idx-2358 vec-2359)

SWAP-REMOVE! :: ∀ A. (UFIX → (VECTOR A) → (OPTIONAL A))
Remove the element ‘idx‘ from ‘vec‘ and replace it with the last element in ‘vec‘. Then return the removed element.

Package

coalton-library/vector.

Source

vector.lisp.

Function: swap-remove-unsafe! (idx-2360 vec-2361)

SWAP-REMOVE-UNSAFE! :: ∀ A. (UFIX → (VECTOR A) → A)
Remove the element ‘idx‘ from ‘vec‘ and replace it with the last element in ‘vec‘ without bounds checking. Then return the removed element.

Package

coalton-library/vector.

Source

vector.lisp.

Function: system-relative-pathname (dict2291 system-name-3251 name-3252)

SYSTEM-RELATIVE-PATHNAME :: ∀ A. INTO A STRING ⇒ (A → STRING → (RESULT FILEERROR PATHNAME))
Generates a system-relative-pathname for a given filename or path. This is a wrapper for ‘asdf:system-relative-pathname‘. ‘Name‘ will likely be an empty string unless a subdirectory or filename is specified.

Package

coalton-library/file.

Source

file.lisp.

Function: tail (l-1991)

TAIL :: ∀ A. ((LIST A) → (OPTIONAL (LIST A))) Returns every element except the first in a list.

Package

coalton-library/list.

Source

list.lisp.

Function: take (n list)
Package

coalton-impl/util.

Source

utilities.lisp.

Function: take (n-2018 xs-2019)

TAKE :: ∀ A. (UFIX → (LIST A) → (LIST A)) Returns the first N elements of a list.

Package

coalton-library/list.

Source

list.lisp.

Function: take! (count-1713 iter-1714)

TAKE! :: ∀ A. (UFIX → (ITERATOR A) → (ITERATOR A))
An ‘Iterator‘ which yields at most COUNT elements from ITER.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: take-until (pred list)

Splits LIST into two lists on the element where PRED first returns true

Package

coalton-impl/util.

Source

utilities.lisp.

Function: tan (dict _0)

TAN :: ∀ A. TRIGONOMETRIC A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Function: tanh (dict1076 x-1310)

TANH :: ∀ A. ELEMENTARY A ⇒ (A → A)

Package

coalton-library/math/elementary.

Source

elementary.lisp.

Reader: tapp-from (instance)
Package

coalton-impl/parser/types.

Source

types.lisp.

Target Slot

from.

Reader: tapp-from (instance)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Target Slot

from.

Function: tapp-p (object)
Package

coalton-impl/parser/types.

Source

types.lisp.

Function: tapp-p (object)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Reader: tapp-to (instance)
Package

coalton-impl/parser/types.

Source

types.lisp.

Target Slot

to.

Reader: tapp-to (instance)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Target Slot

to.

Function: tarjan-scc (dag)

Perform Tarjan’s strongly-connected component algorithm on DAG.

DAG is of format ((node-name dependency*) (...)
)
where all names and dependencies are symbols

Package

coalton-impl/algorithm/tarjan-scc.

Source

tarjan-scc.lisp.

Function: tc-env-add-definition (env name scheme)

Add a type named NAME to ENV.

Package

coalton-impl/typechecker/tc-env.

Source

tc-env.lisp.

Function: tc-env-add-variable (env name)

Add a variable named NAME to ENV and return the scheme.

Package

coalton-impl/typechecker/tc-env.

Source

tc-env.lisp.

Function: tc-env-bindings-variables (env names)
Package

coalton-impl/typechecker/tc-env.

Source

tc-env.lisp.

Function: tc-env-bound-variables (env)
Package

coalton-impl/typechecker/tc-env.

Source

tc-env.lisp.

Reader: tc-env-env (instance)
Package

coalton-impl/typechecker/tc-env.

Source

tc-env.lisp.

Target Slot

env.

Function: tc-env-lookup-value (env var)

Lookup the type of a variable named VAR in ENV.

Package

coalton-impl/typechecker/tc-env.

Source

tc-env.lisp.

Function: tc-env-replace-type (env name scheme)
Package

coalton-impl/typechecker/tc-env.

Source

tc-env.lisp.

Reader: tc-env-ty-table (instance)
Package

coalton-impl/typechecker/tc-env.

Source

tc-env.lisp.

Target Slot

ty-table.

Function: tc-error (message &rest notes)

Signal a typechecker error with MESSAGE, and optional NOTES that label source locations.

Package

coalton-impl/typechecker/base.

Source

base.lisp.

Function: tc-location (location format-string &rest format-args)
Package

coalton-impl/typechecker/base.

Source

base.lisp.

Function: tc-note (located format-string &rest format-args)
Package

coalton-impl/typechecker/base.

Source

base.lisp.

Function: tc-secondary-location (location format-string &rest format-args)
Package

coalton-impl/typechecker/base.

Source

base.lisp.

Function: tc-secondary-note (located format-string &rest format-args)
Package

coalton-impl/typechecker/base.

Source

base.lisp.

Reader: tgen-id (instance)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Target Slot

id.

Function: tgen-p (object)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: time (f-3190)

TIME :: ∀ A. ((UNIT → A) → (TUPLE A INTEGER))
Run the thunk ‘f‘ and return a tuple containing its value along with the run time in microseconds.

While the result will always contain microseconds, some implementations may return a value rounded to less precision (e.g., rounded to the nearest second or millisecond).

Package

coalton-library/system.

Source

system.lisp.

Function: to-fraction (dict _0)

TO-FRACTION :: ∀ A. RATIONAL A ⇒ (A → FRACTION)

Package

coalton-library/math/real.

Source

real.lisp.

Function: tointeger (dict _0)

TOINTEGER :: ∀ A. INTEGRAL A ⇒ (A → INTEGER)

Package

coalton-library/math/integral.

Source

integral.lisp.

Reader: toplevel-declare-monomorphize (instance)
Writer: (setf toplevel-declare-monomorphize) (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

monomorphize.

Reader: toplevel-declare-name (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

name.

Reader: toplevel-declare-type (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

type.

Function: toplevel-define (defines declares env)

Entrypoint for typechecking a group of parsed defines and declares.

Package

coalton-impl/typechecker/toplevel.

Source

define.lisp.

Reader: toplevel-define-body (instance)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Target Slot

body.

Reader: toplevel-define-body (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

body.

Function: toplevel-define-class (classes env)
Package

coalton-impl/typechecker/define-class.

Source

define-class.lisp.

Reader: toplevel-define-class-fundeps (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

fundeps.

Reader: toplevel-define-class-head-location (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

head-location.

Reader: toplevel-define-class-methods (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

methods.

Reader: toplevel-define-class-name (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

name.

Reader: toplevel-define-class-preds (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

preds.

Reader: toplevel-define-class-vars (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

vars.

Function: toplevel-define-instance (instances env)
Package

coalton-impl/typechecker/toplevel.

Source

define-instance.lisp.

Reader: toplevel-define-instance-compiler-generated (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

compiler-generated.

Reader: toplevel-define-instance-context (instance)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Target Slot

context.

Reader: toplevel-define-instance-context (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

context.

Reader: toplevel-define-instance-head-location (instance)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Target Slot

head-location.

Reader: toplevel-define-instance-head-location (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

head-location.

Reader: toplevel-define-instance-methods (instance)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Target Slot

methods.

Reader: toplevel-define-instance-methods (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

methods.

Reader: toplevel-define-instance-pred (instance)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Target Slot

pred.

Reader: toplevel-define-instance-pred (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

pred.

Reader: toplevel-define-monomorphize (instance)
Writer: (setf toplevel-define-monomorphize) (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

monomorphize.

Reader: toplevel-define-name (instance)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Target Slot

name.

Reader: toplevel-define-name (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

name.

Reader: toplevel-define-orig-params (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

orig-params.

Reader: toplevel-define-params (instance)
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Target Slot

params.

Reader: toplevel-define-params (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

params.

Reader: toplevel-define-struct-fields (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

fields.

Reader: toplevel-define-struct-head-location (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

head-location.

Reader: toplevel-define-struct-name (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

name.

Reader: toplevel-define-struct-repr (instance)
Writer: (setf toplevel-define-struct-repr) (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

repr.

Reader: toplevel-define-struct-vars (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

vars.

Function: toplevel-define-type (types structs env)
Package

coalton-impl/typechecker/define-type.

Source

define-type.lisp.

Reader: toplevel-define-type-ctors (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

ctors.

Reader: toplevel-define-type-head-location (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

head-location.

Reader: toplevel-define-type-name (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

name.

Reader: toplevel-define-type-repr (instance)
Writer: (setf toplevel-define-type-repr) (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

repr.

Reader: toplevel-define-type-vars (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

vars.

Reader: toplevel-lisp-form-body (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

body.

Reader: toplevel-package-name (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

name.

Function: toplevel-specialize (specializations env)
Package

coalton-impl/typechecker/specialize.

Source

specialize.lisp.

Reader: toplevel-specialize-from (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

from.

Reader: toplevel-specialize-to (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

to.

Reader: toplevel-specialize-type (instance)
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Target Slot

type.

Function: toplevel-typecheck-instance (instances unparsed-instances env)
Package

coalton-impl/typechecker/define-instance.

Source

define-instance.lisp.

Function: trace (str-149)

TRACE :: (STRING → UNIT)
Print a line to ‘cl:*standard-output*‘.

Package

coalton-library/functions.

Source

functions.lisp.

Function: traceobject (str-150 item-151)

TRACEOBJECT :: ∀ A. (STRING → A → UNIT)
Print a line to ‘cl:*standard-output*‘ in the form "{STR}: {ITEM}".

Package

coalton-library/functions.

Source

functions.lisp.

Function: translate-instance (instance env)
Package

coalton-impl/codegen/translate-instance.

Source

translate-instance.lisp.

Function: translate-toplevel (binding env name &key extra-context)
Package

coalton-impl/codegen/translate-expression.

Source

translate-expression.lisp.

Reader: translation-unit-classes (instance)
Package

coalton-impl/typechecker/translation-unit.

Source

translation-unit.lisp.

Target Slot

classes.

Reader: translation-unit-definitions (instance)
Package

coalton-impl/typechecker/translation-unit.

Source

translation-unit.lisp.

Target Slot

definitions.

Reader: translation-unit-instances (instance)
Package

coalton-impl/typechecker/translation-unit.

Source

translation-unit.lisp.

Target Slot

instances.

Reader: translation-unit-lisp-forms (instance)
Package

coalton-impl/typechecker/translation-unit.

Source

translation-unit.lisp.

Target Slot

lisp-forms.

Reader: translation-unit-package (instance)
Package

coalton-impl/typechecker/translation-unit.

Source

translation-unit.lisp.

Target Slot

package.

Reader: translation-unit-types (instance)
Package

coalton-impl/typechecker/translation-unit.

Source

translation-unit.lisp.

Target Slot

types.

Function: transpose (xs-2215)

TRANSPOSE :: ∀ A. ((LIST (LIST A)) → (LIST (LIST A))) Transposes a matrix represented by a list of lists.

Package

coalton-library/list.

Source

list.lisp.

Function: traverse (initial-node custom-actions &rest initial-args)

The intended use case of ‘traverse‘ is to recursively propagate an operation through the AST when only a few nodes need custom behavior, obviating the need to copy an entire ‘defgeneric‘ for each new AST traversal. This function creates a recursive "generic" traversal with pre-, in-, and post-operations fixed by ‘custom-actions‘ (with the default traversals as a fallback), and evaluates the traversal with ‘initial-node‘ and ‘initial-args‘. The ‘:before‘ and ‘:after‘ are mainly useful if the default deep-copy recursion behavior is desired, but a small change has to be made depending on the node type, or if some external state is mutated to keep track of some information about the recursion stack. The ‘:before ’node‘ and ‘:after ’node‘ actions may also be useful for operations that must be performed uniformly on every node, such as type collection and substitution. The ‘:traverse‘ action is necessary if special traversal behavior is required, such as recursing with modified arguments.

Note that the wrapped traversal pipes the node through three actions corresponding to its original class, so it is important to not define any node-specific actions that will run after another action which may return a node of a different type. For example, if there is an action on ‘:traverse ’node-variable‘ to substitute variables with arbitrary other nodes, then it would be inappropriate to also define an action ‘:after ’node-variable‘.

Package

coalton-impl/codegen/traverse.

Source

traverse.lisp.

Function: traverse (dict _0 _1 _2)

TRAVERSE :: ∀ A B C D. (TRAVERSABLE D) (APPLICATIVE B) ⇒ ((A → (B C)) → (D A) → (B (D C)))

Package

coalton-library/classes.

Source

classes.lisp.

Function: traverse-with-binding-list (node actions)

Traverse ‘node‘ while keeping track of a list of ‘bound-variables‘ which gets passed as an argument whenever a function from ‘actions‘ gets called.

Package

coalton-impl/codegen/traverse.

Source

traverse.lisp.

Function: truncate (dict896 x-941)

TRUNCATE :: ∀ A. QUANTIZABLE A ⇒ (A → INTEGER)
Returns the integer closest/equal to ‘x‘ that is within ‘0‘ and ‘x‘.

Package

coalton-library/math/real.

Source

real.lisp.

Function: tryinto (dict _0)

TRYINTO :: ∀ A B C. TRYINTO A C B ⇒ (A → (RESULT B C))

Package

coalton-library/classes.

Source

classes.lisp.

Function: tuple (_0 _1)

TUPLE :: ∀ A B. (A → B → (TUPLE A B)) A heterogeneous collection of items.

Package

coalton-library/classes.

Source

classes.lisp.

Function: tuple3 (_0 _1 _2)

TUPLE3 :: ∀ A B C. (A → B → C → (TUPLE3 A B C))

Package

coalton-library/tuple.

Source

tuple.lisp.

Function: tuple4 (_0 _1 _2 _3)

TUPLE4 :: ∀ A B C D. (A → B → C → D → (TUPLE4 A B C D))

Package

coalton-library/tuple.

Source

tuple.lisp.

Function: tuple5 (_0 _1 _2 _3 _4)

TUPLE5 :: ∀ A B C D E. (A → B → C → D → E → (TUPLE5 A B C D E))

Package

coalton-library/tuple.

Source

tuple.lisp.

Reader: ty-class-class-variable-map (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

class-variable-map.

Reader: ty-class-class-variables (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

class-variables.

Reader: ty-class-codegen-sym (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

codegen-sym.

Reader: ty-class-fundeps (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

fundeps.

Reader: ty-class-instance-codegen-sym (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

codegen-sym.

Reader: ty-class-instance-constraints (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

constraints.

Reader: ty-class-instance-method-codegen-syms (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

method-codegen-syms.

Reader: ty-class-instance-predicate (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

predicate.

Reader: ty-class-method-name (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

name.

Reader: ty-class-method-type (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

type.

Reader: ty-class-name (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

name.

Reader: ty-class-predicate (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

predicate.

Reader: ty-class-superclass-dict (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

superclass-dict.

Reader: ty-class-superclass-map (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

superclass-map.

Reader: ty-class-superclasses (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

superclasses.

Reader: ty-class-unqualified-methods (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

unqualified-methods.

Reader: ty-predicate-class (instance)
Package

coalton-impl/parser/types.

Source

types.lisp.

Target Slot

class.

Reader: ty-predicate-class (instance)
Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Target Slot

class.

Function: ty-predicate-p (object)
Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Reader: ty-predicate-types (instance)
Package

coalton-impl/parser/types.

Source

types.lisp.

Target Slot

types.

Reader: ty-predicate-types (instance)
Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Target Slot

types.

Reader: ty-scheme-kinds (instance)
Package

coalton-impl/typechecker/scheme.

Source

scheme.lisp.

Target Slot

kinds.

Function: ty-scheme-p (object)
Package

coalton-impl/typechecker/scheme.

Source

scheme.lisp.

Reader: ty-scheme-type (instance)
Package

coalton-impl/typechecker/scheme.

Source

scheme.lisp.

Target Slot

type.

Reader: tycon-kind (instance)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Target Slot

kind.

Reader: tycon-name (instance)
Package

coalton-impl/parser/types.

Source

types.lisp.

Target Slot

name.

Reader: tycon-name (instance)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Target Slot

name.

Function: tycon-p (object)
Package

coalton-impl/parser/types.

Source

types.lisp.

Function: tycon-p (object)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: type-constructors (type)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Reader: type-definition-constructor-types (instance)
Package

coalton-impl/typechecker/define-type.

Source

define-type.lisp.

Target Slot

constructor-types.

Reader: type-definition-constructors (instance)
Package

coalton-impl/typechecker/define-type.

Source

define-type.lisp.

Target Slot

constructors.

Reader: type-definition-docstring (instance)
Package

coalton-impl/typechecker/define-type.

Source

define-type.lisp.

Target Slot

docstring.

Reader: type-definition-enum-repr (instance)
Package

coalton-impl/typechecker/define-type.

Source

define-type.lisp.

Target Slot

enum-repr.

Reader: type-definition-explicit-repr (instance)
Package

coalton-impl/typechecker/define-type.

Source

define-type.lisp.

Target Slot

explicit-repr.

Reader: type-definition-name (instance)
Package

coalton-impl/typechecker/define-type.

Source

define-type.lisp.

Target Slot

name.

Reader: type-definition-newtype (instance)
Package

coalton-impl/typechecker/define-type.

Source

define-type.lisp.

Target Slot

newtype.

Reader: type-definition-runtime-type (instance)
Package

coalton-impl/typechecker/define-type.

Source

define-type.lisp.

Target Slot

runtime-type.

Reader: type-definition-type (instance)
Package

coalton-impl/typechecker/define-type.

Source

define-type.lisp.

Target Slot

type.

Reader: type-entry-constructors (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

constructors.

Reader: type-entry-enum-repr (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

enum-repr.

Reader: type-entry-explicit-repr (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

explicit-repr.

Reader: type-entry-name (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

name.

Reader: type-entry-newtype (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

newtype.

Reader: type-entry-runtime-type (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

runtime-type.

Reader: type-entry-type (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

type.

Reader: type-entry-tyvars (instance)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Target Slot

tyvars.

Function: type-of (symbol)

Lookup the type of value SYMBOL in the global environment

Package

coalton.

Source

debug.lisp.

Function: type-predicate= (pred1 pred2)
Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Reader: tyvar-id (instance)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Target Slot

id.

Reader: tyvar-kind (instance)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Target Slot

kind.

Reader: tyvar-name (instance)
Package

coalton-impl/parser/types.

Source

types.lisp.

Target Slot

name.

Function: tyvar-p (object)
Package

coalton-impl/parser/types.

Source

types.lisp.

Function: tyvar-p (object)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Function: uncurry (func-180 tpl-181)

UNCURRY :: ∀ A B C. ((A → B → C) → (TUPLE A B) → C)
Take a function with two currying parameters and enable their input as a single ‘Tuple‘.

Package

coalton-library/functions.

Source

functions.lisp.

Function: undefined (_734)

UNDEFINED :: ∀ A B. (A → B)
A function which can be used in place of any value, throwing an error at runtime.

Package

coalton-library/builtin.

Source

builtin.lisp.

Function: unify (substs type1 type2)

Unify TYPE1 and TYPE2 under given substitutions, returning an updated substitution list

Package

coalton-impl/typechecker/unify.

Source

unify.lisp.

Function: unify-list (subs list1 list2)
Package

coalton-impl/typechecker/unify.

Source

unify.lisp.

Function: union (dict1765 xs-2078 ys-2079)

UNION :: ∀ A. EQ A ⇒ ((LIST A) → (LIST A) → (LIST A))
Returns a new list with the elements from both XS and YS and without duplicates.

Package

coalton-library/list.

Source

list.lisp.

Function: unsafe-aref (dict _0 _1)

UNSAFE-AREF :: ∀ A B. RANDOMACCESS A B ⇒ (A → UFIX → B)

Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Function: unsafe-pointer-eq? (a-153 b-154)

UNSAFE-POINTER-EQ? :: ∀ A. (A → A → BOOLEAN)

Package

coalton-library/functions.

Source

functions.lisp.

Function: unsafe-set! (dict _0 _1 _2)

UNSAFE-SET! :: ∀ A B. RANDOMACCESS A B ⇒ (A → UFIX → B → UNIT)

Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Function: unset-constructor (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: unset-function (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: unset-function-source-parameter-names (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: unset-name (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: unset-struct (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: unset-value-type (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: unwrap (dict665 container-39)

UNWRAP :: ∀ A B. UNWRAPPABLE A ⇒ ((A B) → B) Unwrap ‘container‘, signaling an error on failure.

Package

coalton-library/classes.

Source

classes.lisp.

Function: unwrap-or-else (dict _0 _1 _2)

UNWRAP-OR-ELSE :: ∀ A B C. UNWRAPPABLE C ⇒ ((A → B) → (UNIT → B) → (C A) → B)

Package

coalton-library/classes.

Source

classes.lisp.

Function: unwrapped! (dict1558 iter-1710)

UNWRAPPED! :: ∀ A B. UNWRAPPABLE A ⇒ ((ITERATOR (A B)) → (ITERATOR B))

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: up-through (dict1542 dict1543 limit-1660)

UP-THROUGH :: ∀ A. (NUM A) (ORD A) ⇒ (A → (ITERATOR A))
An iterator which begins at zero and counts up through and including LIMIT.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: up-to (dict1540 dict1541 limit-1659)

UP-TO :: ∀ A. (NUM A) (ORD A) ⇒ (A → (ITERATOR A))
An iterator which begins at zero and counts up to, but not including, LIMIT.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: upcase (c-2418)

UPCASE :: (CHAR → CHAR)
Returns the upcased version of C, returning C when there is none.

Package

coalton-library/char.

Source

char.lisp.

Function: update (dict2075 func-2896 mp-2897 key-2898)

UPDATE :: ∀ A B. ORD B ⇒ ((A → A) → (MAP B A) → B → (OPTIONAL (MAP B A)))
Apply FUNC to the value corresponding to KEY in MP, returning a new ‘Map’ which maps KEY to the result of the function.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Function: update! (f-1556 cel-1557)

UPDATE! :: ∀ A. ((A → A) → (CELL A) → A)
Apply F to the contents of CEL, storing and returning the result

Package

coalton-library/cell.

Source

cell.lisp.

Function: update-instance-fundeps (&rest args)
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Function: update-swap! (f-1558 cel-1559)

UPDATE-SWAP! :: ∀ A. ((A → A) → (CELL A) → A)
Apply F to the contents of CEL, swapping the result for the old value

Package

coalton-library/cell.

Source

cell.lisp.

Function: uppercase? (c-2414)

UPPERCASE? :: (CHAR → BOOLEAN) Is C an uppercase character?

Package

coalton-library/char.

Source

char.lisp.

Function: useful-pattern-p (patterns pattern env)

Is PATTERN useful within list PATTERNS? PATTERN must EQ one element of PATTERNS.

Package

coalton-impl/analysis/pattern-exhaustiveness.

Source

pattern-exhaustiveness.lisp.

Function: val (_0)

VAL :: ∀ A B. (B → ((FREE A) B))

Package

coalton-library/monad/free.

Source

monad/free.lisp.

Function: values (table-2549)

VALUES :: ∀ A B. ((HASHTABLE A B) → (ITERATOR B)) Returns the values in TABLE as a list

Package

coalton-library/hashtable.

Source

hashtable.lisp.

Function: values (mp-2888)

VALUES :: ∀ A B. ((MAP A B) → (ITERATOR B))
Iterate over the values in MP, sorted by their corresponding keys in least-to-greatest order.

Package

coalton-library/ord-map.

Source

ord-map.lisp.

Function: warn (message note &rest notes)

Signal a warning related to one or more source locations.

Package

coalton-impl/source.

Source

source.lisp.

Function: with-capacity (dict1925 capacity-2534)

WITH-CAPACITY :: ∀ A B. HASH A ⇒ (INTEGER → (HASHTABLE A B)) Create a new empty hashtable with a given capacity

Package

coalton-library/hashtable.

Source

hashtable.lisp.

Function: with-capacity (n-2322)

WITH-CAPACITY :: ∀ A. (UFIX → (VECTOR A)) Create a new vector with ‘n‘ elements preallocated.

Package

coalton-library/vector.

Source

vector.lisp.

Function: with-default (dict667 default-41 container-42)

WITH-DEFAULT :: ∀ A B. UNWRAPPABLE B ⇒ (A → (B A) → A) Unwrap ‘container‘, returning ‘default‘ on failure.

Package

coalton-library/classes.

Source

classes.lisp.

Function: with-initial-element (n-2323 x-2324)

WITH-INITIAL-ELEMENT :: ∀ A. (UFIX → A → (VECTOR A)) Create a new vector with ‘n‘ elements equal to ‘x‘.

Package

coalton-library/vector.

Source

vector.lisp.

Function: with-open-file (dict2315 stream-options-3344 thunk-3345)

WITH-OPEN-FILE :: ∀ A B. FILE A ⇒ (STREAMOPTIONS → ((FILESTREAM A) → (RESULT FILEERROR B)) → (RESULT FILEERROR B)) Opens a file stream, performs ‘thunk‘ on it, then closes the stream.

Package

coalton-library/file.

Source

file.lisp.

Function: with-size (f-1635 size-1636)

WITH-SIZE :: ∀ A. ((UNIT → (OPTIONAL A)) → UFIX → (ITERATOR A))

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: with-temp-directory (thunk-3369)

WITH-TEMP-DIRECTORY :: ∀ A. ((PATHNAME → (RESULT FILEERROR A)) → (RESULT FILEERROR A)) Performs an operation ‘thunk‘ inside a temporary directory.

Package

coalton-library/file.

Source

file.lisp.

Function: with-temp-file (dict2326 file-type-3366 thunk-3367)

WITH-TEMP-FILE :: ∀ A B. FILE A ⇒ (STRING → ((FILESTREAM A) → (RESULT FILEERROR B)) → (RESULT FILEERROR B)) Performs an operation ‘thunk‘ on a temporary file. File type extensions need to include ‘.‘, like ".txt".

Package

coalton-library/file.

Source

file.lisp.

Function: writable? (dict _0)

WRITABLE? :: ∀ A B. RANDOMACCESS B A ⇒ (B → BOOLEAN)

Package

coalton-library/randomaccess.

Source

randomaccess.lisp.

Function: write (dict _0 _1)

WRITE :: ∀ A. FILE A ⇒ ((FILESTREAM A) → A → (RESULT FILEERROR UNIT))

Package

coalton-library/file.

Source

file.lisp.

Function: write! (cel-1554 data-1555)

WRITE! :: ∀ A. ((CELL A) → A → A)
Set the value of a mutable cell, returning the new value

Package

coalton-library/cell.

Source

cell.lisp.

Function: write-char (stream-3278 data-3279)

WRITE-CHAR :: ((FILESTREAM CHAR) → CHAR → (RESULT FILEERROR UNIT)) Writes a ‘Char‘ to the stream.

Package

coalton-library/file.

Source

file.lisp.

Function: write-line (stream-3359 s-3360)

WRITE-LINE :: ((FILESTREAM CHAR) → STRING → (RESULT FILEERROR UNIT)) Writes a string with an appended newline to a filestream of type Char.

Package

coalton-library/file.

Source

file.lisp.

Function: write-string (fs-3357 s-3358)

WRITE-STRING :: ((FILESTREAM CHAR) → STRING → (RESULT FILEERROR UNIT)) Writes a ‘string‘ to a FileStream of type Char.

Package

coalton-library/file.

Source

file.lisp.

Function: write-to-file! (dict2332 dict2333 dict2334 path-3373 data-3374)

WRITE-TO-FILE! :: ∀ A B. (RUNTIMEREPR B) (INTO A PATHNAME) (FILE B) ⇒ (A → (VECTOR B) → (RESULT FILEERROR UNIT)) Opens and writes to a file with data of type :a. Supersedes existing data on the file.

Package

coalton-library/file.

Source

file.lisp.

Function: write-vector (dict2319 dict2320 stream-3355 v-3356)

WRITE-VECTOR :: ∀ A. (RUNTIMEREPR A) (FILE A) ⇒ ((FILESTREAM A) → (VECTOR A) → (RESULT FILEERROR UNIT)) Writes elements of an vector of type ‘:a‘ to a stream of type ‘:a‘.

Package

coalton-library/file.

Source

file.lisp.

Function: xor (dict _0 _1)

XOR :: ∀ A. BITS A ⇒ (A → A → A)
The bitwise logical exclusive ‘or‘ of two integers

Package

coalton-library/bits.

Source

bits.lisp.

Function: xor (x-735 y-736)

XOR :: (BOOLEAN → BOOLEAN → BOOLEAN) Synonym for ‘boolean-xor‘.

Package

coalton-library/builtin.

Source

builtin.lisp.

Function: zero? (dict791 x-212)

ZERO? :: ∀ A. NUM A ⇒ (A → BOOLEAN) Is ‘x‘ zero?

Package

coalton-library/math/arith.

Source

arith.lisp.

Function: zip (xs-2185 ys-2186)

ZIP :: ∀ A B. ((LIST A) → (LIST B) → (LIST (TUPLE A B))) Builds a list of tuples with the elements of XS and YS.

Package

coalton-library/list.

Source

list.lisp.

Function: zip-with! (f-1687 left-1688 right-1689)

ZIP-WITH! :: ∀ A B C. ((A → B → C) → (ITERATOR A) → (ITERATOR B) → (ITERATOR C))
Return an iterator of elements from LEFT and RIGHT which terminates as soon as either LEFT or RIGHT does.

Package

coalton-library/iterator.

Source

iterator.lisp.

Function: zipwith (f-2117 xs-2118 ys-2119)

ZIPWITH :: ∀ A B C. ((A → B → C) → (LIST A) → (LIST B) → (LIST C)) Builds a new list by calling ‘f‘ with elements of ‘xs‘ and ‘ys‘.

Package

coalton-library/list.

Source

list.lisp.

Function: zipwith3 (f-2128 xs-2129 ys-2130 zs-2131)

ZIPWITH3 :: ∀ A B C D. ((A → B → C → D) → (LIST A) → (LIST B) → (LIST C) → (LIST D)) Build a new list by calling F with elements of XS, YS and ZS

Package

coalton-library/list.

Source

list.lisp.

Function: zipwith4 (f-2143 as-2144 bs-2145 cs-2146 ds-2147)

ZIPWITH4 :: ∀ A B C D E. ((A → B → C → D → E) → (LIST A) → (LIST B) → (LIST C) → (LIST D) → (LIST E)) Build a new list by calling F with elements of AS, BS, CS and DS

Package

coalton-library/list.

Source

list.lisp.

Function: zipwith5 (f-2162 as-2163 bs-2164 cs-2165 ds-2166 es-2167)

ZIPWITH5 :: ∀ A B C D E F. ((A → B → C → D → E → F) → (LIST A) → (LIST B) → (LIST C) → (LIST D) → (LIST E) → (LIST F)) Build a new list by calling F with elements of AS, BS, CS, DS and ES

Package

coalton-library/list.

Source

list.lisp.


6.1.7 Generic functions

Generic Reader: ambiguous-constraint-pred (condition)
Package

coalton-impl/typechecker/type-errors.

Methods
Reader Method: ambiguous-constraint-pred ((condition ambiguous-constraint))
Source

type-errors.lisp.

Target Slot

pred.

Generic Function: apply-ksubstitution (subs kind)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Methods
Method: apply-ksubstitution (ksubs (partial partial-class))
Source

define-class.lisp.

Method: apply-ksubstitution (subs (type qualified-ty))
Source

predicate.lisp.

Method: apply-ksubstitution (subs (type ty-predicate))
Source

predicate.lisp.

Method: apply-ksubstitution (subs (type tapp))
Source

types.lisp.

Method: apply-ksubstitution (subs (type tycon))
Source

types.lisp.

Method: apply-ksubstitution (subs (type tyvar))
Source

types.lisp.

Method: apply-ksubstitution (subs (kind kstar))
Method: apply-ksubstitution (subs (kind kfun))
Method: apply-ksubstitution (subs (kind kyvar))
Method: apply-ksubstitution (subs (kind list))
Generic Function: apply-substitution (subst-list type)

Apply the substitutions defined in SUBST-LIST on TYPE.

Package

coalton-impl/typechecker/substitutions.

Source

substitutions.lisp.

Methods
Method: apply-substitution (subs (node node))

Substitute type variables in the tree of ‘node‘ with other types specified in ‘subs‘.

Source

transformations.lisp.

Method: apply-substitution (subs (pattern pattern-constructor))
Source

pattern.lisp.

Method: apply-substitution (subs (pattern pattern-wildcard))
Source

pattern.lisp.

Method: apply-substitution (subs (pattern pattern-literal))
Source

pattern.lisp.

Method: apply-substitution (subs (pattern pattern-var))
Source

pattern.lisp.

Method: apply-substitution (subs (env tc-env))

Applies SUBS to the types currently being checked in ENV. Does not update the types in the inner main environment because there should not be substitutions for them.

Source

tc-env.lisp.

Method: apply-substitution (subs (accessor accessor))
Source

accessor.lisp.

Method: apply-substitution (subs (method instance-method-definition))
Source

toplevel.lisp.

Method: apply-substitution (subs (node toplevel-define))
Source

toplevel.lisp.

Method: apply-substitution (subs (node node-do))
Source

expression.lisp.

Method: apply-substitution (subs (node node-do-bind))
Source

expression.lisp.

Method: apply-substitution (subs (node node-cond))
Source

expression.lisp.

Method: apply-substitution (subs (node node-cond-clause))
Source

expression.lisp.

Method: apply-substitution (subs (node node-continue))
Source

expression.lisp.

Method: apply-substitution (subs (node node-break))
Source

expression.lisp.

Method: apply-substitution (subs (node node-loop))
Source

expression.lisp.

Method: apply-substitution (subs (node node-for))
Source

expression.lisp.

Method: apply-substitution (subs (node node-while-let))
Source

expression.lisp.

Method: apply-substitution (subs (node node-while))
Source

expression.lisp.

Method: apply-substitution (subs (node node-unless))
Source

expression.lisp.

Method: apply-substitution (subs (node node-when))
Source

expression.lisp.

Method: apply-substitution (subs (node node-if))
Source

expression.lisp.

Method: apply-substitution (subs (node node-and))
Source

expression.lisp.

Method: apply-substitution (subs (node node-or))
Source

expression.lisp.

Method: apply-substitution (subs (node node-application))
Source

expression.lisp.

Method: apply-substitution (subs (node node-return))
Source

expression.lisp.

Method: apply-substitution (subs (node node-progn))
Source

expression.lisp.

Method: apply-substitution (subs (node node-match))
Source

expression.lisp.

Method: apply-substitution (subs (node node-match-branch))
Source

expression.lisp.

Method: apply-substitution (subs (node node-lisp))
Source

expression.lisp.

Method: apply-substitution (subs (node node-let))
Source

expression.lisp.

Method: apply-substitution (subs (node node-let-binding))
Source

expression.lisp.

Method: apply-substitution (subs (node node-abstraction))
Source

expression.lisp.

Method: apply-substitution (subs (node node-body))
Source

expression.lisp.

Method: apply-substitution (subs (node node-bind))
Source

expression.lisp.

Method: apply-substitution (subs (node node-integer-literal))
Source

expression.lisp.

Method: apply-substitution (subs (node node-literal))
Source

expression.lisp.

Method: apply-substitution (subs (node node-accessor))
Source

expression.lisp.

Method: apply-substitution (subs (node node-variable))
Source

expression.lisp.

Method: apply-substitution (subs (node pattern-constructor))
Source

pattern.lisp.

Method: apply-substitution (subs (node pattern-wildcard))
Source

pattern.lisp.

Method: apply-substitution (subs (node pattern-literal))
Source

pattern.lisp.

Method: apply-substitution (subs (node pattern-var))
Source

pattern.lisp.

Method: apply-substitution (subst-list (env environment))
Source

environment.lisp.

Method: apply-substitution (subst-list (instance ty-class-instance))
Source

environment.lisp.

Method: apply-substitution (subst-list (class ty-class))
Source

environment.lisp.

Method: apply-substitution (subst-list (env value-environment))
Source

environment.lisp.

Method: apply-substitution (subst-list (type ty-scheme))
Source

scheme.lisp.

Method: apply-substitution (subst-list (type qualified-ty))
Source

predicate.lisp.

Method: apply-substitution (subst-list (type ty-predicate))
Source

predicate.lisp.

Method: apply-substitution (subst-list (type tyvar))
Method: apply-substitution (subst-list (type tapp))
Method: apply-substitution (subst-list (type ty))
Method: apply-substitution (subst-list (type-list list))
Generic Function: attach-explicit-binding-type (binding explicit-type)
Package

coalton-impl/typechecker/define.

Source

define.lisp.

Methods
Method: attach-explicit-binding-type ((binding toplevel-define) explicit-type)
Method: attach-explicit-binding-type ((binding node-let-binding) explicit-type)
Method: attach-explicit-binding-type ((binding instance-method-definition) explicit-type)
Generic Function: binding-function-p (binding)

Returns t if BINDING is a lambda.

Package

coalton-impl/parser/binding.

Source

binding.lisp.

Methods
Method: binding-function-p ((binding node-let-binding))
Method: binding-function-p ((binding toplevel-define))
Method: binding-function-p ((binding instance-method-definition))
Generic Function: binding-last-node (binding)

Returns the last node in BINDING

Package

coalton-impl/parser/binding.

Source

binding.lisp.

Methods
Method: binding-last-node ((binding node-let-binding))
Method: binding-last-node ((binding toplevel-define))
Method: binding-last-node ((binding instance-method-definition))
Generic Function: binding-last-node (binding)

Returns the last node in BINDING

Package

coalton-impl/typechecker/binding.

Source

binding.lisp.

Methods
Method: binding-last-node ((binding node-let-binding))
Method: binding-last-node ((binding toplevel-define))
Method: binding-last-node ((binding instance-method-definition))
Generic Function: binding-name (binding)

Returns the name that BINDING binds

Package

coalton-impl/parser/binding.

Source

binding.lisp.

Methods
Method: binding-name ((binding node-let-binding))
Method: binding-name ((binding toplevel-define))
Method: binding-name ((binding instance-method-definition))
Generic Function: binding-parameters (binding)

Returns the parameters bound in BINDING

Package

coalton-impl/parser/binding.

Source

binding.lisp.

Methods
Method: binding-parameters ((binding node-let-binding))
Method: binding-parameters ((binding toplevel-define))
Method: binding-parameters ((binding instance-method-definition))
Generic Function: binding-parameters (binding)

Returns the parameters of BINDING

Package

coalton-impl/typechecker/binding.

Source

binding.lisp.

Methods
Method: binding-parameters ((binding node-let-binding))
Method: binding-parameters ((binding toplevel-define))
Method: binding-parameters ((binding instance-method-definition))
Generic Function: binding-restricted-p (binding)

Returns t if BINDING is restricted

Package

coalton-impl/typechecker/binding.

Source

binding.lisp.

Methods
Method: binding-restricted-p ((binding node-let-binding))
Method: binding-restricted-p ((binding toplevel-define))
Method: binding-restricted-p ((binding instance-method-definition))
Generic Function: binding-toplevel-p (binding)

Returns t if BINDING is a toplevel binding.

Package

coalton-impl/parser/binding.

Source

binding.lisp.

Methods
Method: binding-toplevel-p ((binding node-let-binding))
Method: binding-toplevel-p ((binding toplevel-define))
Method: binding-toplevel-p ((binding instance-method-definition))
Generic Function: binding-type (binding)

Returns the type of BINDING

Package

coalton-impl/typechecker/binding.

Source

binding.lisp.

Methods
Method: binding-type ((binding node-let-binding))
Method: binding-type ((binding toplevel-define))
Method: binding-type ((binding instance-method-definition))
Generic Function: binding-value (binding)

Returns the value that BINDING binds

Package

coalton-impl/parser/binding.

Source

binding.lisp.

Methods
Method: binding-value ((binding node-let-binding))
Method: binding-value ((binding toplevel-define))
Method: binding-value ((binding instance-method-definition))
Generic Function: binding-value (binding)

Returns the value bound by BINDING

Package

coalton-impl/typechecker/binding.

Source

binding.lisp.

Methods
Method: binding-value ((binding node-let-binding))
Method: binding-value ((binding toplevel-define))
Method: binding-value ((binding instance-method-definition))
Generic Function: codegen-expression (node env)
Package

coalton-impl/codegen/codegen-expression.

Source

codegen-expression.lisp.

Methods
Method: codegen-expression ((node node-literal) env)
Method: codegen-expression ((node node-variable) env)
Method: codegen-expression ((node node-application) env)
Method: codegen-expression ((node node-direct-application) env)
Method: codegen-expression ((expr node-abstraction) env)
Method: codegen-expression ((expr node-let) env)
Method: codegen-expression ((expr node-lisp) env)
Method: codegen-expression ((expr node-while) env)
Method: codegen-expression ((expr node-while-let) env)
Method: codegen-expression ((expr node-loop) env)
Method: codegen-expression ((expr node-break) env)
Method: codegen-expression ((expr node-continue) env)
Method: codegen-expression ((expr node-match) env)
Method: codegen-expression ((expr node-seq) env)
Method: codegen-expression ((expr node-return-from) env)
Method: codegen-expression ((expr node-block) env)
Method: codegen-expression ((expr node-field) env)
Method: codegen-expression ((expr node-dynamic-extent) env)
Method: codegen-expression ((expr node-bind) env)
Generic Function: codegen-pattern (pattern expr env)

Codegen the match branch PATTERN on lisp value EXPR, returning (VALUES PREDICATE BINDINGS).

Package

coalton-impl/codegen/codegen-pattern.

Source

codegen-pattern.lisp.

Methods
Method: codegen-pattern ((pattern pattern-var) expr env)
Method: codegen-pattern ((pattern pattern-wildcard) expr env)
Method: codegen-pattern ((pattern pattern-literal) expr env)
Method: codegen-pattern ((pattern pattern-constructor) expr env)
Generic Function: docstring (object)

The docstring accompanying a Coalton object’s definition.

Package

coalton-impl/source.

Source

source.lisp.

Methods
Method: docstring ((self type-definition))
Source

define-type.lisp.

Method: docstring ((self name-entry))
Source

environment.lisp.

Method: docstring ((self ty-class-instance))
Source

environment.lisp.

Method: docstring ((self ty-class))
Source

environment.lisp.

Method: docstring ((self ty-class-method))
Source

environment.lisp.

Method: docstring ((self struct-entry))
Source

environment.lisp.

Method: docstring ((self struct-field))
Source

environment.lisp.

Method: docstring ((self constructor-entry))
Source

environment.lisp.

Method: docstring ((self type-entry))
Source

environment.lisp.

Method: docstring ((self toplevel-definition))
Source

toplevel.lisp.

Method: docstring ((self constructor))
Source

toplevel.lisp.

Generic Function: function-return-type (ty)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Methods
Method: function-return-type ((type ty-scheme))
Source

scheme.lisp.

Method: function-return-type ((type qualified-ty))
Source

predicate.lisp.

Method: function-return-type ((ty ty))
Generic Function: function-type-arguments (ty)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Methods
Method: function-type-arguments ((type ty-scheme))
Source

scheme.lisp.

Method: function-type-arguments ((type qualified-ty))
Source

predicate.lisp.

Method: function-type-arguments ((ty ty))
Generic Function: function-type-p (ty)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Methods
Method: function-type-p ((type ty-scheme))
Source

scheme.lisp.

Method: function-type-p ((type qualified-ty))
Source

predicate.lisp.

Method: function-type-p ((ty ty))
Generic Function: infer-expression-type (node expected-type subs env)

Infer the type of NODE and then unify against EXPECTED-TYPE

Returns (VALUES INFERRED-TYPE PREDICATES NODE SUBSTITUTIONS)

Package

coalton-impl/typechecker/define.

Source

define.lisp.

Methods
Method: infer-expression-type ((node node-literal) expected-type subs env)
Method: infer-expression-type ((node node-accessor) expected-type subs env)
Method: infer-expression-type ((node node-integer-literal) expected-type subs env)
Method: infer-expression-type ((node node-variable) expected-type subs env)
Method: infer-expression-type ((node node-application) expected-type subs env)
Method: infer-expression-type ((node node-bind) expected-type subs env)
Method: infer-expression-type ((node node-body) expected-type subs env)
Method: infer-expression-type ((node node-abstraction) expected-type subs env)
Method: infer-expression-type ((node node-let) expected-type subs env)
Method: infer-expression-type ((node node-lisp) expected-type subs env)
Method: infer-expression-type ((node node-match) expected-type subs env)
Method: infer-expression-type ((node node-progn) expected-type subs env)
Method: infer-expression-type ((node node-the) expected-type subs env)
Method: infer-expression-type ((node node-return) expected-type subs env)
Method: infer-expression-type ((node node-or) expected-type subs env)
Method: infer-expression-type ((node node-and) expected-type subs env)
Method: infer-expression-type ((node node-if) expected-type subs env)
Method: infer-expression-type ((node node-when) expected-type subs env)
Method: infer-expression-type ((node node-unless) expected-type subs env)
Method: infer-expression-type ((node node-while) expected-type subs env)
Method: infer-expression-type ((node node-while-let) expected-type subs env)
Method: infer-expression-type ((node node-for) expected-type subs env)
Method: infer-expression-type ((node node-loop) expected-type subs env)
Method: infer-expression-type ((node node-break) expected-type subs env)
Method: infer-expression-type ((node node-continue) expected-type subs env)
Method: infer-expression-type ((node node-cond-clause) expected-type subs env)
Method: infer-expression-type ((node node-cond) expected-type subs env)
Method: infer-expression-type ((node node-do-bind) expected-type subs env)
Method: infer-expression-type ((node node-do) expected-type subs env)
Generic Function: infer-type-kinds (type expected-kind ksubs env)
Package

coalton-impl/typechecker/parse-type.

Source

parse-type.lisp.

Methods
Method: infer-type-kinds ((type tyvar) expected-kind ksubs env)
Method: infer-type-kinds ((type tycon) expected-kind ksubs env)
Method: infer-type-kinds ((type tapp) expected-kind ksubs env)
Method: infer-type-kinds ((type qualified-ty) expected-kind ksubs env)
Generic Function: instantiate (types type)
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Methods
Method: instantiate (types (type qualified-ty))
Source

predicate.lisp.

Method: instantiate (types (type ty-predicate))
Source

predicate.lisp.

Method: instantiate (types (type tapp))
Method: instantiate (types (type tgen))
Method: instantiate (types (type ty))
Method: instantiate (types (type list))
Generic Function: kind-of (type)

Get the kind of TYPE.

Package

coalton-impl/typechecker/types.

Source

types.lisp.

Methods
Method: kind-of ((entry type-entry))
Source

environment.lisp.

Method: kind-of ((type ty-scheme))
Source

scheme.lisp.

Method: kind-of ((type qualified-ty))
Source

predicate.lisp.

Method: kind-of ((type tyvar))
Method: kind-of ((type tycon))
Method: kind-of ((type tapp))
Generic Function: kind-variables-generic% (kind)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Methods
Method: kind-variables-generic% ((partial partial-class))
Source

define-class.lisp.

Method: kind-variables-generic% ((type qualified-ty))
Source

predicate.lisp.

Method: kind-variables-generic% ((type ty-predicate))
Source

predicate.lisp.

Method: kind-variables-generic% ((type tapp))
Source

types.lisp.

Method: kind-variables-generic% ((type tycon))
Source

types.lisp.

Method: kind-variables-generic% ((type tyvar))
Source

types.lisp.

Method: kind-variables-generic% ((kind kstar))
Method: kind-variables-generic% ((kind kyvar))
Method: kind-variables-generic% ((kind kfun))
Method: kind-variables-generic% ((list list))
Generic Function: kmgu (kind1 kind2)
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Methods
Method: kmgu ((kind1 kstar) (kind2 kstar))
Method: kmgu ((kind1 kyvar) (kind2 kind))
Method: kmgu ((kind1 kind) (kind2 kyvar))
Method: kmgu ((kind1 kfun) (kind2 kfun))
Method: kmgu ((kind1 kind) (kind2 kind))
Generic Function: lisp-type (ty env)

Returns the corresponding lisp type for the type of the given node.

USE-FUNCTION-ENTRIES specifies whether to emit FUNCTION-ENTRY for functions, emitting FUNCTION when NIL. Defaults to T.

Package

coalton-impl/typechecker/lisp-type.

Source

lisp-type.lisp.

Methods
Method: lisp-type ((ty tyvar) env)
Method: lisp-type ((ty tycon) env)
Method: lisp-type ((ty tapp) env)
Method: lisp-type ((ty ty) env)
Method: lisp-type ((ty ty-scheme) env)
Method: lisp-type ((ty qualified-ty) env)
Generic Function: location (object)

The source location of a Coalton object’s definition.

Package

coalton-impl/source.

Source

source.lisp.

Methods
Method: location ((self field-definition))
Source

define-type.lisp.

Method: location ((self type-definition))
Source

define-type.lisp.

Method: location ((self accessor))
Source

accessor.lisp.

Method: location ((self toplevel-definition))
Source

toplevel.lisp.

Method: location ((self node-do-bind))
Source

expression.lisp.

Method: location ((self node-cond-clause))
Source

expression.lisp.

Method: location ((self node-match-branch))
Source

expression.lisp.

Method: location ((self node-let-binding))
Source

expression.lisp.

Method: location ((self node-bind))
Source

expression.lisp.

Method: location ((self node))
Source

expression.lisp.

Method: location ((self pattern))
Source

pattern.lisp.

Method: location ((self name-entry))
Source

environment.lisp.

Method: location ((self ty-class))
Source

environment.lisp.

Method: location ((self type-entry))
Source

environment.lisp.

Method: location ((self ty-predicate))
Source

predicate.lisp.

Method: location ((self toplevel-specialize))
Source

toplevel.lisp.

Method: location ((self toplevel-lisp-form))
Source

toplevel.lisp.

Method: location ((self instance-method-definition))
Source

toplevel.lisp.

Method: location ((self fundep))
Source

toplevel.lisp.

Method: location ((self toplevel-declare))
Source

toplevel.lisp.

Method: location ((self toplevel-definition))
Source

toplevel.lisp.

Method: location ((self constructor))
Source

toplevel.lisp.

Method: location ((self attribute))
Source

toplevel.lisp.

Method: location ((self node-do-bind))
Source

expression.lisp.

Method: location ((self node-cond-clause))
Source

expression.lisp.

Method: location ((self node-match-branch))
Source

expression.lisp.

Method: location ((self node-let-declare))
Source

expression.lisp.

Method: location ((self node-let-binding))
Source

expression.lisp.

Method: location ((self node-bind))
Source

expression.lisp.

Method: location ((self node))
Source

expression.lisp.

Method: location ((self pattern))
Source

pattern.lisp.

Method: location ((self qualified-ty))
Source

types.lisp.

Method: location ((self ty-predicate))
Source

types.lisp.

Method: location ((self ty))
Source

types.lisp.

Method: location ((self cursor))
Source

cursor.lisp.

Method: location ((self identifier-src))
Source

base.lisp.

Method: location ((self keyword-src))
Source

base.lisp.

Reader Method: location ((note note))

automatically generated reader method

Target Slot

location.

Generic Function: match (type1 type2)

Returns a SUBSTITUTION-LIST which unifies TYPE1 to TYPE2

apply s type1 == type2

Package

coalton-impl/typechecker/unify.

Source

unify.lisp.

Methods
Method: match ((type1 tapp) (type2 tapp))
Method: match ((type1 tyvar) (type2 ty))
Method: match ((type1 tycon) (type2 tycon))
Method: match ((type1 ty) (type2 ty))
Generic Reader: message (object)

The primary message associated with an object.

Package

coalton-impl/source.

Source

source.lisp.

Methods
Reader Method: message ((condition source-condition))
Target Slot

message.

Reader Method: message ((note note))

automatically generated reader method

Target Slot

message.

Generic Reader: overlapping-instance-error-inst1 (condition)
Package

coalton-impl/typechecker/type-errors.

Methods
Reader Method: overlapping-instance-error-inst1 ((condition overlapping-instance-error))
Source

type-errors.lisp.

Target Slot

inst1.

Generic Reader: overlapping-instance-error-inst2 (condition)
Package

coalton-impl/typechecker/type-errors.

Methods
Reader Method: overlapping-instance-error-inst2 ((condition overlapping-instance-error))
Source

type-errors.lisp.

Target Slot

inst2.

Generic Reader: overlapping-specialization-error-existing (condition)
Package

coalton-impl/typechecker/type-errors.

Methods
Reader Method: overlapping-specialization-error-existing ((condition overlapping-specialization-error))
Source

type-errors.lisp.

Target Slot

existing.

Generic Reader: overlapping-specialization-error-new (condition)
Package

coalton-impl/typechecker/type-errors.

Methods
Reader Method: overlapping-specialization-error-new ((condition overlapping-specialization-error))
Source

type-errors.lisp.

Target Slot

new.

Generic Function: remove-source-info (ty)
Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Methods
Method: remove-source-info ((scheme ty-scheme))
Source

scheme.lisp.

Method: remove-source-info ((pred ty-predicate))
Method: remove-source-info ((qual-ty qualified-ty))
Generic Function: source-available-p (source)

Return T if a stream containing SOURCE’s source text can be opened.

Package

source-error/error.

Source

error.lisp.

Generic Function: source-available-p (source)

Return T if a stream containing SOURCE’s source text can be opened.

Package

coalton-impl/source.

Source

source.lisp.

Methods
Method: source-available-p ((self source-string))
Method: source-available-p ((self source-file))
Generic Reader: source-condition-err (condition)
Generic Writer: (setf source-condition-err) (condition)
Package

source-error/error.

Methods
Reader Method: source-condition-err ((condition source-condition))
Writer Method: (setf source-condition-err) ((condition source-condition))
Source

error.lisp.

Target Slot

err.

Generic Function: source-name (source)

The name of an error’s source, suitable for reporting in errors. If the source is a file, SOURCE-NAME will be that file’s absolute path.

Package

source-error/error.

Source

error.lisp.

Generic Function: source-name (source)

The name of an error’s source, suitable for reporting in errors. If the source is a file, SOURCE-NAME will be that file’s absolute path.

Package

coalton-impl/source.

Source

source.lisp.

Methods
Method: source-name ((self source-string))
Method: source-name ((self source-file))
Generic Function: source-stream (source)

Open and return a stream from which source text may be read. The caller is responsible for closing the stream, and the stream’s initial position may be greater than zero.

Package

source-error/error.

Source

error.lisp.

Generic Function: source-stream (source)

Open and return a stream from which source text may be read. The caller is responsible for closing the stream, and the stream’s initial position may be greater than zero.

Package

coalton-impl/source.

Source

source.lisp.

Methods
Reader Method: source-stream ((printer-state printer-state))

automatically generated reader method

Target Slot

source-stream.

Method: source-stream ((self source-string))
Method: source-stream ((self source-file))
Generic Function: to-scheme (ty)
Package

coalton-impl/typechecker/scheme.

Source

scheme.lisp.

Methods
Method: to-scheme ((ty qualified-ty))
Method: to-scheme ((ty ty))
Generic Reader: too-many-arguments-arguments (condition)
Generic Writer: (setf too-many-arguments-arguments) (condition)
Package

coalton-impl/runtime/function-entry.

Methods
Reader Method: too-many-arguments-arguments ((condition too-many-arguments-to-coalton-function))
Writer Method: (setf too-many-arguments-arguments) ((condition too-many-arguments-to-coalton-function))
Source

function-entry.lisp.

Target Slot

arguments.

Generic Reader: too-many-arguments-count (condition)
Generic Writer: (setf too-many-arguments-count) (condition)
Package

coalton-impl/runtime/function-entry.

Methods
Reader Method: too-many-arguments-count ((condition too-many-arguments-to-coalton-function))
Writer Method: (setf too-many-arguments-count) ((condition too-many-arguments-to-coalton-function))
Source

function-entry.lisp.

Target Slot

arg-count.

Generic Reader: too-many-arguments-function (condition)
Generic Writer: (setf too-many-arguments-function) (condition)
Package

coalton-impl/runtime/function-entry.

Methods
Reader Method: too-many-arguments-function ((condition too-many-arguments-to-coalton-function))
Writer Method: (setf too-many-arguments-function) ((condition too-many-arguments-to-coalton-function))
Source

function-entry.lisp.

Target Slot

function.

Generic Function: translate-expression (expr ctx env)

Translate typechecker AST node EXPR to the codegen AST.

CTX provides the current predicate context.

Returns a ‘node’.

Package

coalton-impl/codegen/translate-expression.

Source

translate-expression.lisp.

Methods
Method: translate-expression ((expr node-literal) ctx env)
Method: translate-expression ((expr node-integer-literal) ctx env)
Method: translate-expression ((expr node-variable) ctx env)
Method: translate-expression ((expr node-accessor) ctx env)
Method: translate-expression ((expr node-application) ctx env)
Method: translate-expression ((expr node-body) ctx env)
Method: translate-expression ((expr node-abstraction) ctx env)
Method: translate-expression ((expr node-let) ctx env)
Method: translate-expression ((expr node-lisp) ctx env)
Method: translate-expression ((expr node-match) ctx env)
Method: translate-expression ((expr node-progn) ctx env)
Method: translate-expression ((expr node-return) ctx env)
Method: translate-expression ((expr node-or) ctx env)
Method: translate-expression ((expr node-and) ctx env)
Method: translate-expression ((expr node-if) ctx env)
Method: translate-expression ((expr node-when) ctx env)
Method: translate-expression ((expr node-unless) ctx env)
Method: translate-expression ((expr node-while) ctx env)
Method: translate-expression ((expr node-while-let) ctx env)
Method: translate-expression ((expr node-for) ctx env)
Method: translate-expression ((expr node-loop) ctx env)
Method: translate-expression ((expr node-break) ctx env)
Method: translate-expression ((expr node-continue) ctx env)
Method: translate-expression ((expr node-cond) ctx env)
Method: translate-expression ((node node-do) ctx env)
Generic Function: traverse (node block)
Package

coalton-impl/typechecker/traverse.

Source

traverse.lisp.

Methods
Method: traverse ((node node-variable) block)
Method: traverse ((node node-accessor) block)
Method: traverse ((node node-literal) block)
Method: traverse ((node node-integer-literal) block)
Method: traverse ((node node-bind) block)
Method: traverse ((node node-body) block)
Method: traverse ((node node-abstraction) block)
Method: traverse ((node node-let-binding) block)
Method: traverse ((node node-let) block)
Method: traverse ((node node-lisp) block)
Method: traverse ((node node-match-branch) block)
Method: traverse ((node node-match) block)
Method: traverse ((node node-progn) block)
Method: traverse ((node node-return) block)
Method: traverse ((node node-application) block)
Method: traverse ((node node-or) block)
Method: traverse ((node node-and) block)
Method: traverse ((node node-if) block)
Method: traverse ((node node-when) block)
Method: traverse ((node node-unless) block)
Method: traverse ((node node-cond-clause) block)
Method: traverse ((node node-cond) block)
Method: traverse ((node node-while) block)
Method: traverse ((node node-while-let) block)
Method: traverse ((node node-for) block)
Method: traverse ((node node-loop) block)
Method: traverse ((node node-break) block)
Method: traverse ((node node-continue) block)
Method: traverse ((node node-do-bind) block)
Method: traverse ((node node-do) block)
Method: traverse ((list list) block)
Generic Function: type-definition-ctor-field-types (ctor)
Package

coalton-impl/parser/type-definition.

Source

type-definition.lisp.

Methods
Method: type-definition-ctor-field-types ((ctor constructor))
Method: type-definition-ctor-field-types ((ctor toplevel-define-struct))
Generic Function: type-definition-ctor-name (ctor)
Package

coalton-impl/parser/type-definition.

Source

type-definition.lisp.

Methods
Method: type-definition-ctor-name ((ctor constructor))
Method: type-definition-ctor-name ((ctor toplevel-define-struct))
Generic Function: type-definition-ctors (def)
Package

coalton-impl/parser/type-definition.

Source

type-definition.lisp.

Methods
Method: type-definition-ctors ((def toplevel-define-type))
Method: type-definition-ctors ((def toplevel-define-struct))
Generic Function: type-definition-name (def)
Package

coalton-impl/parser/type-definition.

Source

type-definition.lisp.

Methods
Method: type-definition-name ((def toplevel-define-type))
Method: type-definition-name ((def toplevel-define-struct))
Generic Function: type-definition-repr (def)
Package

coalton-impl/parser/type-definition.

Source

type-definition.lisp.

Methods
Method: type-definition-repr ((def toplevel-define-type))
Method: type-definition-repr ((def toplevel-define-struct))
Generic Function: type-definition-vars (def)
Package

coalton-impl/parser/type-definition.

Source

type-definition.lisp.

Methods
Method: type-definition-vars ((def toplevel-define-type))
Method: type-definition-vars ((def toplevel-define-struct))
Generic Function: type-variables (type)

Get a list containing the type variables in TYPE.

Package

coalton-impl/typechecker/types.

Source

types.lisp.

Methods
Method: type-variables ((node node))

Collect all type variables from nodes and patterns in the tree of ‘node‘.

Source

transformations.lisp.

Method: type-variables ((pattern pattern-constructor))
Source

pattern.lisp.

Method: type-variables ((pattern pattern-wildcard))
Source

pattern.lisp.

Method: type-variables ((pattern pattern-literal))
Source

pattern.lisp.

Method: type-variables ((pattern pattern-var))
Source

pattern.lisp.

Method: type-variables ((env tc-env))

Returns all of the type variables of the types being checked in ENV. Does not return type variables from the inner main environment because it should not contain any free type variables.

Source

tc-env.lisp.

Method: type-variables ((accessor accessor))
Source

accessor.lisp.

Method: type-variables ((env environment))
Source

environment.lisp.

Method: type-variables ((env value-environment))
Source

environment.lisp.

Method: type-variables ((type ty-scheme))
Source

scheme.lisp.

Method: type-variables ((type qualified-ty))
Source

predicate.lisp.

Method: type-variables ((type ty-predicate))
Source

predicate.lisp.

Method: type-variables ((type tyvar))
Method: type-variables ((type tapp))
Method: type-variables ((type ty))
Method: type-variables ((type-list list))
Generic Function: typecheck-node (expr env)

Check that EXPR is valid. Currently only verifies that applied functions match their arguments.

Package

coalton-impl/codegen/typecheck-node.

Source

typecheck-node.lisp.

Methods
Method: typecheck-node ((expr node-literal) env)
Method: typecheck-node ((expr node-variable) env)
Method: typecheck-node ((expr node-application) env)
Method: typecheck-node ((expr node-direct-application) env)
Method: typecheck-node ((expr node-abstraction) env)
Method: typecheck-node ((expr node-let) env)
Method: typecheck-node ((expr node-lisp) env)
Method: typecheck-node ((expr match-branch) env)
Method: typecheck-node ((expr node-match) env)
Method: typecheck-node ((expr node-while) env)
Method: typecheck-node ((expr node-while-let) env)
Method: typecheck-node ((expr node-loop) env)
Method: typecheck-node ((expr node-break) env)
Method: typecheck-node ((expr node-continue) env)
Method: typecheck-node ((expr node-seq) env)
Method: typecheck-node ((expr node-return-from) env)
Method: typecheck-node ((expr node-block) env)
Method: typecheck-node ((expr node-field) env)
Method: typecheck-node ((expr node-dynamic-extent) env)
Method: typecheck-node ((expr node-bind) env)

6.1.8 Standalone methods

Method: initialize-instance :after ((printer-state printer-state) &rest initargs)
Source

source.lisp.

Method: make-expression-result ((client coalton-eclector-client) expression children source)
Package

eclector.parse-result.

Source

reader.lisp.

Method: make-load-form ((self immutable-map) &optional env)
Source

immutable-map.lisp.

Method: make-load-form ((obj slice) &optional env)
Source

slice.lisp.

Method: make-load-form ((self kind) &optional env)
Source

kinds.lisp.

Method: make-load-form ((obj fileerror) &optional env)
Source

file.lisp.

Method: make-load-form ((obj filestream) &optional env)
Source

file.lisp.

Method: make-load-form ((obj pathname) &optional env)
Source

file.lisp.

Method: make-load-form ((obj streamoptions) &optional env)
Source

file.lisp.

Method: make-load-form ((obj quantization) &optional env)
Source

real.lisp.

Method: make-load-form ((obj hash) &optional env)
Source

hash.lisp.

Method: make-load-form ((obj hashtable) &optional env)
Source

hashtable.lisp.

Method: make-load-form ((obj seq) &optional env)
Source

seq.lisp.

Method: make-load-form ((obj dyadic) &optional env)
Source

dyadic.lisp.

Method: make-load-form ((self location) &optional env)
Source

source.lisp.

Method: make-load-form ((self source-string) &optional env)
Source

source.lisp.

Method: make-load-form ((self source-file) &optional env)
Source

source.lisp.

Method: make-load-form ((self environment-map) &optional environment)
Source

map.lisp.

Method: make-load-form ((self pattern) &optional env)
Source

pattern.lisp.

Method: make-load-form ((self match-branch) &optional env)
Source

ast.lisp.

Method: make-load-form ((self node) &optional env)
Source

ast.lisp.

Method: make-load-form ((obj lisptype) &optional env)
Source

types.lisp.

Method: make-load-form ((obj queue) &optional env)
Source

queue.lisp.

Method: make-load-form ((obj profile) &optional env)
Source

system.lisp.

Method: make-load-form ((obj lispcondition) &optional env)
Source

system.lisp.

Method: make-load-form ((self ty-predicate) &optional env)
Source

predicate.lisp.

Method: make-load-form ((self qualified-ty) &optional env)
Source

predicate.lisp.

Method: make-load-form ((self ty-class-instance) &optional env)
Source

environment.lisp.

Method: make-load-form ((self ty-class) &optional env)
Source

environment.lisp.

Method: make-load-form ((self type-entry) &optional env)
Source

environment.lisp.

Method: make-load-form ((self function-env-entry) &optional env)
Source

environment.lisp.

Method: make-load-form ((self struct-entry) &optional env)
Source

environment.lisp.

Method: make-load-form ((self specialization-entry) &optional env)
Source

environment.lisp.

Method: make-load-form ((self constructor-entry) &optional env)
Source

environment.lisp.

Method: make-load-form ((self struct-field) &optional env)
Source

environment.lisp.

Method: make-load-form ((self ty-class-method) &optional env)
Source

environment.lisp.

Method: make-load-form ((self name-entry) &optional env)
Source

environment.lisp.

Method: make-load-form ((self environment) &optional env)
Source

environment.lisp.

Method: make-load-form ((self fundep-entry) &optional env)
Source

environment.lisp.

Method: make-load-form ((self fundep) &optional env)
Source

fundeps.lisp.

Method: make-load-form ((self ty-scheme) &optional env)
Source

scheme.lisp.

Method: make-load-form ((self tgen) &optional env)
Source

types.lisp.

Method: make-load-form ((self ty) &optional env)
Source

types.lisp.

Method: make-load-form ((obj mappair) &optional env)
Source

ord-map.lisp.

Method: make-load-form ((self method-definition) &optional env)
Source

toplevel.lisp.

Method: make-load-form ((obj iterator) &optional env)
Source

iterator.lisp.

Method: make-load-form ((self pattern) &optional env)
Source

pattern.lisp.

Method: make-load-form ((obj vector) &optional env)
Source

vector.lisp.

Method: make-load-form ((obj tuple) &optional env)
Source

classes.lisp.

Method: make-load-form ((obj result) &optional env)
Source

classes.lisp.

Method: make-load-form ((obj optional) &optional env)
Source

classes.lisp.

Method: make-load-form ((obj void) &optional env)
Source

primitive-types.lisp.

Method: make-load-form ((obj i32) &optional env)
Source

primitive-types.lisp.

Method: make-load-form ((obj i16) &optional env)
Source

primitive-types.lisp.

Method: make-load-form ((obj ufix) &optional env)
Source

primitive-types.lisp.

Method: make-load-form ((obj ifix) &optional env)
Source

primitive-types.lisp.

Method: make-load-form ((obj i64) &optional env)
Source

primitive-types.lisp.

Method: make-load-form ((obj u32) &optional env)
Source

primitive-types.lisp.

Method: make-load-form ((obj u8) &optional env)
Source

primitive-types.lisp.

Method: make-load-form ((obj u64) &optional env)
Source

primitive-types.lisp.

Method: make-load-form ((obj i8) &optional env)
Source

primitive-types.lisp.

Method: make-load-form ((obj u16) &optional env)
Source

primitive-types.lisp.

Method: make-load-form ((obj lisparray) &optional env)
Source

lisparray.lisp.

Method: make-load-form ((obj cell) &optional env)
Source

cell.lisp.

Method: make-load-form ((obj tree) &optional env)
Source

ord-tree.lisp.

Method: make-load-form ((obj iteratorstacknode) &optional env)
Source

ord-tree.lisp.

Method: make-load-form ((obj complex) &optional env)
Source

complex.lisp.

Method: make-load-form ((obj free) &optional env)
Source

monad/free.lisp.

Method: make-load-form ((obj dual) &optional env)
Source

dual.lisp.

Method: make-load-form ((obj tuple5) &optional env)
Source

tuple.lisp.

Method: make-load-form ((obj tuple4) &optional env)
Source

tuple.lisp.

Method: make-load-form ((obj tuple3) &optional env)
Source

tuple.lisp.

Method: print-object ((kind kind) stream)
Source

kinds.lisp.

Method: print-object ((self streamoptions/output) stream)
Source

file.lisp.

Method: print-object ((self streamoptions/bidirectional) stream)
Source

file.lisp.

Method: print-object ((self fileerror/patherror) stream)
Source

file.lisp.

Method: print-object ((self fileerror/lisperror) stream)
Source

file.lisp.

Method: print-object ((self fileerror/fileerror) stream)
Source

file.lisp.

Method: print-object ((self fileerror/eof) stream)
Source

file.lisp.

Method: print-object ((self streamoptions/input) stream)
Source

file.lisp.

Method: print-object ((self quantization/quantization) stream)
Source

real.lisp.

Method: print-object :around ((self seq) stream)
Source

seq.lisp.

Method: print-object ((self seq/relaxednode) stream)
Source

seq.lisp.

Method: print-object ((self seq/leafarray) stream)
Source

seq.lisp.

Method: print-object ((self dyadic/dyadic) stream)
Source

dyadic.lisp.

Method: print-object ((self note) stream)
Source

source.lisp.

Method: print-object ((self source-string) stream)
Source

source.lisp.

Method: print-object ((self source-file) stream)
Source

source.lisp.

Method: print-object ((self environment-map) stream)
Source

map.lisp.

Method: print-object ((self queue-internal) stream)
Source

queue.lisp.

Method: print-object ((function-entry function-entry) stream)
Source

function-entry.lisp.

Method: print-object ((self profile/profile) stream)
Source

system.lisp.

Method: print-object ((predicate ty-predicate) stream)
Source

predicate.lisp.

Method: print-object ((qualified-ty qualified-ty) stream)
Source

predicate.lisp.

Method: print-object ((env environment) stream)
Source

environment.lisp.

Method: print-object ((self fundep) stream)
Source

fundeps.lisp.

Method: print-object ((scheme ty-scheme) stream)
Source

scheme.lisp.

Method: print-object ((ty ty) stream)
Source

types.lisp.

Method: print-object ((self mappair/mappair) stream)
Source

ord-map.lisp.

Method: print-object ((self mappair/justkey) stream)
Source

ord-map.lisp.

Method: print-object ((self iterator/%iterator) stream)
Source

iterator.lisp.

Method: print-object ((obj pattern-literal) stream)
Source

pattern.lisp.

Method: print-object ((obj pattern-wildcard) stream)
Source

pattern.lisp.

Method: print-object ((obj pattern-var) stream)
Source

pattern.lisp.

Method: print-object ((obj pattern-constructor) stream)
Source

pattern.lisp.

Method: print-object ((self optional/none) stream)
Source

classes.lisp.

Method: print-object ((self result/err) stream)
Source

classes.lisp.

Method: print-object ((self result/ok) stream)
Source

classes.lisp.

Method: print-object ((self tuple/tuple) stream)
Source

classes.lisp.

Method: print-object ((self optional/some) stream)
Source

classes.lisp.

Method: print-object ((self cell-internal) stream)
Source

cell.lisp.

Method: print-object ((self tree/empty) stream)
Source

ord-tree.lisp.

Method: print-object ((self tree/doubleblackempty) stream)
Source

ord-tree.lisp.

Method: print-object ((self iteratorstacknode/expand) stream)
Source

ord-tree.lisp.

Method: print-object ((self iteratorstacknode/yield) stream)
Source

ord-tree.lisp.

Method: print-object ((self tree/branch) stream)
Source

ord-tree.lisp.

Method: print-object ((self complex/%complex) stream)
Source

complex.lisp.

Method: print-object ((self free/val) stream)
Source

monad/free.lisp.

Method: print-object ((self free/free) stream)
Source

monad/free.lisp.

Method: print-object ((self dual/dual) stream)
Source

dual.lisp.

Method: print-object ((self tuple3/tuple3) stream)
Source

tuple.lisp.

Method: print-object ((self tuple5/tuple5) stream)
Source

tuple.lisp.

Method: print-object ((self tuple4/tuple4) stream)
Source

tuple.lisp.

Method: (setf stream-file-position) ((stream char-position-stream))
Package

trivial-gray-streams.

Source

source.lisp.

Method: stream-file-position ((stream char-position-stream))
Package

trivial-gray-streams.

Source

source.lisp.

Method: stream-read-char ((stream char-position-stream))
Package

sb-gray.

Source

source.lisp.

Method: stream-read-char-no-hang ((stream char-position-stream))
Package

sb-gray.

Source

source.lisp.

Method: stream-unread-char ((stream char-position-stream) char)
Package

sb-gray.

Source

source.lisp.


6.1.9 Conditions

Condition: ambiguous-constraint
Package

coalton-impl/typechecker/type-errors.

Source

type-errors.lisp.

Direct superclasses

coalton-internal-type-error.

Direct methods

ambiguous-constraint-pred.

Direct slots
Slot: pred
Initargs

:pred

Readers

ambiguous-constraint-pred.

Writers

This slot is read-only.

Condition: coalton-bug
Package

coalton-impl/util.

Source

utilities.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: reason
Initargs

:reason

Readers

coalton-bug-reason.

Writers

This slot is read-only.

Slot: args
Initargs

:args

Readers

coalton-bug-args.

Writers

This slot is read-only.

Condition: coalton-internal-type-error

An internal Coalton condition for use in signaling. Internal conditions should always be caught.

Package

coalton-impl/typechecker/base.

Source

base.lisp.

Direct superclasses

error.

Direct subclasses
Condition: fundep-conflict
Package

coalton-impl/typechecker/type-errors.

Source

type-errors.lisp.

Direct superclasses

coalton-internal-type-error.

Direct methods
Direct slots
Slot: new-pred
Initargs

:new-pred

Readers

fundep-conflict-new-pred.

Writers

This slot is read-only.

Slot: old-pred
Initargs

:old-pred

Readers

fundep-conflict-old-pred.

Writers

This slot is read-only.

Slot: fundep
Initargs

:fundep

Readers

fundep-conflict-fundep.

Writers

This slot is read-only.

Slot: class
Package

common-lisp.

Initargs

:class

Readers

fundep-conflict-class.

Writers

This slot is read-only.

Slot: class-vars
Initargs

:class-vars

Readers

fundep-conflict-class-vars.

Writers

This slot is read-only.

Slot: class-fundeps
Initargs

:class-fundeps

Readers

fundep-conflict-class-fundeps.

Writers

This slot is read-only.

Slot: old-from-tys
Initargs

:old-from-tys

Readers

fundep-conflict-old-from-tys.

Writers

This slot is read-only.

Slot: new-from-tys
Initargs

:new-from-tys

Readers

fundep-conflict-new-from-tys.

Writers

This slot is read-only.

Slot: old-to-tys
Initargs

:old-to-tys

Readers

fundep-conflict-old-to-tys.

Writers

This slot is read-only.

Slot: new-to-tys
Initargs

:new-to-tys

Readers

fundep-conflict-new-to-tys.

Writers

This slot is read-only.

Condition: infinite-type-unification-error
Package

coalton-impl/typechecker/type-errors.

Source

type-errors.lisp.

Direct superclasses

coalton-internal-type-error.

Direct methods

infinite-type-unification-error-type.

Direct slots
Slot: type
Package

common-lisp.

Initargs

:type

Readers

infinite-type-unification-error-type.

Writers

This slot is read-only.

Condition: kind-mismatch-error
Package

coalton-impl/typechecker/type-errors.

Source

type-errors.lisp.

Direct superclasses

coalton-internal-type-error.

Direct methods
Direct slots
Slot: type
Package

common-lisp.

Initargs

:type

Readers

kind-mismatch-error-type.

Writers

This slot is read-only.

Slot: kind
Initargs

:kind

Readers

kind-mismatch-error-kind.

Writers

This slot is read-only.

Condition: kunify-error
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Direct superclasses

coalton-internal-type-error.

Direct methods
Direct slots
Slot: kind1
Initargs

:kind1

Readers

kunify-errror-kind1.

Writers

This slot is read-only.

Slot: kind2
Initargs

:kind2

Readers

kunify-error-kind2.

Writers

This slot is read-only.

Condition: overlapping-instance-error
Package

coalton-impl/typechecker/type-errors.

Source

type-errors.lisp.

Direct superclasses

coalton-internal-type-error.

Direct methods
Direct slots
Slot: inst1
Initargs

:inst1

Readers

overlapping-instance-error-inst1.

Writers

This slot is read-only.

Slot: inst2
Initargs

:inst2

Readers

overlapping-instance-error-inst2.

Writers

This slot is read-only.

Condition: overlapping-specialization-error
Package

coalton-impl/typechecker/type-errors.

Source

type-errors.lisp.

Direct superclasses

coalton-internal-type-error.

Direct methods
Direct slots
Slot: new
Initargs

:new

Readers

overlapping-specialization-error-new.

Writers

This slot is read-only.

Slot: existing
Initargs

:existing

Readers

overlapping-specialization-error-existing.

Writers

This slot is read-only.

Condition: parse-error

A condition indicating a syntax error in Coalton source code.

Package

coalton-impl/parser/base.

Source

base.lisp.

Direct superclasses

source-error.

Condition: predicate-unification-error
Package

coalton-impl/typechecker/type-errors.

Source

type-errors.lisp.

Direct superclasses

coalton-internal-type-error.

Direct methods
Direct slots
Slot: pred1
Initargs

:pred1

Readers

unification-error-pred1.

Writers

This slot is read-only.

Slot: pred2
Initargs

:pred2

Readers

unification-error-pred2.

Writers

This slot is read-only.

Condition: source-base-error

The base type for user-facing errors.

Package

source-error/error.

Source

error.lisp.

Direct superclasses
Condition: source-base-warning

The base type for user-facing warnings.

Package

source-error/error.

Source

error.lisp.

Direct superclasses
Condition: source-error

A user-facing error.

Package

coalton-impl/source.

Source

source.lisp.

Direct superclasses
Direct subclasses
Direct methods

severity.

Condition: source-warning

A user-facing warning.

Package

coalton-impl/source.

Source

source.lisp.

Direct superclasses
Direct methods

severity.

Condition: tc-error
Package

coalton-impl/typechecker/base.

Source

base.lisp.

Direct superclasses

source-error.

Condition: too-many-arguments-to-coalton-function
Package

coalton-impl/runtime/function-entry.

Source

function-entry.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: function
Package

common-lisp.

Initargs

:function

Readers

too-many-arguments-function.

Writers

(setf too-many-arguments-function).

Slot: arg-count
Initargs

:arg-count

Readers

too-many-arguments-count.

Writers

(setf too-many-arguments-count).

Slot: arguments
Initargs

:arguments

Readers

too-many-arguments-arguments.

Writers

(setf too-many-arguments-arguments).

Condition: type-application-error
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Direct superclasses

coalton-internal-type-error.

Direct methods
Direct slots
Slot: type
Package

common-lisp.

Initargs

:type

Readers

type-application-error-type.

Writers

This slot is read-only.

Slot: argument
Initargs

:argument

Readers

type-application-error-argument.

Writers

This slot is read-only.

Condition: type-kind-mismatch-error
Package

coalton-impl/typechecker/type-errors.

Source

type-errors.lisp.

Direct superclasses

coalton-internal-type-error.

Direct methods
Direct slots
Slot: type1
Initargs

:type1

Readers

type-kind-mismatch-error-type1.

Writers

This slot is read-only.

Slot: type2
Initargs

:type2

Readers

type-kind-mismatch-error-type2.

Writers

This slot is read-only.

Condition: unification-error
Package

coalton-impl/typechecker/type-errors.

Source

type-errors.lisp.

Direct superclasses

coalton-internal-type-error.

Direct methods
Direct slots
Slot: type1
Initargs

:type1

Readers

unification-error-type1.

Writers

This slot is read-only.

Slot: type2
Initargs

:type2

Readers

unification-error-type2.

Writers

This slot is read-only.


6.1.10 Structures

Structure: accessor
Package

coalton-impl/typechecker/accessor.

Source

accessor.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: from
Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/accessor::from))

Readers

accessor-from.

Writers

This slot is read-only.

Slot: to
Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/accessor::to))

Readers

accessor-to.

Writers

This slot is read-only.

Slot: field
Type

string

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/accessor::field))

Readers

accessor-field.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/accessor::location))

Readers

accessor-location.

Writers

This slot is read-only.

Structure: action

Container for a function to call on nodes of a particular ‘type‘ - before, after, or in place of the recursive call in a traversal. If ‘type‘ is ‘’node‘, then the function will be called before or after every node in the traversal; otherwise, the action only applies to nodes of the specified ‘type‘. (The when-keyword ‘:traverse‘ will have no effect when paired with type ‘’node‘; a recursive call defined for every node would have to be an entire generic already.) The ‘function‘ will be called with ‘(apply function node args)‘. The ‘function‘ should return either a modified ‘node‘ to take its place in the newly constructed tree, or void to indicate that the input node should be kept unchanged.

Package

coalton-impl/codegen/traverse.

Source

traverse.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: when
Package

common-lisp.

Type

coalton-impl/codegen/traverse::when-keyword

Initform

(quote :after)

Readers

action-when.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/codegen/traverse::node-subtype

Initform

(quote coalton-impl/codegen/ast:node)

Readers

action-type.

Writers

This slot is read-only.

Slot: function
Package

common-lisp.

Type

function

Initform

(coalton-impl/util:required (quote function))

Readers

action-function.

Writers

This slot is read-only.

Structure: ast-substitution
Package

coalton-impl/codegen/ast-substitutions.

Source

ast-substitutions.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: from
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast-substitutions::from))

Readers

ast-substitution-from.

Writers

This slot is read-only.

Slot: to
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast-substitutions::to))

Readers

ast-substitution-to.

Writers

This slot is read-only.

Structure: attribute
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods

location.

Direct slots
Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::location))

Readers

attribute-location.

Writers

This slot is read-only.

Structure: attribute-monomorphize
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

attribute.

Structure: attribute-repr
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

attribute.

Direct slots
Slot: type
Package

common-lisp.

Type

coalton-impl/parser/base:keyword-src

Initform

(coalton-impl/util:required (quote type))

Readers

attribute-repr-type.

Writers

This slot is read-only.

Slot: arg
Type

(or null concrete-syntax-tree:cst)

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::arg))

Readers

attribute-repr-arg.

Writers

This slot is read-only.

Structure: class-environment
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

immutable-map.

Structure: code-environment
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

immutable-map.

Structure: constructor
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier-src

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::name))

Readers

constructor-name.

Writers

This slot is read-only.

Slot: fields
Type

coalton-impl/parser/types:ty-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::fields))

Readers

constructor-fields.

Writers

This slot is read-only.

Slot: docstring
Type

(or null string)

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::docstring))

Readers

constructor-docstring.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::location))

Readers

constructor-location.

Writers

This slot is read-only.

Structure: constructor-entry
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::name))

Readers

constructor-entry-name.

Writers

This slot is read-only.

Slot: arity
Type

alexandria:non-negative-fixnum

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::arity))

Readers

constructor-entry-arity.

Writers

This slot is read-only.

Slot: constructs
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::constructs))

Readers

constructor-entry-constructs.

Writers

This slot is read-only.

Slot: classname
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::classname))

Readers

constructor-entry-classname.

Writers

This slot is read-only.

Slot: docstring
Type

(or string null)

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::docstring))

Readers

constructor-entry-docstring.

Writers

This slot is read-only.

Slot: compressed-repr
Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::compressed-repr))

Readers

constructor-entry-compressed-repr.

Writers

This slot is read-only.

Structure: constructor-environment
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

immutable-map.

Structure: environment
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: value-environment
Type

coalton-impl/typechecker/environment:value-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment:value-environment))

Readers

environment-value-environment.

Writers

This slot is read-only.

Slot: type-environment
Type

coalton-impl/typechecker/environment:type-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment:type-environment))

Readers

environment-type-environment.

Writers

This slot is read-only.

Slot: constructor-environment
Type

coalton-impl/typechecker/environment:constructor-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment:constructor-environment))

Readers

environment-constructor-environment.

Writers

This slot is read-only.

Slot: struct-environment
Type

coalton-impl/typechecker/environment:struct-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment:struct-environment))

Readers

environment-struct-environment.

Writers

This slot is read-only.

Slot: class-environment
Type

coalton-impl/typechecker/environment:class-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment:class-environment))

Readers

environment-class-environment.

Writers

This slot is read-only.

Slot: fundep-environment
Type

coalton-impl/typechecker/environment::fundep-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::fundep-environment))

Readers

environment-fundep-environment.

Writers

This slot is read-only.

Slot: instance-environment
Type

coalton-impl/typechecker/environment:instance-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment:instance-environment))

Readers

environment-instance-environment.

Writers

This slot is read-only.

Slot: function-environment
Type

coalton-impl/typechecker/environment:function-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment:function-environment))

Readers

environment-function-environment.

Writers

This slot is read-only.

Slot: name-environment
Type

coalton-impl/typechecker/environment:name-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment:name-environment))

Readers

environment-name-environment.

Writers

This slot is read-only.

Slot: method-inline-environment
Type

coalton-impl/typechecker/environment:method-inline-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment:method-inline-environment))

Readers

environment-method-inline-environment.

Writers

This slot is read-only.

Slot: code-environment
Type

coalton-impl/typechecker/environment:code-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment:code-environment))

Readers

environment-code-environment.

Writers

This slot is read-only.

Slot: specialization-environment
Type

coalton-impl/typechecker/environment:specialization-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment:specialization-environment))

Readers

environment-specialization-environment.

Writers

This slot is read-only.

Slot: source-name-environment
Type

coalton-impl/typechecker/environment::source-name-environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::source-name-environment))

Readers

environment-source-name-environment.

Writers

This slot is read-only.

Structure: environment-map

A readable, hash table-backed map.

Package

coalton-impl/typechecker/map.

Source

map.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: table
Type

hash-table

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/map::table))

Readers

environment-map-table.

Writers

This slot is read-only.

Slot: test
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/map::test))

Readers

environment-map-test.

Writers

This slot is read-only.

Structure: function-entry
Package

coalton-impl/runtime/function-entry.

Source

function-entry.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: arity
Type

fixnum

Initform

(coalton-impl/util:required (quote coalton-impl/runtime/function-entry::arity))

Readers

function-entry-arity.

Writers

This slot is read-only.

Slot: function
Package

common-lisp.

Type

function

Initform

(coalton-impl/util:required (quote function))

Readers

function-entry-function.

Writers

This slot is read-only.

Slot: curried
Type

simple-vector

Initform

(coalton-impl/util:required (quote coalton-impl/runtime/function-entry::curried))

Readers

function-entry-curried.

Writers

This slot is read-only.

Structure: function-env-entry
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

structure-object.

Direct methods

make-load-form.

Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::name))

Readers

function-env-entry-name.

Writers

This slot is read-only.

Slot: arity
Type

fixnum

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::arity))

Readers

function-env-entry-arity.

Writers

This slot is read-only.

Structure: function-environment
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

immutable-map.

Structure: fundep
Package

coalton-impl/typechecker/fundeps.

Source

fundeps.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: from
Type

coalton-impl/util:symbol-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/fundeps::from))

Readers

fundep-from.

Writers

This slot is read-only.

Slot: to
Type

coalton-impl/util:symbol-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/fundeps::to))

Readers

fundep-to.

Writers

This slot is read-only.

Structure: fundep
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: left
Type

coalton-impl/parser/base:keyword-src-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::left))

Readers

fundep-left.

Writers

This slot is read-only.

Slot: right
Type

coalton-impl/parser/base:keyword-src-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::right))

Readers

fundep-right.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::location))

Readers

fundep-location.

Writers

This slot is read-only.

Structure: hoister
Package

coalton-impl/codegen/hoister.

Source

hoister.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: hoist-points
Type

coalton-impl/codegen/hoister::hoist-point-list

Readers

hoister-hoist-points.

Writers

(setf hoister-hoist-points).

Slot: top-hoist-point
Type

coalton-impl/codegen/hoister::hoist-point

Initform

(coalton-impl/codegen/hoister::make-hoist-point :bound-variables nil)

Readers

hoister-top-hoist-point.

Writers

This slot is read-only.

Structure: identifier-src
Package

coalton-impl/parser/base.

Source

base.lisp.

Direct superclasses

structure-object.

Direct methods

location.

Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/parser/base::name))

Readers

identifier-src-name.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/base::location))

Readers

identifier-src-location.

Writers

This slot is read-only.

Structure: immutable-listmap
Package

coalton-impl/algorithm/immutable-listmap.

Source

immutable-listmap.lisp.

Direct superclasses

structure-object.

Direct subclasses

specialization-environment.

Direct slots
Slot: data
Type

fset:map

Initform

(fset:empty-map (fset:empty-seq))

Readers

immutable-listmap-data.

Writers

This slot is read-only.

Structure: immutable-map
Package

coalton-impl/algorithm/immutable-map.

Source

immutable-map.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods

make-load-form.

Direct slots
Slot: data
Type

fset:map

Initform

(fset:empty-map)

Readers

immutable-map-data.

Writers

This slot is read-only.

Structure: instance-environment
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: instances
Type

coalton-impl/algorithm/immutable-listmap:immutable-listmap

Initform

(coalton-impl/algorithm/immutable-listmap:make-immutable-listmap)

Readers

instance-environment-instances.

Writers

This slot is read-only.

Slot: codegen-syms
Type

coalton-impl/algorithm/immutable-map:immutable-map

Initform

(coalton-impl/algorithm/immutable-map:make-immutable-map)

Readers

instance-environment-codegen-syms.

Writers

This slot is read-only.

Structure: instance-method-definition
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Direct superclasses

toplevel-definition.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/typechecker/expression:node-variable

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/toplevel::name))

Readers

instance-method-definition-name.

Writers

This slot is read-only.

Slot: params
Type

coalton-impl/typechecker/pattern:pattern-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/toplevel::params))

Readers

instance-method-definition-params.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/toplevel::body))

Readers

instance-method-definition-body.

Writers

This slot is read-only.

Structure: instance-method-definition
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/expression:node-variable

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::name))

Readers

instance-method-definition-name.

Writers

This slot is read-only.

Slot: params
Type

coalton-impl/parser/pattern:pattern-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::params))

Readers

instance-method-definition-params.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::body))

Readers

instance-method-definition-body.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::location))

Readers

instance-method-definition-location.

Writers

This slot is read-only.

Structure: keyword-src
Package

coalton-impl/parser/base.

Source

base.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/parser/base::name))

Readers

keyword-src-name.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/base::location))

Readers

keyword-src-location.

Writers

This slot is read-only.

Structure: kfun
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Direct superclasses

kind.

Direct methods
Direct slots
Slot: from
Type

coalton-impl/typechecker/kinds:kind

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/kinds::from))

Readers

kfun-from.

Writers

This slot is read-only.

Slot: to
Type

coalton-impl/typechecker/kinds:kind

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/kinds::to))

Readers

kfun-to.

Writers

This slot is read-only.

Structure: kind
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods
Structure: kstar
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Direct superclasses

kind.

Direct methods
Structure: ksubstitution
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: from
Type

coalton-impl/typechecker/kinds:kyvar

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/kinds::from))

Readers

ksubstitution-from.

Writers

This slot is read-only.

Slot: to
Type

coalton-impl/typechecker/kinds:kind

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/kinds::to))

Readers

ksubstitution-to.

Writers

This slot is read-only.

Structure: kyvar
Package

coalton-impl/typechecker/kinds.

Source

kinds.lisp.

Direct superclasses

kind.

Direct methods
Direct slots
Slot: id
Type

fixnum

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/kinds::id))

Readers

kyvar-id.

Writers

This slot is read-only.

Structure: location
Package

coalton-impl/source.

Source

source.lisp.

Direct superclasses

structure-object.

Direct methods

make-load-form.

Direct slots
Slot: source
Readers

location-source.

Writers

This slot is read-only.

Slot: span
Type

coalton-impl/source:span

Readers

location-span.

Writers

This slot is read-only.

Structure: match-branch

A branch of a match statement

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: pattern
Package

coalton-impl/codegen/pattern.

Type

coalton-impl/codegen/pattern:pattern

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/pattern:pattern))

Readers

match-branch-pattern.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::body))

Readers

match-branch-body.

Writers

This slot is read-only.

Structure: method-definition
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

toplevel-definition.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier-src

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::name))

Readers

method-definition-name.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/parser/types:qualified-ty

Initform

(coalton-impl/util:required (quote type))

Readers

method-definition-type.

Writers

This slot is read-only.

Structure: method-inline-environment
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

immutable-map.

Structure: name-entry
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::name))

Readers

name-entry-name.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

(member :value :method :constructor)

Initform

(coalton-impl/util:required (quote type))

Readers

name-entry-type.

Writers

This slot is read-only.

Slot: docstring
Type

(or null string)

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::docstring))

Readers

name-entry-docstring.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::location))

Readers

name-entry-location.

Writers

This slot is read-only.

Structure: name-environment
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

immutable-map.

Structure: node
Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods
Direct slots
Slot: type
Package

common-lisp.

Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote type))

Readers

%node-type.

Writers

(setf %node-type).

Structure: node
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods

location.

Direct slots
Slot: type
Package

common-lisp.

Type

coalton-impl/typechecker/predicate:qualified-ty

Initform

(coalton-impl/util:required (quote type))

Readers

node-type.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::location))

Readers

node-location.

Writers

This slot is read-only.

Structure: node
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods

location.

Direct slots
Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::location))

Readers

node-location.

Writers

This slot is read-only.

Structure: node-abstraction

Lambda literals (fn (x) x)

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: vars
Type

coalton-impl/parser/base:identifier-list

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::vars))

Readers

node-abstraction-vars.

Writers

This slot is read-only.

Slot: subexpr
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::subexpr))

Readers

node-abstraction-subexpr.

Writers

This slot is read-only.

Structure: node-abstraction
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: params
Type

coalton-impl/typechecker/pattern:pattern-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::params))

Readers

node-abstraction-params.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::body))

Readers

node-abstraction-body.

Writers

This slot is read-only.

Structure: node-abstraction
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: params
Type

coalton-impl/parser/pattern:pattern-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::params))

Readers

node-abstraction-params.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::body))

Readers

node-abstraction-body.

Writers

This slot is read-only.

Structure: node-accessor
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: name
Type

string

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::name))

Readers

node-accessor-name.

Writers

This slot is read-only.

Structure: node-accessor
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: name
Type

string

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::name))

Readers

node-accessor-name.

Writers

This slot is read-only.

Structure: node-and
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: nodes
Type

coalton-impl/typechecker/expression:node-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::nodes))

Readers

node-and-nodes.

Writers

This slot is read-only.

Structure: node-and
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: nodes
Type

coalton-impl/parser/expression:node-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::nodes))

Readers

node-and-nodes.

Writers

This slot is read-only.

Structure: node-application

Function application (f x)

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: rator
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::rator))

Readers

node-application-rator.

Writers

This slot is read-only.

Slot: rands
Type

coalton-impl/codegen/ast:node-list

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::rands))

Readers

node-application-rands.

Writers

This slot is read-only.

Structure: node-application
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: rator
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::rator))

Readers

node-application-rator.

Writers

This slot is read-only.

Slot: rands
Type

coalton-impl/typechecker/expression:node-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::rands))

Readers

node-application-rands.

Writers

This slot is read-only.

Structure: node-application
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: rator
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::rator))

Readers

node-application-rator.

Writers

This slot is read-only.

Slot: rands
Type

coalton-impl/parser/expression:node-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::rands))

Readers

node-application-rands.

Writers

This slot is read-only.

Structure: node-bind

A single non-recursive binding

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::name))

Readers

node-bind-name.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::expr))

Readers

node-bind-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::body))

Readers

node-bind-body.

Writers

This slot is read-only.

Structure: node-bind
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: pattern
Package

coalton-impl/typechecker/pattern.

Type

coalton-impl/typechecker/pattern:pattern

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/pattern:pattern))

Readers

node-bind-pattern.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::expr))

Readers

node-bind-expr.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::location))

Readers

node-bind-location.

Writers

This slot is read-only.

Structure: node-bind
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: pattern
Package

coalton-impl/parser/pattern.

Type

coalton-impl/parser/pattern:pattern

Initform

(coalton-impl/util:required (quote coalton-impl/parser/pattern:pattern))

Readers

node-bind-pattern.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-bind-expr.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::location))

Readers

node-bind-location.

Writers

This slot is read-only.

Structure: node-block

A return target, used for explicit returns in functions

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast:node))

Readers

node-block-name.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::body))

Readers

node-block-body.

Writers

This slot is read-only.

Structure: node-body
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: nodes
Type

coalton-impl/typechecker/expression:node-body-element-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::nodes))

Readers

node-body-nodes.

Writers

This slot is read-only.

Slot: last-node
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::last-node))

Readers

node-body-last-node.

Writers

This slot is read-only.

Structure: node-body
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: nodes
Type

coalton-impl/parser/expression:node-body-element-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::nodes))

Readers

node-body-nodes.

Writers

This slot is read-only.

Slot: last-node
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::last-node))

Readers

node-body-last-node.

Writers

This slot is read-only.

Structure: node-break

A break statment used to exit a loop.

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::label))

Readers

node-break-label.

Writers

This slot is read-only.

Structure: node-break
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::label))

Readers

node-break-label.

Writers

This slot is read-only.

Structure: node-break
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::label))

Readers

node-break-label.

Writers

This slot is read-only.

Structure: node-cond
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: clauses
Type

coalton-impl/typechecker/expression:node-cond-clause-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::clauses))

Readers

node-cond-clauses.

Writers

This slot is read-only.

Structure: node-cond
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: clauses
Type

coalton-impl/parser/expression:node-cond-clause-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::clauses))

Readers

node-cond-clauses.

Writers

This slot is read-only.

Structure: node-cond-clause
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: expr
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::expr))

Readers

node-cond-clause-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::body))

Readers

node-cond-clause-body.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::location))

Readers

node-cond-clause-location.

Writers

This slot is read-only.

Structure: node-cond-clause
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: expr
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-cond-clause-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::body))

Readers

node-cond-clause-body.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::location))

Readers

node-cond-clause-location.

Writers

This slot is read-only.

Structure: node-continue

A continue statment used to skip to the next iteration of a loop.

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::label))

Readers

node-continue-label.

Writers

This slot is read-only.

Structure: node-continue
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::label))

Readers

node-continue-label.

Writers

This slot is read-only.

Structure: node-continue
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::label))

Readers

node-continue-label.

Writers

This slot is read-only.

Structure: node-direct-application

Fully saturated function application of a known function

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: rator-type
Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::rator-type))

Readers

node-direct-application-rator-type.

Writers

This slot is read-only.

Slot: rator
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::rator))

Readers

node-direct-application-rator.

Writers

This slot is read-only.

Slot: rands
Type

coalton-impl/codegen/ast:node-list

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::rands))

Readers

node-direct-application-rands.

Writers

This slot is read-only.

Structure: node-do
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: nodes
Type

coalton-impl/typechecker/expression::node-do-body-element-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::nodes))

Readers

node-do-nodes.

Writers

This slot is read-only.

Slot: last-node
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::last-node))

Readers

node-do-last-node.

Writers

This slot is read-only.

Structure: node-do
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: nodes
Type

coalton-impl/parser/expression::node-do-body-element-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::nodes))

Readers

node-do-nodes.

Writers

This slot is read-only.

Slot: last-node
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::last-node))

Readers

node-do-last-node.

Writers

This slot is read-only.

Structure: node-do-bind
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: pattern
Package

coalton-impl/typechecker/pattern.

Type

coalton-impl/typechecker/pattern:pattern

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/pattern:pattern))

Readers

node-do-bind-pattern.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::expr))

Readers

node-do-bind-expr.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::location))

Readers

node-do-bind-location.

Writers

This slot is read-only.

Structure: node-do-bind
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: pattern
Package

coalton-impl/parser/pattern.

Type

coalton-impl/parser/pattern:pattern

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::name))

Readers

node-do-bind-pattern.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-do-bind-expr.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::location))

Readers

node-do-bind-location.

Writers

This slot is read-only.

Structure: node-dynamic-extent

A single stack allocated binding

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::name))

Readers

node-dynamic-extent-name.

Writers

This slot is read-only.

Slot: node
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast:node))

Readers

node-dynamic-extent-node.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::body))

Readers

node-dynamic-extent-body.

Writers

This slot is read-only.

Structure: node-field

Accessing a superclass on a typeclass dictionary

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::name))

Readers

node-field-name.

Writers

This slot is read-only.

Slot: dict
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::dict))

Readers

node-field-dict.

Writers

This slot is read-only.

Structure: node-for
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::label))

Readers

node-for-label.

Writers

This slot is read-only.

Slot: pattern
Package

coalton-impl/typechecker/pattern.

Type

coalton-impl/typechecker/pattern:pattern

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/pattern:pattern))

Readers

node-for-pattern.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::expr))

Readers

node-for-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::body))

Readers

node-for-body.

Writers

This slot is read-only.

Structure: node-for
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::label))

Readers

node-for-label.

Writers

This slot is read-only.

Slot: pattern
Package

coalton-impl/parser/pattern.

Type

coalton-impl/parser/pattern:pattern

Initform

(coalton-impl/util:required (quote coalton-impl/parser/pattern:pattern))

Readers

node-for-pattern.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-for-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::body))

Readers

node-for-body.

Writers

This slot is read-only.

Structure: node-if
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: expr
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::expr))

Readers

node-if-expr.

Writers

This slot is read-only.

Slot: then
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::then))

Readers

node-if-then.

Writers

This slot is read-only.

Slot: else
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::else))

Readers

node-if-else.

Writers

This slot is read-only.

Structure: node-if
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: expr
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-if-expr.

Writers

This slot is read-only.

Slot: then
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-if-then.

Writers

This slot is read-only.

Slot: else
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::else))

Readers

node-if-else.

Writers

This slot is read-only.

Structure: node-integer-literal
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: value
Type

integer

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::value))

Readers

node-integer-literal-value.

Writers

This slot is read-only.

Structure: node-integer-literal
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: value
Type

integer

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::value))

Readers

node-integer-literal-value.

Writers

This slot is read-only.

Structure: node-let

Introduction of local mutually-recursive bindings (let ((x 2)) (+ x x))

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: bindings
Type

coalton-impl/codegen/ast:binding-list

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::bindings))

Readers

node-let-bindings.

Writers

This slot is read-only.

Slot: subexpr
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::subexpr))

Readers

node-let-subexpr.

Writers

This slot is read-only.

Structure: node-let
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: bindings
Type

coalton-impl/typechecker/expression:node-let-binding-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::bindings))

Readers

node-let-bindings.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::body))

Readers

node-let-body.

Writers

This slot is read-only.

Structure: node-let
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: bindings
Type

coalton-impl/parser/expression:node-let-binding-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::bindings))

Readers

node-let-bindings.

Writers

This slot is read-only.

Slot: declares
Type

coalton-impl/parser/expression:node-let-declare-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::declares))

Readers

node-let-declares.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::body))

Readers

node-let-body.

Writers

This slot is read-only.

Structure: node-let-binding
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/typechecker/expression:node-variable

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::name))

Readers

node-let-binding-name.

Writers

This slot is read-only.

Slot: value
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::value))

Readers

node-let-binding-value.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::location))

Readers

node-let-binding-location.

Writers

This slot is read-only.

Structure: node-let-binding
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/expression:node-variable

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::name))

Readers

node-let-binding-name.

Writers

This slot is read-only.

Slot: value
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::value))

Readers

node-let-binding-value.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::location))

Readers

node-let-binding-location.

Writers

This slot is read-only.

Structure: node-let-declare
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/expression:node-variable

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::name))

Readers

node-let-declare-name.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/parser/types:qualified-ty

Initform

(coalton-impl/util:required (quote type))

Readers

node-let-declare-type.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::location))

Readers

node-let-declare-location.

Writers

This slot is read-only.

Structure: node-lisp

An embedded lisp form

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: vars
Type

coalton-impl/codegen/ast::lisp-coalton-var-alist

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::vars))

Readers

node-lisp-vars.

Writers

This slot is read-only.

Slot: form
Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::form))

Readers

node-lisp-form.

Writers

This slot is read-only.

Structure: node-lisp
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: vars
Type

coalton-impl/typechecker/expression:node-variable-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::vars))

Readers

node-lisp-vars.

Writers

This slot is read-only.

Slot: var-names
Type

coalton-impl/util:symbol-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::var-names))

Readers

node-lisp-var-names.

Writers

This slot is read-only.

Slot: body
Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::body))

Readers

node-lisp-body.

Writers

This slot is read-only.

Structure: node-lisp
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: type
Package

common-lisp.

Type

coalton-impl/parser/types:ty

Initform

(coalton-impl/util:required (quote type))

Readers

node-lisp-type.

Writers

This slot is read-only.

Slot: vars
Type

coalton-impl/parser/expression:node-variable-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::vars))

Readers

node-lisp-vars.

Writers

This slot is read-only.

Slot: var-names
Type

coalton-impl/util:symbol-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::var-names))

Readers

node-lisp-var-names.

Writers

This slot is read-only.

Slot: body
Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::body))

Readers

node-lisp-body.

Writers

This slot is read-only.

Structure: node-literal

Literal values like 1 or "hello"

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: value
Type

coalton-impl/util:literal-value

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::value))

Readers

node-literal-value.

Writers

This slot is read-only.

Structure: node-literal
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: value
Type

(and coalton-impl/util:literal-value (not integer))

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::value))

Readers

node-literal-value.

Writers

This slot is read-only.

Structure: node-literal
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: value
Type

(and coalton-impl/util:literal-value (not integer))

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::value))

Readers

node-literal-value.

Writers

This slot is read-only.

Structure: node-loop

A labelled looping construct. Loops forever until broken out of by a call to (break).

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::label))

Readers

node-loop-label.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::body))

Readers

node-loop-body.

Writers

This slot is read-only.

Structure: node-loop
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::label))

Readers

node-loop-label.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::body))

Readers

node-loop-body.

Writers

This slot is read-only.

Structure: node-loop
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::label))

Readers

node-loop-label.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::body))

Readers

node-loop-body.

Writers

This slot is read-only.

Structure: node-match

A pattern matching construct. Uses MATCH-BRANCH to represent branches

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: expr
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::expr))

Readers

node-match-expr.

Writers

This slot is read-only.

Slot: branches
Type

coalton-impl/codegen/ast:branch-list

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::branches))

Readers

node-match-branches.

Writers

This slot is read-only.

Structure: node-match
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: expr
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::expr))

Readers

node-match-expr.

Writers

This slot is read-only.

Slot: branches
Type

coalton-impl/typechecker/expression:node-match-branch-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::branches))

Readers

node-match-branches.

Writers

This slot is read-only.

Structure: node-match
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: expr
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-match-expr.

Writers

This slot is read-only.

Slot: branches
Type

coalton-impl/parser/expression:node-match-branch-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::branches))

Readers

node-match-branches.

Writers

This slot is read-only.

Structure: node-match-branch
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: pattern
Package

coalton-impl/typechecker/pattern.

Type

coalton-impl/typechecker/pattern:pattern

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/pattern:pattern))

Readers

node-match-branch-pattern.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::body))

Readers

node-match-branch-body.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::location))

Readers

node-match-branch-location.

Writers

This slot is read-only.

Structure: node-match-branch
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: pattern
Package

coalton-impl/parser/pattern.

Type

coalton-impl/parser/pattern:pattern

Initform

(coalton-impl/util:required (quote coalton-impl/parser/pattern:pattern))

Readers

node-match-branch-pattern.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::body))

Readers

node-match-branch-body.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::location))

Readers

node-match-branch-location.

Writers

This slot is read-only.

Structure: node-or
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: nodes
Type

coalton-impl/typechecker/expression:node-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::nodes))

Readers

node-or-nodes.

Writers

This slot is read-only.

Structure: node-or
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: nodes
Type

coalton-impl/parser/expression:node-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::nodes))

Readers

node-or-nodes.

Writers

This slot is read-only.

Structure: node-progn
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::body))

Readers

node-progn-body.

Writers

This slot is read-only.

Structure: node-progn
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::body))

Readers

node-progn-body.

Writers

This slot is read-only.

Structure: node-return
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: expr
Type

(or null coalton-impl/typechecker/expression:node)

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::expr))

Readers

node-return-expr.

Writers

This slot is read-only.

Structure: node-return
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: expr
Type

(or null coalton-impl/parser/expression:node)

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-return-expr.

Writers

This slot is read-only.

Structure: node-return-from

A return statement, used for explicit returns in functions

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::name))

Readers

node-return-from-name.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::expr))

Readers

node-return-from-expr.

Writers

This slot is read-only.

Structure: node-seq

A series of statements to be executed sequentially

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: nodes
Type

coalton-impl/codegen/ast:node-list

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::nodes))

Readers

node-seq-nodes.

Writers

This slot is read-only.

Structure: node-the
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: type
Package

common-lisp.

Type

coalton-impl/parser/types:ty

Initform

(coalton-impl/util:required (quote type))

Readers

node-the-type.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-the-expr.

Writers

This slot is read-only.

Structure: node-unless
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: expr
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::expr))

Readers

node-unless-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::body))

Readers

node-unless-body.

Writers

This slot is read-only.

Structure: node-unless
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: expr
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-unless-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::body))

Readers

node-unless-body.

Writers

This slot is read-only.

Structure: node-variable

Variables like x or y

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: value
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::value))

Readers

node-variable-value.

Writers

This slot is read-only.

Structure: node-variable
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::name))

Readers

node-variable-name.

Writers

This slot is read-only.

Structure: node-variable
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::name))

Readers

node-variable-name.

Writers

This slot is read-only.

Structure: node-when
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: expr
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::expr))

Readers

node-when-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::body))

Readers

node-when-body.

Writers

This slot is read-only.

Structure: node-when
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: expr
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-when-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::body))

Readers

node-when-body.

Writers

This slot is read-only.

Structure: node-while

A looping construct. Executes a body until an expression is false.

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::label))

Readers

node-while-label.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::expr))

Readers

node-while-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::body))

Readers

node-while-body.

Writers

This slot is read-only.

Structure: node-while
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::label))

Readers

node-while-label.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::expr))

Readers

node-while-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::body))

Readers

node-while-body.

Writers

This slot is read-only.

Structure: node-while
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::label))

Readers

node-while-label.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-while-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::body))

Readers

node-while-body.

Writers

This slot is read-only.

Structure: node-while-let

A looping construct. Executes a body until a pattern match fails.

Package

coalton-impl/codegen/ast.

Source

ast.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::label))

Readers

node-while-let-label.

Writers

This slot is read-only.

Slot: pattern
Package

coalton-impl/codegen/pattern.

Type

coalton-impl/codegen/pattern:pattern

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/pattern:pattern))

Readers

node-while-let-pattern.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::expr))

Readers

node-while-let-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/codegen/ast:node

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/ast::body))

Readers

node-while-let-body.

Writers

This slot is read-only.

Structure: node-while-let
Package

coalton-impl/typechecker/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::label))

Readers

node-while-let-label.

Writers

This slot is read-only.

Slot: pattern
Package

coalton-impl/typechecker/pattern.

Type

coalton-impl/typechecker/pattern:pattern

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/pattern:pattern))

Readers

node-while-let-pattern.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/typechecker/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::expr))

Readers

node-while-let-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/expression::body))

Readers

node-while-let-body.

Writers

This slot is read-only.

Structure: node-while-let
Package

coalton-impl/parser/expression.

Source

expression.lisp.

Direct superclasses

node.

Direct methods
Direct slots
Slot: label
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::label))

Readers

node-while-let-label.

Writers

This slot is read-only.

Slot: pattern
Package

coalton-impl/parser/pattern.

Type

coalton-impl/parser/pattern:pattern

Initform

(coalton-impl/util:required (quote coalton-impl/parser/pattern:pattern))

Readers

node-while-let-pattern.

Writers

This slot is read-only.

Slot: expr
Type

coalton-impl/parser/expression:node

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::expr))

Readers

node-while-let-expr.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/expression::body))

Readers

node-while-let-body.

Writers

This slot is read-only.

Structure: partial-type-env
Package

coalton-impl/typechecker/partial-type-env.

Source

partial-type-env.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: env
Type

coalton-impl/typechecker/environment:environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/partial-type-env::env))

Readers

partial-type-env-env.

Writers

This slot is read-only.

Slot: ty-table
Type

hash-table

Initform

(make-hash-table :test (function eq))

Readers

partial-type-env-ty-table.

Writers

This slot is read-only.

Slot: class-table
Type

hash-table

Initform

(make-hash-table :test (function eq))

Readers

partial-type-env-class-table.

Writers

This slot is read-only.

Structure: pattern
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods

location.

Direct slots
Slot: type
Package

common-lisp.

Type

coalton-impl/typechecker/predicate:qualified-ty

Initform

(coalton-impl/util:required (quote type))

Readers

pattern-type.

Writers

This slot is read-only.

Slot: location
Type

(or coalton-impl/source:location null)

Readers

pattern-location.

Writers

This slot is read-only.

Structure: pattern
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods

make-load-form.

Direct slots
Slot: type
Package

common-lisp.

Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote type))

Readers

pattern-type.

Writers

This slot is read-only.

Structure: pattern
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods
Direct slots
Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/pattern::location))

Readers

pattern-location.

Writers

This slot is read-only.

Structure: pattern-constructor
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Direct superclasses

pattern.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/pattern::name))

Readers

pattern-constructor-name.

Writers

This slot is read-only.

Slot: patterns
Type

coalton-impl/typechecker/pattern:pattern-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/pattern::patterns))

Readers

pattern-constructor-patterns.

Writers

This slot is read-only.

Structure: pattern-constructor
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Direct superclasses

pattern.

Direct methods
Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/pattern::name))

Readers

pattern-constructor-name.

Writers

This slot is read-only.

Slot: patterns
Type

coalton-impl/codegen/pattern:pattern-list

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/pattern::patterns))

Readers

pattern-constructor-patterns.

Writers

This slot is read-only.

Structure: pattern-constructor
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Direct superclasses

pattern.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/parser/pattern::name))

Readers

pattern-constructor-name.

Writers

This slot is read-only.

Slot: patterns
Type

coalton-impl/parser/pattern:pattern-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/pattern::patterns))

Readers

pattern-constructor-patterns.

Writers

This slot is read-only.

Structure: pattern-literal
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Direct superclasses

pattern.

Direct methods
Direct slots
Slot: value
Type

coalton-impl/util:literal-value

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/pattern::value))

Readers

pattern-literal-value.

Writers

This slot is read-only.

Structure: pattern-literal
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Direct superclasses

pattern.

Direct methods
Direct slots
Slot: value
Type

coalton-impl/util:literal-value

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/pattern::value))

Readers

pattern-literal-value.

Writers

This slot is read-only.

Structure: pattern-literal
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Direct superclasses

pattern.

Direct methods
Direct slots
Slot: value
Type

coalton-impl/util:literal-value

Initform

(coalton-impl/util:required (quote coalton-impl/parser/pattern::value))

Readers

pattern-literal-value.

Writers

This slot is read-only.

Structure: pattern-var
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Direct superclasses

pattern.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/pattern::name))

Readers

pattern-var-name.

Writers

This slot is read-only.

Slot: orig-name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/pattern::orig-name))

Readers

pattern-var-orig-name.

Writers

This slot is read-only.

Structure: pattern-var
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Direct superclasses

pattern.

Direct methods
Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/pattern::name))

Readers

pattern-var-name.

Writers

This slot is read-only.

Structure: pattern-var
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Direct superclasses

pattern.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/parser/pattern::name))

Readers

pattern-var-name.

Writers

This slot is read-only.

Slot: orig-name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/parser/pattern::orig-name))

Readers

pattern-var-orig-name.

Writers

This slot is read-only.

Structure: pattern-wildcard
Package

coalton-impl/typechecker/pattern.

Source

pattern.lisp.

Direct superclasses

pattern.

Direct methods
Structure: pattern-wildcard
Package

coalton-impl/codegen/pattern.

Source

pattern.lisp.

Direct superclasses

pattern.

Direct methods
Structure: pattern-wildcard
Package

coalton-impl/parser/pattern.

Source

pattern.lisp.

Direct superclasses

pattern.

Direct methods
Structure: program
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

structure-object.

Direct methods

rename-variables-generic%.

Direct slots
Slot: package
Package

common-lisp.

Type

(or null coalton-impl/parser/toplevel::toplevel-package)

Readers

program-package.

Writers

This slot is read-only.

Slot: types
Type

coalton-impl/parser/toplevel:toplevel-define-type-list

Readers

program-types.

Writers

(setf program-types).

Slot: structs
Type

coalton-impl/parser/toplevel:toplevel-define-struct-list

Readers

program-structs.

Writers

(setf program-structs).

Slot: declares
Type

coalton-impl/parser/toplevel:toplevel-declare-list

Readers

program-declares.

Writers

(setf program-declares).

Slot: defines
Type

coalton-impl/parser/toplevel:toplevel-define-list

Readers

program-defines.

Writers

(setf program-defines).

Slot: classes
Type

coalton-impl/parser/toplevel:toplevel-define-class-list

Readers

program-classes.

Writers

(setf program-classes).

Slot: instances
Type

coalton-impl/parser/toplevel:toplevel-define-instance-list

Readers

program-instances.

Writers

(setf program-instances).

Slot: lisp-forms
Type

coalton-impl/parser/toplevel:toplevel-lisp-form-list

Readers

program-lisp-forms.

Writers

(setf program-lisp-forms).

Slot: specializations
Type

coalton-impl/parser/toplevel:toplevel-specialize-list

Readers

program-specializations.

Writers

(setf program-specializations).

Structure: qualified-ty
Package

coalton-impl/parser/types.

Source

types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: predicates
Type

coalton-impl/parser/types:ty-predicate-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/types::predicates))

Readers

qualified-ty-predicates.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/parser/types:ty

Initform

(coalton-impl/util:required (quote type))

Readers

qualified-ty-type.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/types::location))

Readers

qualified-ty-location.

Writers

This slot is read-only.

Structure: qualified-ty
Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: predicates
Type

coalton-impl/typechecker/predicate:ty-predicate-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/predicate::predicates))

Readers

qualified-ty-predicates.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote type))

Readers

qualified-ty-type.

Writers

This slot is read-only.

Structure: source-error
Package

source-error/error.

Source

error.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: type
Package

common-lisp.

Type

(member :error :warn)

Readers

source-error-type.

Writers

This slot is read-only.

Slot: source
Readers

source-error-source.

Writers

This slot is read-only.

Slot: location
Type

integer

Readers

source-error-location.

Writers

This slot is read-only.

Slot: message
Type

string

Readers

source-error-message.

Writers

This slot is read-only.

Slot: notes
Type

source-error/error::source-error-note-list

Readers

source-error-notes.

Writers

This slot is read-only.

Slot: help-notes
Type

source-error/error::source-error-help-list

Readers

source-error-help-notes.

Writers

This slot is read-only.

Slot: context
Type

source-error/error::source-error-context-list

Readers

source-error-context.

Writers

This slot is read-only.

Structure: specialization-entry
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

structure-object.

Direct methods

make-load-form.

Direct slots
Slot: from
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::from))

Readers

specialization-entry-from.

Writers

This slot is read-only.

Slot: to
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::to))

Readers

specialization-entry-to.

Writers

This slot is read-only.

Slot: to-ty
Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::to-ty))

Readers

specialization-entry-to-ty.

Writers

This slot is read-only.

Structure: specialization-environment
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

immutable-listmap.

Structure: struct-entry
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::name))

Readers

struct-entry-name.

Writers

This slot is read-only.

Slot: fields
Type

coalton-impl/typechecker/environment:struct-field-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::fields))

Readers

struct-entry-fields.

Writers

This slot is read-only.

Slot: docstring
Type

(or null string)

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::docstring))

Readers

struct-entry-docstring.

Writers

This slot is read-only.

Structure: struct-environment
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

immutable-map.

Structure: struct-field
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

string

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::name))

Readers

struct-field-name.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote type))

Readers

struct-field-type.

Writers

This slot is read-only.

Slot: index
Type

fixnum

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::index))

Readers

struct-field-index.

Writers

This slot is read-only.

Slot: docstring
Type

(or null string)

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::docstring))

Readers

struct-field-docstring.

Writers

This slot is read-only.

Structure: struct-field
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

toplevel-definition.

Direct methods
Direct slots
Slot: name
Type

string

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::name))

Readers

struct-field-name.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/parser/types:ty

Initform

(coalton-impl/util:required (quote type))

Readers

struct-field-type.

Writers

This slot is read-only.

Structure: struct-or-class-field
Package

coalton-impl/codegen/struct-or-class.

Source

struct-or-class.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/codegen/struct-or-class::name))

Readers

struct-or-class-field-name.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Initform

(coalton-impl/util:required (quote type))

Readers

struct-or-class-field-type.

Writers

This slot is read-only.

Structure: substitution
Package

coalton-impl/typechecker/substitutions.

Source

substitutions.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: from
Type

coalton-impl/typechecker/types:tyvar

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/substitutions::from))

Readers

substitution-from.

Writers

This slot is read-only.

Slot: to
Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/substitutions::to))

Readers

substitution-to.

Writers

This slot is read-only.

Structure: tapp
Package

coalton-impl/parser/types.

Source

types.lisp.

Direct superclasses

ty.

Direct methods
Direct slots
Slot: from
Type

coalton-impl/parser/types:ty

Initform

(coalton-impl/util:required (quote coalton-impl/parser/types::from))

Readers

tapp-from.

Writers

This slot is read-only.

Slot: to
Type

coalton-impl/parser/types:ty

Initform

(coalton-impl/util:required (quote coalton-impl/parser/types::to))

Readers

tapp-to.

Writers

This slot is read-only.

Structure: tapp
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Direct superclasses

ty.

Direct methods
Direct slots
Slot: from
Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/types::from))

Readers

tapp-from.

Writers

This slot is read-only.

Slot: to
Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/types::to))

Readers

tapp-to.

Writers

This slot is read-only.

Structure: tc-env
Package

coalton-impl/typechecker/tc-env.

Source

tc-env.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: env
Type

coalton-impl/typechecker/environment:environment

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/tc-env::env))

Readers

tc-env-env.

Writers

This slot is read-only.

Slot: ty-table
Type

hash-table

Initform

(make-hash-table :test (function eq))

Readers

tc-env-ty-table.

Writers

This slot is read-only.

Structure: tgen
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Direct superclasses

ty.

Direct methods
Direct slots
Slot: id
Type

fixnum

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/types::id))

Readers

tgen-id.

Writers

This slot is read-only.

Structure: toplevel-declare
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

structure-object.

Direct methods

location.

Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier-src

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::name))

Readers

toplevel-declare-name.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/parser/types:qualified-ty

Initform

(coalton-impl/util:required (quote type))

Readers

toplevel-declare-type.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::location))

Readers

toplevel-declare-location.

Writers

This slot is read-only.

Slot: monomorphize
Type

(or null coalton-impl/parser/toplevel:attribute-monomorphize)

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::monomorphize))

Readers

toplevel-declare-monomorphize.

Writers

(setf toplevel-declare-monomorphize).

Structure: toplevel-define
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Direct superclasses

toplevel-definition.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/typechecker/expression:node-variable

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/toplevel::name))

Readers

toplevel-define-name.

Writers

This slot is read-only.

Slot: params
Type

coalton-impl/typechecker/pattern:pattern-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/toplevel::params))

Readers

toplevel-define-params.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/typechecker/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/toplevel::body))

Readers

toplevel-define-body.

Writers

This slot is read-only.

Structure: toplevel-define
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

toplevel-definition.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/expression:node-variable

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::name))

Readers

toplevel-define-name.

Writers

This slot is read-only.

Slot: params
Type

coalton-impl/parser/pattern:pattern-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::params))

Readers

toplevel-define-params.

Writers

This slot is read-only.

Slot: orig-params
Type

coalton-impl/parser/pattern:pattern-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::orig-params))

Readers

toplevel-define-orig-params.

Writers

This slot is read-only.

Slot: body
Type

coalton-impl/parser/expression:node-body

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::body))

Readers

toplevel-define-body.

Writers

This slot is read-only.

Slot: monomorphize
Type

(or null coalton-impl/parser/toplevel:attribute-monomorphize)

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::monomorphize))

Readers

toplevel-define-monomorphize.

Writers

(setf toplevel-define-monomorphize).

Structure: toplevel-define-class
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

toplevel-definition.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier-src

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::name))

Readers

toplevel-define-class-name.

Writers

This slot is read-only.

Slot: vars
Type

coalton-impl/parser/base:keyword-src-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::vars))

Readers

toplevel-define-class-vars.

Writers

This slot is read-only.

Slot: preds
Type

coalton-impl/parser/types:ty-predicate-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::preds))

Readers

toplevel-define-class-preds.

Writers

This slot is read-only.

Slot: fundeps
Type

coalton-impl/parser/toplevel:fundep-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::fundeps))

Readers

toplevel-define-class-fundeps.

Writers

This slot is read-only.

Slot: methods
Type

coalton-impl/parser/toplevel:method-definition-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::methods))

Readers

toplevel-define-class-methods.

Writers

This slot is read-only.

Slot: head-location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::head-location))

Readers

toplevel-define-class-head-location.

Writers

This slot is read-only.

Structure: toplevel-define-instance
Package

coalton-impl/typechecker/toplevel.

Source

toplevel.lisp.

Direct superclasses

toplevel-definition.

Direct slots
Slot: context
Type

coalton-impl/typechecker/predicate:ty-predicate-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/toplevel::context))

Readers

toplevel-define-instance-context.

Writers

This slot is read-only.

Slot: pred
Type

coalton-impl/typechecker/predicate:ty-predicate

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/toplevel::pred))

Readers

toplevel-define-instance-pred.

Writers

This slot is read-only.

Slot: methods
Type

hash-table

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/toplevel::methods))

Readers

toplevel-define-instance-methods.

Writers

This slot is read-only.

Slot: head-location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/toplevel::head-location))

Readers

toplevel-define-instance-head-location.

Writers

This slot is read-only.

Structure: toplevel-define-instance
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

toplevel-definition.

Direct methods

rename-variables-generic%.

Direct slots
Slot: context
Type

coalton-impl/parser/types:ty-predicate-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::context))

Readers

toplevel-define-instance-context.

Writers

This slot is read-only.

Slot: pred
Type

coalton-impl/parser/types:ty-predicate

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::pred))

Readers

toplevel-define-instance-pred.

Writers

This slot is read-only.

Slot: methods
Type

coalton-impl/parser/toplevel:instance-method-definition-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::methods))

Readers

toplevel-define-instance-methods.

Writers

This slot is read-only.

Slot: head-location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::head-location))

Readers

toplevel-define-instance-head-location.

Writers

This slot is read-only.

Slot: compiler-generated
Type

boolean

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::compiler-generated))

Readers

toplevel-define-instance-compiler-generated.

Writers

This slot is read-only.

Structure: toplevel-define-struct
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

toplevel-definition.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier-src

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::name))

Readers

toplevel-define-struct-name.

Writers

This slot is read-only.

Slot: vars
Type

coalton-impl/parser/base:keyword-src-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::vars))

Readers

toplevel-define-struct-vars.

Writers

This slot is read-only.

Slot: fields
Type

coalton-impl/parser/toplevel:struct-field-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::fields))

Readers

toplevel-define-struct-fields.

Writers

This slot is read-only.

Slot: repr
Type

(or null coalton-impl/parser/toplevel:attribute-repr)

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::repr))

Readers

toplevel-define-struct-repr.

Writers

(setf toplevel-define-struct-repr).

Slot: head-location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::head-location))

Readers

toplevel-define-struct-head-location.

Writers

This slot is read-only.

Structure: toplevel-define-type
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

toplevel-definition.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier-src

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::name))

Readers

toplevel-define-type-name.

Writers

This slot is read-only.

Slot: vars
Type

coalton-impl/parser/base:keyword-src-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::vars))

Readers

toplevel-define-type-vars.

Writers

This slot is read-only.

Slot: ctors
Type

coalton-impl/parser/toplevel:constructor-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::ctors))

Readers

toplevel-define-type-ctors.

Writers

This slot is read-only.

Slot: repr
Type

(or null coalton-impl/parser/toplevel:attribute-repr)

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::repr))

Readers

toplevel-define-type-repr.

Writers

(setf toplevel-define-type-repr).

Slot: head-location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::head-location))

Readers

toplevel-define-type-head-location.

Writers

This slot is read-only.

Structure: toplevel-lisp-form
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

structure-object.

Direct methods

location.

Direct slots
Slot: body
Type

cons

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::body))

Readers

toplevel-lisp-form-body.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::location))

Readers

toplevel-lisp-form-location.

Writers

This slot is read-only.

Structure: toplevel-specialize
Package

coalton-impl/parser/toplevel.

Source

toplevel.lisp.

Direct superclasses

structure-object.

Direct methods

location.

Direct slots
Slot: from
Type

coalton-impl/parser/expression:node-variable

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::from))

Readers

toplevel-specialize-from.

Writers

This slot is read-only.

Slot: to
Type

coalton-impl/parser/expression:node-variable

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::to))

Readers

toplevel-specialize-to.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/parser/types:ty

Initform

(coalton-impl/util:required (quote type))

Readers

toplevel-specialize-type.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/toplevel::location))

Readers

toplevel-specialize-location.

Writers

This slot is read-only.

Structure: translation-unit
Package

coalton-impl/typechecker/translation-unit.

Source

translation-unit.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: types
Type

coalton-impl/typechecker/define-type:type-definition-list

Readers

translation-unit-types.

Writers

This slot is read-only.

Slot: definitions
Type

coalton-impl/typechecker/toplevel:toplevel-define-list

Readers

translation-unit-definitions.

Writers

This slot is read-only.

Slot: instances
Type

coalton-impl/typechecker/toplevel:toplevel-define-instance-list

Readers

translation-unit-instances.

Writers

This slot is read-only.

Slot: lisp-forms
Type

coalton-impl/parser/toplevel:toplevel-lisp-form-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/translation-unit::lisp-forms))

Readers

translation-unit-lisp-forms.

Writers

This slot is read-only.

Slot: classes
Type

coalton-impl/typechecker/environment:ty-class-list

Readers

translation-unit-classes.

Writers

This slot is read-only.

Slot: package
Package

common-lisp.

Type

package

Initform

(coalton-impl/util:required (quote package))

Readers

translation-unit-package.

Writers

This slot is read-only.

Structure: traverse-block
Package

coalton-impl/typechecker/traverse.

Source

traverse.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: variable
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-variable.

Writers

This slot is read-only.

Slot: accessor
Type

function

Initform

(function identity)

Readers

traverse-accessor.

Writers

This slot is read-only.

Slot: literal
Type

function

Initform

(function identity)

Readers

traverse-literal.

Writers

This slot is read-only.

Slot: integer-literal
Type

function

Initform

(function identity)

Readers

traverse-integer-literal.

Writers

This slot is read-only.

Slot: bind
Type

function

Initform

(function identity)

Readers

traverse-bind.

Writers

This slot is read-only.

Slot: body
Type

function

Initform

(function identity)

Readers

traverse-body.

Writers

This slot is read-only.

Slot: abstraction
Type

function

Initform

(function identity)

Readers

traverse-abstraction.

Writers

This slot is read-only.

Slot: let-binding
Type

function

Initform

(function identity)

Readers

traverse-let-binding.

Writers

This slot is read-only.

Slot: let
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-let.

Writers

This slot is read-only.

Slot: lisp
Type

function

Initform

(function identity)

Readers

traverse-lisp.

Writers

This slot is read-only.

Slot: match-branch
Type

function

Initform

(function identity)

Readers

traverse-match-branch.

Writers

This slot is read-only.

Slot: match
Type

function

Initform

(function identity)

Readers

traverse-match.

Writers

This slot is read-only.

Slot: progn
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-progn.

Writers

This slot is read-only.

Slot: return
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-return.

Writers

This slot is read-only.

Slot: application
Type

function

Initform

(function identity)

Readers

traverse-application.

Writers

This slot is read-only.

Slot: or
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-or.

Writers

This slot is read-only.

Slot: and
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-and.

Writers

This slot is read-only.

Slot: if
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-if.

Writers

This slot is read-only.

Slot: when
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-when.

Writers

This slot is read-only.

Slot: unless
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-unless.

Writers

This slot is read-only.

Slot: cond-clause
Type

function

Initform

(function identity)

Readers

traverse-cond-clause.

Writers

This slot is read-only.

Slot: cond
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-cond.

Writers

This slot is read-only.

Slot: while
Type

function

Initform

(function identity)

Readers

traverse-while.

Writers

This slot is read-only.

Slot: while-let
Type

function

Initform

(function identity)

Readers

traverse-while-let.

Writers

This slot is read-only.

Slot: for
Type

function

Initform

(function identity)

Readers

traverse-for.

Writers

This slot is read-only.

Slot: loop
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-loop.

Writers

This slot is read-only.

Slot: break
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-break.

Writers

This slot is read-only.

Slot: continue
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-continue.

Writers

This slot is read-only.

Slot: do-bind
Type

function

Initform

(function identity)

Readers

traverse-do-bind.

Writers

This slot is read-only.

Slot: do
Package

common-lisp.

Type

function

Initform

(function identity)

Readers

traverse-do.

Writers

This slot is read-only.

Structure: ty
Package

coalton-impl/parser/types.

Source

types.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods

location.

Direct slots
Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/types::location))

Readers

ty-location.

Writers

This slot is read-only.

Structure: ty
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods
Structure: ty-class
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::name))

Readers

ty-class-name.

Writers

This slot is read-only.

Slot: predicate
Type

coalton-impl/typechecker/predicate:ty-predicate

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::predicate))

Readers

ty-class-predicate.

Writers

This slot is read-only.

Slot: superclasses
Type

coalton-impl/typechecker/predicate:ty-predicate-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::superclasses))

Readers

ty-class-superclasses.

Writers

This slot is read-only.

Slot: class-variables
Type

coalton-impl/util:symbol-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::class-variables))

Readers

ty-class-class-variables.

Writers

This slot is read-only.

Slot: class-variable-map
Type

coalton-impl/typechecker/map:environment-map

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::class-variable-map))

Readers

ty-class-class-variable-map.

Writers

This slot is read-only.

Slot: fundeps
Type

coalton-impl/typechecker/fundeps:fundep-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::fundeps))

Readers

ty-class-fundeps.

Writers

This slot is read-only.

Slot: unqualified-methods
Type

coalton-impl/typechecker/environment::ty-class-method-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::unqualified-methods))

Readers

ty-class-unqualified-methods.

Writers

This slot is read-only.

Slot: codegen-sym
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::codegen-sym))

Readers

ty-class-codegen-sym.

Writers

This slot is read-only.

Slot: superclass-dict
Type

list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::superclass-dict))

Readers

ty-class-superclass-dict.

Writers

This slot is read-only.

Slot: superclass-map
Type

coalton-impl/typechecker/map:environment-map

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::superclass-map))

Readers

ty-class-superclass-map.

Writers

This slot is read-only.

Slot: docstring
Type

(or null string)

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::docstring))

Readers

ty-class-docstring.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::location))

Readers

ty-class-location.

Writers

This slot is read-only.

Structure: ty-class-instance
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: constraints
Type

coalton-impl/typechecker/predicate:ty-predicate-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::constraints))

Readers

ty-class-instance-constraints.

Writers

This slot is read-only.

Slot: predicate
Type

coalton-impl/typechecker/predicate:ty-predicate

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::predicate))

Readers

ty-class-instance-predicate.

Writers

This slot is read-only.

Slot: codegen-sym
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::codegen-sym))

Readers

ty-class-instance-codegen-sym.

Writers

This slot is read-only.

Slot: method-codegen-syms
Type

coalton-impl/typechecker/map:environment-map

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::method-codegen-syms))

Readers

ty-class-instance-method-codegen-syms.

Writers

This slot is read-only.

Slot: docstring
Type

(or null string)

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::docstring))

Readers

ty-class-instance-docstring.

Writers

This slot is read-only.

Structure: ty-class-method
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::name))

Readers

ty-class-method-name.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/typechecker/scheme:ty-scheme

Initform

(coalton-impl/util:required (quote type))

Readers

ty-class-method-type.

Writers

This slot is read-only.

Slot: docstring
Type

(or null string)

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::docstring))

Readers

ty-class-method-docstring.

Writers

This slot is read-only.

Structure: ty-predicate
Package

coalton-impl/parser/types.

Source

types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: class
Package

common-lisp.

Type

coalton-impl/parser/base:identifier-src

Initform

(coalton-impl/util:required (quote class))

Readers

ty-predicate-class.

Writers

This slot is read-only.

Slot: types
Type

coalton-impl/parser/types:ty-list

Initform

(coalton-impl/util:required (quote coalton-impl/parser/types::types))

Readers

ty-predicate-types.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/parser/types::location))

Readers

ty-predicate-location.

Writers

This slot is read-only.

Structure: ty-predicate

A type predicate indicating that TYPE is of the CLASS

Package

coalton-impl/typechecker/predicate.

Source

predicate.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: class
Package

common-lisp.

Type

symbol

Initform

(coalton-impl/util:required (quote class))

Readers

ty-predicate-class.

Writers

This slot is read-only.

Slot: types
Type

coalton-impl/typechecker/types:ty-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/predicate::types))

Readers

ty-predicate-types.

Writers

This slot is read-only.

Slot: location
Type

(or coalton-impl/source:location null)

Readers

ty-predicate-location.

Writers

This slot is read-only.

Structure: ty-scheme
Package

coalton-impl/typechecker/scheme.

Source

scheme.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: kinds
Type

list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/scheme::kinds))

Readers

ty-scheme-kinds.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/typechecker/predicate:qualified-ty

Initform

(coalton-impl/util:required (quote type))

Readers

ty-scheme-type.

Writers

This slot is read-only.

Structure: tycon
Package

coalton-impl/parser/types.

Source

types.lisp.

Direct superclasses

ty.

Direct methods
Direct slots
Slot: name
Type

coalton-impl/parser/base:identifier

Initform

(coalton-impl/util:required (quote coalton-impl/parser/types::name))

Readers

tycon-name.

Writers

This slot is read-only.

Structure: tycon
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Direct superclasses

ty.

Direct methods
Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/types::name))

Readers

tycon-name.

Writers

This slot is read-only.

Slot: kind
Package

coalton-impl/typechecker/kinds.

Type

coalton-impl/typechecker/kinds:kind

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/kinds:kind))

Readers

tycon-kind.

Writers

This slot is read-only.

Structure: type-definition
Package

coalton-impl/typechecker/define-type.

Source

define-type.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/define-type::name))

Readers

type-definition-name.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote type))

Readers

type-definition-type.

Writers

This slot is read-only.

Slot: runtime-type
Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/define-type::runtime-type))

Readers

type-definition-runtime-type.

Writers

This slot is read-only.

Slot: explicit-repr
Type

coalton-impl/typechecker/environment:explicit-repr

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/define-type::explicit-repr))

Readers

type-definition-explicit-repr.

Writers

This slot is read-only.

Slot: enum-repr
Type

boolean

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/define-type::enum-repr))

Readers

type-definition-enum-repr.

Writers

This slot is read-only.

Slot: newtype
Type

boolean

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/define-type::newtype))

Readers

type-definition-newtype.

Writers

This slot is read-only.

Slot: constructors
Type

coalton-impl/typechecker/environment:constructor-entry-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/define-type::constructors))

Readers

type-definition-constructors.

Writers

This slot is read-only.

Slot: constructor-types
Type

coalton-impl/typechecker/scheme:scheme-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/define-type::constructor-types))

Readers

type-definition-constructor-types.

Writers

This slot is read-only.

Slot: constructor-args
Type

list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/define-type::constructor-args))

Readers

type-definition-constructor-args.

Writers

This slot is read-only.

Slot: docstring
Type

(or null string)

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/define-type::docstring))

Readers

type-definition-docstring.

Writers

This slot is read-only.

Slot: location
Type

coalton-impl/source:location

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/define-type::location))

Readers

type-definition-location.

Writers

This slot is read-only.

Structure: type-entry
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

symbol

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::name))

Readers

type-entry-name.

Writers

This slot is read-only.

Slot: runtime-type
Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::runtime-type))

Readers

type-entry-runtime-type.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Type

coalton-impl/typechecker/types:ty

Initform

(coalton-impl/util:required (quote type))

Readers

type-entry-type.

Writers

This slot is read-only.

Slot: tyvars
Type

coalton-impl/typechecker/types:tyvar-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::tyvars))

Readers

type-entry-tyvars.

Writers

This slot is read-only.

Slot: constructors
Type

coalton-impl/util:symbol-list

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::constructors))

Readers

type-entry-constructors.

Writers

This slot is read-only.

Slot: explicit-repr
Type

coalton-impl/typechecker/environment:explicit-repr

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment:explicit-repr))

Readers

type-entry-explicit-repr.

Writers

This slot is read-only.

Slot: enum-repr
Type

boolean

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::enum-repr))

Readers

type-entry-enum-repr.

Writers

This slot is read-only.

Slot: newtype
Type

boolean

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::newtype))

Readers

type-entry-newtype.

Writers

This slot is read-only.

Slot: docstring
Type

(or null string)

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/environment::docstring))

Readers

type-entry-docstring.

Writers

This slot is read-only.

Slot: location
Type

(or null coalton-impl/source:location)

Readers

type-entry-location.

Writers

This slot is read-only.

Structure: type-environment
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

immutable-map.

Structure: tyvar
Package

coalton-impl/parser/types.

Source

types.lisp.

Direct superclasses

ty.

Direct methods
Direct slots
Slot: name
Type

keyword

Initform

(coalton-impl/util:required (quote coalton-impl/parser/types::name))

Readers

tyvar-name.

Writers

This slot is read-only.

Structure: tyvar
Package

coalton-impl/typechecker/types.

Source

types.lisp.

Direct superclasses

ty.

Direct methods
Direct slots
Slot: id
Type

fixnum

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/types::id))

Readers

tyvar-id.

Writers

This slot is read-only.

Slot: kind
Package

coalton-impl/typechecker/kinds.

Type

coalton-impl/typechecker/kinds:kind

Initform

(coalton-impl/util:required (quote coalton-impl/typechecker/kinds:kind))

Readers

tyvar-kind.

Writers

This slot is read-only.

Structure: value-environment
Package

coalton-impl/typechecker/environment.

Source

environment.lisp.

Direct superclasses

immutable-map.

Direct methods

6.1.11 Classes

Class: cell

Internally mutable cell

Package

coalton-library/cell.

Source

cell.lisp.

Direct methods

make-load-form.

Class: char-position-stream

A stream that exposes the character offset into an underlying character stream through #’stream-file-position.

Package

coalton-impl/source.

Source

source.lisp.

Direct superclasses

fundamental-character-input-stream.

Direct methods
Direct slots
Slot: stream
Package

common-lisp.

Initargs

:stream

Readers

inner-stream.

Writers

This slot is read-only.

Slot: unread
Readers

unread-characters.

Writers

(setf unread-characters).

Slot: position
Package

common-lisp.

Initform

0

Readers

character-position.

Writers

(setf character-position).

Class: complex

Complex number that may either have a native or constructed representation.

Package

coalton-library/math/complex.

Source

complex.lisp.

Direct subclasses

complex/%complex.

Direct methods

make-load-form.

Class: dual

Representation of a dual number in the form ‘a + bε‘ where ‘a‘ and ‘b‘ are real numbers and ‘ε‘ satisfies ‘ε^2 = 0‘ and ‘ε != 0‘.

Note: ‘Eq‘, and ‘Ord‘ and ‘Hash‘ only make use of the primal component.

Package

coalton-library/math/dual.

Source

dual.lisp.

Direct subclasses

dual/dual.

Direct methods

make-load-form.

Class: dyadic

‘(Dyadic n k)‘ represents the rational n*2^k.

Package

coalton-library/math/dyadic.

Source

dyadic.lisp.

Direct subclasses

dyadic/dyadic.

Direct methods

make-load-form.

Class: fileerror

Errors for file functions.

Package

coalton-library/file.

Source

file.lisp.

Direct subclasses
Direct methods

make-load-form.

Class: filestream

Represents a file stream, using ‘cl:file-stream‘.

Package

coalton-library/file.

Source

file.lisp.

Direct methods

make-load-form.

Class: free

‘Free :f‘ gives you a Monad instance for any ‘Functor :f‘.

References: [here](https://serokell.io/blog/introduction-to-free-monads) and [here](https://www.tweag.io/blog/2018-02-05-free-monads/)

Package

coalton-library/monad/free.

Source

monad/free.lisp.

Direct subclasses
Direct methods

make-load-form.

Class: hash

Implementation dependent hash code

Package

coalton-library/hash.

Source

hash.lisp.

Direct methods

make-load-form.

Class: hashtable

A mutable hash table.

Package

coalton-library/hashtable.

Source

hashtable.lisp.

Direct methods

make-load-form.

Class: i16

Signed 16-bit integer capable of storing values in ‘[-32768, 32767]‘. Uses ‘(signed-byte 16)‘.

Package

coalton.

Source

primitive-types.lisp.

Direct methods

make-load-form.

Class: i32

Signed 32-bit integer capable of storing values in ‘[-2147483648, 2147483647]‘. Uses ‘(signed-byte 32)‘.

Package

coalton.

Source

primitive-types.lisp.

Direct methods

make-load-form.

Class: i64

Signed 64-bit integer capable of storing values in ‘[-9223372036854775808, 9223372036854775807]‘. Uses ‘(signed-byte 64)‘.

Package

coalton.

Source

primitive-types.lisp.

Direct methods

make-load-form.

Class: i8

Signed 8-bit integer capable of storing values in ‘[-128, 127]‘. Uses ‘(signed-byte 8)‘.

Package

coalton.

Source

primitive-types.lisp.

Direct methods

make-load-form.

Class: ifix

Non-allocating tagged integer; range is platform-dependent. Does not error on overflow. Uses ‘fixnum‘.

Package

coalton.

Source

primitive-types.lisp.

Direct methods

make-load-form.

Class: iterator

A forward-moving pointer into an ordered sequence of :ELTs

Package

coalton-library/iterator.

Source

iterator.lisp.

Direct subclasses

iterator/%iterator.

Direct methods

make-load-form.

Class: lisparray

A one-dimensional, non-resizable array of elements.

These arrays are represented as possibly specialized ‘(cl:simple-array <type> (cl:*))‘ and are meant to be used as a tool either to interface with Lisp code or to implement efficient data structures. One should consult ‘Vector‘ or ‘Seq‘ for more general sequential data structure needs.

Whether or not the arrays are specialized depends on the underlying Lisp implementation. Consult ‘cl:upgraded-array-element-type‘ to determine whether ‘LispArray‘ may get specialized.

Package

coalton-library/lisparray.

Source

lisparray.lisp.

Direct methods

make-load-form.

Class: lispcondition

Condition for lisp error handling. Uses ‘cl:condition‘.

Package

coalton-library/system.

Source

system.lisp.

Direct methods

make-load-form.

Class: lisptype

The runtime representation of a Coalton type as a lisp type.

Package

coalton-library/types.

Source

types.lisp.

Direct methods

make-load-form.

Class: note

A message describing the contents of a source location.

Package

coalton-impl/source.

Source

source.lisp.

Direct methods
Direct slots
Slot: location
Initargs

:location

Readers

location.

Writers

This slot is read-only.

Slot: message
Initargs

:message

Readers

message.

Writers

This slot is read-only.

Slot: replace
Package

common-lisp.

Initform

(function identity)

Initargs

:replace

Readers

replace-function.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Initform

(quote :secondary)

Initargs

:type

Readers

note-type.

Writers

This slot is read-only.

Class: optional

Represents something that may not have a value.

Package

coalton-library/classes.

Source

classes.lisp.

Direct subclasses
Direct methods

make-load-form.

Class: pathname

Pathname object. Equivalent to ‘cl:pathname‘

Package

coalton-library/file.

Source

file.lisp.

Direct methods

make-load-form.

Class: profile

A profile of a run function.

Package

coalton-library/system.

Source

system.lisp.

Direct subclasses

profile/profile.

Direct methods

make-load-form.

Class: quantization

Represents an integer quantization of ‘:a‘.

The fields are defined as follows:

1. A value of type ‘:a‘.
2. The greatest integer less than or equal to a particular value. 3. The remainder of this as a value of type ‘:a‘.
4. The least integer greater than or equal to a particular value. 5. The remainder of this as a value of type ‘:a‘.

Package

coalton-library/math/real.

Source

real.lisp.

Direct subclasses

quantization/quantization.

Direct methods

make-load-form.

Class: queue

Unbounded FIFO queue implemented with a linked list.

Package

coalton-library/queue.

Source

queue.lisp.

Direct methods

make-load-form.

Class: result

Represents something that may have failed.

Package

coalton-library/classes.

Source

classes.lisp.

Direct subclasses
Direct methods

make-load-form.

Class: seq
Package

coalton-library/seq.

Source

seq.lisp.

Direct subclasses
Direct methods
Class: slice
Package

coalton-library/slice.

Source

slice.lisp.

Direct methods

make-load-form.

Class: streamoptions

A type for providing parameters for opening streams. StreamOptions take strings for pathnames, but they will error if they are not proper and appropriate pathnames.

Package

coalton-library/file.

Source

file.lisp.

Direct subclasses
Direct methods

make-load-form.

Class: tree

A red-black balanced binary tree, sorted by ‘<=>‘ and unique by ‘==‘.

Package

coalton-library/ord-tree.

Source

ord-tree.lisp.

Direct subclasses
Direct methods

make-load-form.

Class: tuple

A heterogeneous collection of items.

Package

coalton-library/classes.

Source

classes.lisp.

Direct subclasses

tuple/tuple.

Direct methods

make-load-form.

Class: tuple3
Package

coalton-library/tuple.

Source

tuple.lisp.

Direct subclasses

tuple3/tuple3.

Direct methods

make-load-form.

Class: tuple4
Package

coalton-library/tuple.

Source

tuple.lisp.

Direct subclasses

tuple4/tuple4.

Direct methods

make-load-form.

Class: tuple5
Package

coalton-library/tuple.

Source

tuple.lisp.

Direct subclasses

tuple5/tuple5.

Direct methods

make-load-form.

Class: u16

Unsigned 16-bit integer capable of storing values in ‘[0, 65535]‘. Uses ‘(unsigned-byte 16)‘.

Package

coalton.

Source

primitive-types.lisp.

Direct methods

make-load-form.

Class: u32

Unsigned 32-bit integer capable of storing values in ‘[0, 4294967295]‘. Uses ‘(unsigned-byte 32)‘.

Package

coalton.

Source

primitive-types.lisp.

Direct methods

make-load-form.

Class: u64

Unsigned 64-bit integer capable of storing values in ‘[0, 18446744073709551615]‘. Uses ‘(unsigned-byte 64)‘.

Package

coalton.

Source

primitive-types.lisp.

Direct methods

make-load-form.

Class: u8

Unsigned 8-bit integer capable of storing values in ‘[0, 255]‘. Uses &l