-
-
Notifications
You must be signed in to change notification settings - Fork 0
Function Development Index
Joint Development works on a Library Card system. If you want to make changes to an existing common function then you need to check it out from the library. This way Functions can only have a single developer at any given time.
Currently there are almost 250 functions, ideally there would be less than 200, maybe only 100.
compile := λ()
compile-program-ordered := λ(: global-ctx CCContext)(: program AST)
compile-type := λ(: ctx CCContext)(: lhs AST)(: rhs AST)
compile-type-case := λ(: ctx CCContext)(: base-type Type)(: rhs AST)(: case-number U64)
compile-define-head-accessor := λ(: ctx CCContext)(: base-type Type)
compile-define-field-accessors := λ(: ctx CCContext)(: base-type Type)(: field-types Type)(: case-number U64)
compile-define-tag-constructor := λ(: ctx CCContext)(: tag String)(: arg-types Type)(: base-type Type)(: rtype Type)(: case-number U64)
compile-finish := λ
compile-write := λ
to-s := λ(: term AST)
print := λ(: t Context)
print := λ(: t TContext)
print := λ(: t AST)
serialize-ast := λ(: t AST)
s-abs := λ(: lhs S[])(: rhs S[])
s-app := λ(: lhs S[])(: rhs S[])
s-var := λ(: s String)
s-lit := λ(: s String)
main := λ(: argc U64)(: argv String[])
STRICT/codegen.lm:compile-global := λ(: ctx CCContext)(: k String)(: term AST). (: (tail(
STRICT/codegen.lm:compile-global := λ(: ctx CCContext)(: term AST). (: (tail(
STRICT/codegen.lm:compile-expr := λ(: ctx CCContext)(: term AST)(: stack-offset I64)(: used Used). (: (tail(
STRICT/codegen.lm:compile-expr-direct := λ(: ctx CCContext)(: term AST)(: stack-offset I64)(: used Used). (: (tail(
STRICT/codegen.lm:compile-destructure-args := λ(: tt Type)(: ctx CCContext)(: lhs AST)(: offset I64). (: (tail(
STRICT/codegen.lm:compile-stack-call := λ(: ctx CCContext)(: function-name String)(: return-type Type)(: args AST)(: offset I64). (: (tail(
STRICT/codegen.lm:compile-translate-local-variables := λ(: ctx CCContext)(: delta I64). (: (tail(
STRICT/codegen.lm:compile-stack-call-push-args := λ(: ctx CCContext)(: args AST)(: inner-offset I64). (: (tail(
STRICT/codegen.lm:as-branch-conditional := λ(: f CCFragment). (: (tail(
STRICT/codegen.lm:compile-declare-cstring := λ(: val String). (: (tail(
STRICT/codegen.lm:compile-maybe-push-stack := λ(: ctx CCContext)(: offset I64)(: fragment CCFragment)(: expression-type Type)(: sloc AST). (: (tail(
STRICT/codegen.lm:compile-push-rvalue := λ(: ctx CCContext)(: rval AST)(: offset I64). (: (tail(
STRICT/codegen.lm:compile-fragment-args := λ(: ctx CCContext)(: rval AST)(: offset I64). (: (tail(
STRICT/codegen.lm:compile-constructor := λ(: ctx CCContext)(: tag-name String)(: return-type Type)(: args AST)(: offset I64). (: (tail(
STRICT/context.lm:print := λ(: ctx CCContext). (: (tail(
STRICT/context.lm:cccontext::new := λ. (: (tail(
STRICT/context.lm:cccontext::lookup := λ(: ctx CCContext)(: k String)(: kt Type)(: sloc AST). (: (
STRICT/context.lm:cccontext::lookup := λ(: ctx CCContext)(: k String)(: kt Type)(: sloc AST)(: hard-error U8). (: (tail(
STRICT/context.lm:cccontext::bind := λ(: ctx CCContext)(: k String)(: kt Type)(: f CCFragment). (: (tail(
STRICT/context.lm:cccontext::bind := λ(: ctx CCContext)(: k String)(: v String). (: (tail(
STRICT/context.lm:cccontext::get := λ(: ctx CCContext)(: k String). (: (tail(
STRICT/context.lm:cccontext::get-offset := λ(: ctx CCContext). (: (tail(
STRICT/data.lm:compile-text-header := λ . (: (tail(
STRICT/data.lm:compile-data-header := λ . (: (tail(
STRICT/data.lm:compile-argv-text-header := λ . (: (tail(
STRICT/data.lm:compile-exit-cleanup := λ . (: (tail(
STRICT/fragment.lm:print := λ(: x CCFragment). (: (
STRICT/fragment.lm:print := λ(: x FragList). (: (
STRICT/fragment.lm:ccfragment::new := λ . (: (tail(
STRICT/fragment.lm:ccfragment::local-variable := λ(: offset I64)(: tt Type). (: (tail(
STRICT/fragment.lm:ccfragment::label := λ(: id String). (: (tail(
STRICT/fragment.lm:ccfragment::expression := λ(: val String) . (: (tail(
STRICT/fragment.lm:ccfragment::get := λ(: e CCFragment)(: k String). (: (tail(
STRICT/fragment.lm:ccfragment::set := λ(: e CCFragment)(: k String)(: v S). (: (tail(
STRICT/fragment.lm:ccfragment::get-context := λ(: e CCFragment) . (: (tail(
STRICT/fragment.lm:ccfragment::set-context := λ(: e CCFragment)(: ctx CCContext). (: (tail(
STRICT/fragment.lm:ccfragment::get-type := λ(: e CCFragment) . (: (tail(
STRICT/fragment.lm:ccfragment::set-type := λ(: e CCFragment)(: tt Type). (: (tail(
STRICT/fragment.lm:ccfragment::get-offset := λ(: e CCFragment). (: (tail(
STRICT/fragment.lm:ccfragment::set-offset := λ(: e CCFragment)(: offset I64). (: (tail(
STRICT/fragment.lm:typeof := λ(: args FragList). (: (tail(
STRICT/fragment.lm:fragment-size-args := λ(: args FragList). (: (tail(
STRICT/fragment.lm:fragment-apply := λ(: ctx CCContext)(: offset I64)(: k String)(: args FragList)(: sloc AST). (: (tail(
STRICT/fragment.lm:fragment-destructure-tctx := λ(: ctx CCContext)(: tctx TContext). (: (tail(
STRICT/fragment.lm:fragment-destructure-lhs := λ(: ctx CCContext)(: lhs S)(: args FragList). (: (tail(
STRICT/fragment.lm:fragment-render := λ(: mode String)(: ctx CCContext)(: s S). (: (tail(
STRICT/fragment.lm:fragment-apply-context := λ(: ctx CCContext)(: rhs S)(: e CCFragment). (: (tail(
STRICT/fragment.lm:fragment-apply-direct := λ(: arrow CCFragment)(: args FragList)(: e-proto CCFragment)(: chain U8). (: (tail(
STRICT/fragment.lm:ccfragment::chain := λ(: l CCFragment)(: r CCFragment). (: (tail(
STRICT/fragment.lm:fragment-chain := λ(: fragment-ctx FragList)(: e CCFragment). (: (tail(
STRICT/parse.lm:print := λ(: x ParsePartial). (: (match x (
STRICT/parse.lm:parse := λ. (: (tail(
STRICT/parse.lm:parse-many-expressions := λ(: tokens S). (: (tail(
STRICT/parse.lm:parse-one-expression := λ(: tokens S). (: (tail(
STRICT/parse.lm:parse-unexpect := λ(: msg String)(: tokens S). (: (tail(
STRICT/parse.lm:parse-expect := λ(: msg String)(: tokens S). (: (tail(
STRICT/parse.lm:parse-lambda := λ(: tokens S). (: (tail(
STRICT/parse.lm:parse-type := λ(: tt String). (: (tail(
STRICT/parse.lm:parse-type-single := λ(: tt String). (: (tail(
STRICT/parse.lm:parse-type-comma-sep := λ(: tt String). (: (tail(
STRICT/preprocess.lm:preprocess-index-of-tag := λ(: tag String). (: (tail(
STRICT/preprocess.lm:preprocess := λ. (: (tail(
STRICT/preprocess.lm:preprocess-index-typedefs := λ(: program AST). (: (
STRICT/preprocess.lm:preprocess-index-typedef := λ(: term AST). (: (match term (
STRICT/preprocess.lm:preprocess-index-indices := λ(: def AST)(: index U64) . (: (tail(
STRICT/preprocess.lm:preprocess-index-index := λ(: body AST)(: index U64). (: (tail(
STRICT/preprocess.lm:preprocess-apply := λ(: program AST). (: (tail(
STRICT/preprocess.lm:is-macro-head := λ(: s String). (: (tail(
STRICT/preprocess.lm:merge := λ(: l Context)(: r Context). (: (tail(
STRICT/preprocess.lm:try-destructure-macro := λ(: lhs AST)(: term AST). (: (tail(
STRICT/preprocess.lm:replace-loc := λ(: loc AST)(: term AST). (: (tail(
STRICT/preprocess.lm:apply-context := λ(: ctx Context)(: term AST). (: (tail(
STRICT/preprocess.lm:substitute-uuids := λ(: ctx Context)(: term AST). (: (tail(
STRICT/preprocess.lm:extract-uuids := λ(: sloc AST)(: ctx Context)(: term AST). (: (tail(
STRICT/preprocess.lm:preprocess-apply-maybe := λ(: program AST). (: (tail(
STRICT/tokenize.lm:location := λ(: tok String). (: (tail(
STRICT/tokenize.lm:add-location := λ(: tok String)(: loc SourceLocation). (: (
STRICT/tokenize.lm:add-location := λ(: tok String)(: loc SourceMap). (: (
STRICT/tokenize.lm:add-location := λ(: tok String)(: file String)(: line U64)(: column U64). (: (
STRICT/tokenize.lm:location := λ(: term AST). (: (tail(
STRICT/tokenize.lm:print := λ(: loc SourceMap). (: (
STRICT/tokenize.lm:tokenize := λ(: fp String). (: (tail(
STRICT/typecheck.lm:to-string := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:to-string-impl := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:typecheck-sizeof := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:typecheck-aligned-sizeof := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:typecheck-get-size := λ(: tag String). (: (tail(
STRICT/typecheck.lm:typecheck-set-size := λ(: tag String)(: size U64). (: (
STRICT/typecheck.lm:merge := λ(: lctx TContext)(: rctx TContext). (: (tail(
STRICT/typecheck.lm:print := λ(: tt Type). (: (match tt (
STRICT/typecheck.lm:serialize-ast := λ(: tt Type). (: (match tt (
STRICT/typecheck.lm:tsized := λ(: sz String). (: (tail(
STRICT/typecheck.lm:t1 := λ(: s String). (: (tail(
STRICT/typecheck.lm:typecheck-typeof-lhs := λ(: lhs AST). (: (tail(
STRICT/typecheck.lm:typecheck := λ. (: (tail(
STRICT/typecheck.lm:typecheck-infer-type-definition := λ(: base-type Type)(: body AST). (: (tail(
STRICT/typecheck.lm:typecheck-infer-type-constructor := λ(: base-type Type)(: body AST). (: (tail(
STRICT/typecheck.lm:typecheck-annotate-head-accessor := λ(: base-type Type). (: (tail(
STRICT/typecheck.lm:typecheck-annotate-accessors := λ(: base-type Type)(: args-type Type). (: (tail(
STRICT/typecheck.lm:typecheck-infer-type-compound := λ(: compound AST). (: (tail(
STRICT/typecheck.lm:typecheck-infer-global-context := λ(: td AST). (: (tail(
STRICT/typecheck.lm:typecheck-assert-complete := λ(: term AST). (: (
STRICT/typecheck.lm:typecheck-assert-one := λ(: term AST). (: (
STRICT/typecheck.lm:typecheck-lookup := λ(: term AST). (: (tail(
STRICT/typecheck.lm:exit-error := λ(: msg String)(: t AST). (: (tail(
STRICT/typecheck.lm:without-tag := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:normalize := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:nonnormal := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:typecheck-is-sized := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:typecheck-annotate-size-inner := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:typecheck-annotate-size-recurse := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:with-size := λ(: tt Type). (: (
STRICT/typecheck.lm:typecheck-annotate-size := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:typecheck-ascript := λ(: t S)(: tt Type). (: (
STRICT/typecheck.lm:typecheck-lookup := λ(: term S). (: (tail(
STRICT/typecheck.lm:typecheck-ascript := λ(: t AST)(: tt Type). (: (
STRICT/typecheck.lm:typecheck-infer-expr := λ(: tctx TContext)(: term AST)(: used Used). (: (tail(
STRICT/typecheck.lm:typecheck-slot := λ(: tt Type)(: slot String). (: (tail(
STRICT/typecheck.lm:typecheck-slot-inner := λ(: tt Type)(: slot String). (: (tail(
STRICT/typecheck.lm:typecheck-typeof-tag := λ(: tag String). (: (tail(
STRICT/typecheck.lm:typecheck-classof-tag := λ(: tag String). (: (tail(
STRICT/typecheck.lm:as-local-variable := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:as-constant := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:as-return := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:is-arrow := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:typecheck-apply-plural := λ(: sloc AST)(: many Type)(: pt Type). (: (tail(
STRICT/typecheck.lm:typecheck-apply-hard := λ(: sloc AST)(: ft Type)(: pt Type). (: (tail(
STRICT/typecheck.lm:typecheck-unify-ctx := λ(: ctx TContext)(: tt Type). (: (tail(
STRICT/typecheck.lm:tcontext-accept := λ. (: (tail(
STRICT/typecheck.lm:typecheck-unify-args := λ(: fpt Type)(: pt Type). (: (tail(
STRICT/typecheck.lm:typecheck-unify-generous := λ(: fpt Type)(: pt Type). (: (tail(
STRICT/typecheck.lm:tarrow := λ(: lt Type)(: rt Type). (: (tail(
STRICT/typecheck.lm:tcons := λ(: lt Type)(: rt Type). (: (tail(
STRICT/typecheck.lm:right-if-not-left := λ(: lt Type)(: rt Type). (: (tail(
STRICT/typecheck.lm:tand := λ(: lt Type)(: rt Type). (: (tail(
STRICT/typecheck.lm:tarray := λ(: lt Type)(: rt Type). (: (tail(
STRICT/typecheck.lm:tlabel := λ. (: (tail(
STRICT/typecheck.lm:without-representation := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:with-only-representation := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:with-representation := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:guess-only-representation := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:typecheck-infer-ctx := λ(: tctx TContext)(: lhs AST). (: (tail(
STRICT/typecheck.lm:typecheck-typeof-var := λ(: sloc AST)(: tctx TContext)(: vname String). (: (tail(
STRICT/typecheck.lm:typecheck-domain := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:typecheck-range := λ(: tt Type). (: (tail(
STRICT/typecheck.lm:is-fragment-type := λ(: tt Type). (: (tail(
STRICT/utility.lm:list-tail-order-to-head-order := λ(: s S). (: (tail(
STRICT/utility.lm:is-variable := λ(: s String). (: (tail(
STRICT/utility.lm:is-suffix := λ(: base String)(: sfx String). (: (tail(
STRICT/utility.lm:remove-suffix := λ(: base String)(: sfx String). (: (tail(
STRICT/utility.lm:to-string := λ(: i U64). (: (tail(
STRICT/utility.lm:to-string := λ(: i I64). (: (tail(
STRICT/utility.lm:uuid := λ . (: (tail(
STRICT/utility.lm:dump-i := λ(: i U64). (: (tail(
STRICT/utility.lm:to-i64 := λ(: s String). (: (tail(
STRICT/utility.lm:to-u64 := λ(: s String). (: (tail(
STRICT/utility.lm:max := λ(: l U64)(: r U64). (: (tail(
STRICT/utility.lm:mangle-identifier := λ(: kt Type). (: (tail(
STRICT/utility.lm:mangle-identifier := λ(: k String). (: (tail(
STRICT/utility.lm:mangle-identifier := λ(: k String)(: kt Type). (: (tail(
STRICT/utility.lm:escape-string := λ(: s String). (: (tail(
STRICT/utility.lm:escape-string := λ(: s S). (: (tail(
STRICT/utility.lm:escape-literal := λ(: s String). (: (tail(
The λ☶ source code and documentation are released under the terms of the attached permissive MIT license. This license is intended only to protect the future development of the project while otherwise allowing people to use the code and IP as they would like. Please, just be nice.