From fb46beb8bd784ba92949bf2c535dc13c2f003ef0 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Sat, 25 Jun 2022 20:24:43 -0400 Subject: De-sigil-ification: suffix : [Part 15] --- documentation/bookmark/analysis/static.md | 2 + documentation/bookmark/augmented_reality.md | 5 ++ documentation/bookmark/business/decision_making.md | 2 + documentation/bookmark/business/management.md | 2 + documentation/bookmark/code/mod.md | 9 --- documentation/bookmark/code/query.md | 5 -- documentation/bookmark/compilation/just_in_time.md | 2 + documentation/bookmark/concurrency/reactive.md | 5 ++ documentation/bookmark/control_system.md | 5 ++ documentation/bookmark/css.md | 2 + documentation/bookmark/data/sorting.md | 5 ++ .../bookmark/game/mechanic/problem_solving.md | 5 ++ documentation/bookmark/game/worldbuilding.md | 2 + .../math/probability/information_geometry.md | 6 ++ documentation/bookmark/memory_management/borrow.md | 5 ++ .../memory_management/generational_reference.md | 5 ++ .../memory_management/reference_counting.md | 3 + documentation/bookmark/metaprogramming/code/mod.md | 9 +++ .../bookmark/metaprogramming/code/query.md | 5 ++ .../optimization/compiler/constant_propagation.md | 7 ++ .../optimization/compiler/dead_code_elimination.md | 5 ++ .../bookmark/optimization/compiler/tail_call.md | 5 ++ .../compiler/tail_recursion_modulo_cons.md | 6 ++ .../bookmark/optimization/dead_code_elimination.md | 5 -- documentation/bookmark/optimization/tail_call.md | 5 -- .../optimization/tail_recursion_modulo_cons.md | 6 -- documentation/bookmark/persistence.md | 5 ++ documentation/bookmark/reliability/data.md | 5 ++ documentation/bookmark/to_do.md | 5 ++ .../bookmark/tool/read_eval_print_loop.md | 2 + documentation/bookmark/tool/text_editor.md | 2 + .../bookmark/user_interface/adaptability.md | 5 ++ documentation/bookmark/user_interface/color.md | 2 + .../user_interface/human_computer_interaction.md | 4 +- .../bookmark/user_interface/text/typography.md | 5 ++ licentia/source/program/licentia/document.lux | 2 +- licentia/source/program/licentia/license.lux | 24 +++--- .../source/program/licentia/license/copyright.lux | 2 +- .../source/program/licentia/license/definition.lux | 2 +- licentia/source/program/licentia/license/time.lux | 8 +- licentia/source/test/licentia.lux | 2 +- lux-cl/source/program.lux | 4 +- lux-jvm/source/program.lux | 2 +- lux-lua/source/program.lux | 6 +- lux-mode/lux-mode.el | 5 +- lux-php/source/program.lux | 2 +- lux-python/source/program.lux | 6 +- lux-r/source/program.lux | 2 +- lux-ruby/source/program.lux | 2 +- lux-scheme/source/program.lux | 2 +- stdlib/source/documentation/lux.lux | 24 +++--- .../documentation/lux/control/security/policy.lux | 4 +- .../documentation/lux/data/format/binary.lux | 2 +- .../source/documentation/lux/data/format/json.lux | 2 +- .../source/documentation/lux/data/format/xml.lux | 2 +- stdlib/source/documentation/lux/data/identity.lux | 2 +- .../source/documentation/lux/data/text/format.lux | 2 +- stdlib/source/documentation/lux/ffi.js.lux | 2 +- stdlib/source/documentation/lux/ffi.jvm.lux | 2 +- stdlib/source/documentation/lux/ffi.lua.lux | 2 +- stdlib/source/documentation/lux/ffi.old.lux | 2 +- stdlib/source/documentation/lux/ffi.py.lux | 2 +- stdlib/source/documentation/lux/ffi.rb.lux | 2 +- stdlib/source/documentation/lux/meta.lux | 2 +- stdlib/source/documentation/lux/meta/symbol.lux | 2 +- stdlib/source/documentation/lux/type.lux | 2 +- stdlib/source/documentation/lux/type/quotient.lux | 2 +- .../source/documentation/lux/type/refinement.lux | 2 +- stdlib/source/format/lux/data/binary.lux | 8 +- stdlib/source/format/lux/data/text.lux | 4 +- stdlib/source/library/lux.lux | 94 +++++++++++----------- stdlib/source/library/lux/abstract/algebra.lux | 8 +- stdlib/source/library/lux/abstract/apply.lux | 2 +- stdlib/source/library/lux/abstract/codec.lux | 2 +- stdlib/source/library/lux/abstract/comonad.lux | 2 +- .../source/library/lux/abstract/comonad/free.lux | 2 +- stdlib/source/library/lux/abstract/enum.lux | 2 +- stdlib/source/library/lux/abstract/equivalence.lux | 2 +- stdlib/source/library/lux/abstract/functor.lux | 8 +- .../library/lux/abstract/functor/contravariant.lux | 2 +- stdlib/source/library/lux/abstract/hash.lux | 2 +- stdlib/source/library/lux/abstract/interval.lux | 2 +- stdlib/source/library/lux/abstract/mix.lux | 2 +- stdlib/source/library/lux/abstract/monad.lux | 2 +- stdlib/source/library/lux/abstract/monad/free.lux | 2 +- .../source/library/lux/abstract/monad/indexed.lux | 6 +- stdlib/source/library/lux/abstract/monoid.lux | 2 +- stdlib/source/library/lux/abstract/order.lux | 6 +- stdlib/source/library/lux/abstract/predicate.lux | 2 +- .../source/library/lux/control/concatenative.lux | 2 +- .../library/lux/control/concurrency/actor.lux | 10 +-- .../library/lux/control/concurrency/async.lux | 6 +- .../library/lux/control/concurrency/atom.lux | 4 +- .../source/library/lux/control/concurrency/frp.lux | 10 +-- .../library/lux/control/concurrency/semaphore.lux | 4 +- .../source/library/lux/control/concurrency/stm.lux | 14 ++-- .../library/lux/control/concurrency/thread.lux | 2 +- stdlib/source/library/lux/control/continuation.lux | 2 +- stdlib/source/library/lux/control/exception.lux | 2 +- .../source/library/lux/control/function/memo.lux | 2 +- .../source/library/lux/control/function/mixin.lux | 4 +- .../source/library/lux/control/function/mutual.lux | 4 +- stdlib/source/library/lux/control/maybe.lux | 2 +- stdlib/source/library/lux/control/parser.lux | 2 +- stdlib/source/library/lux/control/parser/cli.lux | 2 +- stdlib/source/library/lux/control/parser/code.lux | 2 +- .../library/lux/control/parser/environment.lux | 6 +- stdlib/source/library/lux/control/parser/tree.lux | 2 +- stdlib/source/library/lux/control/parser/type.lux | 4 +- stdlib/source/library/lux/control/reader.lux | 2 +- stdlib/source/library/lux/control/region.lux | 4 +- .../library/lux/control/security/capability.lux | 2 +- .../source/library/lux/control/security/policy.lux | 20 ++--- stdlib/source/library/lux/control/state.lux | 4 +- stdlib/source/library/lux/control/thread.lux | 6 +- stdlib/source/library/lux/control/try.lux | 2 +- stdlib/source/library/lux/control/writer.lux | 2 +- stdlib/source/library/lux/data/binary.lux | 2 +- .../source/library/lux/data/collection/array.lux | 4 +- stdlib/source/library/lux/data/collection/bits.lux | 4 +- .../library/lux/data/collection/dictionary.lux | 20 ++--- .../lux/data/collection/dictionary/ordered.lux | 6 +- .../lux/data/collection/dictionary/plist.lux | 2 +- stdlib/source/library/lux/data/collection/list.lux | 4 +- .../source/library/lux/data/collection/queue.lux | 2 +- .../library/lux/data/collection/queue/priority.lux | 2 +- .../library/lux/data/collection/sequence.lux | 12 +-- stdlib/source/library/lux/data/collection/set.lux | 2 +- .../source/library/lux/data/collection/stream.lux | 2 +- stdlib/source/library/lux/data/collection/tree.lux | 4 +- .../library/lux/data/collection/tree/finger.lux | 2 +- .../library/lux/data/collection/tree/zipper.lux | 4 +- stdlib/source/library/lux/data/color.lux | 16 ++-- stdlib/source/library/lux/data/format/css.lux | 4 +- stdlib/source/library/lux/data/format/css/font.lux | 4 +- .../library/lux/data/format/css/selector.lux | 14 ++-- .../source/library/lux/data/format/css/value.lux | 6 +- stdlib/source/library/lux/data/format/html.lux | 32 ++++---- stdlib/source/library/lux/data/format/json.lux | 8 +- stdlib/source/library/lux/data/format/markdown.lux | 2 +- stdlib/source/library/lux/data/format/tar.lux | 26 +++--- stdlib/source/library/lux/data/format/xml.lux | 8 +- stdlib/source/library/lux/data/identity.lux | 2 +- stdlib/source/library/lux/data/store.lux | 2 +- stdlib/source/library/lux/data/text.lux | 2 +- stdlib/source/library/lux/data/text/regex.lux | 2 +- stdlib/source/library/lux/data/trace.lux | 2 +- stdlib/source/library/lux/debug.lux | 10 +-- stdlib/source/library/lux/documentation.lux | 10 +-- stdlib/source/library/lux/extension.lux | 2 +- stdlib/source/library/lux/ffi.jvm.lux | 42 +++++----- stdlib/source/library/lux/ffi.lux | 38 ++++----- stdlib/source/library/lux/ffi.old.lux | 58 ++++++------- stdlib/source/library/lux/ffi.php.lux | 24 +++--- stdlib/source/library/lux/ffi.scm.lux | 14 ++-- stdlib/source/library/lux/ffi/export.jvm.lux | 8 +- stdlib/source/library/lux/ffi/export.rb.lux | 2 +- stdlib/source/library/lux/macro/code.lux | 4 +- stdlib/source/library/lux/macro/context.lux | 2 +- stdlib/source/library/lux/macro/syntax/check.lux | 2 +- .../library/lux/macro/syntax/declaration.lux | 2 +- .../source/library/lux/macro/syntax/definition.lux | 2 +- stdlib/source/library/lux/macro/syntax/input.lux | 2 +- .../library/lux/macro/syntax/type/variable.lux | 2 +- stdlib/source/library/lux/macro/template.lux | 4 +- stdlib/source/library/lux/math/infix.lux | 2 +- stdlib/source/library/lux/math/logic/fuzzy.lux | 2 +- stdlib/source/library/lux/math/number/complex.lux | 2 +- stdlib/source/library/lux/math/number/i16.lux | 2 +- stdlib/source/library/lux/math/number/i32.lux | 2 +- stdlib/source/library/lux/math/number/i64.lux | 4 +- stdlib/source/library/lux/math/number/i8.lux | 2 +- stdlib/source/library/lux/math/number/ratio.lux | 2 +- stdlib/source/library/lux/math/number/rev.lux | 2 +- stdlib/source/library/lux/math/random.lux | 4 +- stdlib/source/library/lux/meta.lux | 4 +- stdlib/source/library/lux/meta/configuration.lux | 2 +- stdlib/source/library/lux/meta/symbol.lux | 2 +- stdlib/source/library/lux/program.lux | 2 +- stdlib/source/library/lux/static.lux | 8 +- stdlib/source/library/lux/target.lux | 4 +- stdlib/source/library/lux/target/common_lisp.lux | 8 +- stdlib/source/library/lux/target/js.lux | 4 +- stdlib/source/library/lux/target/jvm.lux | 60 +++++++------- stdlib/source/library/lux/target/jvm/attribute.lux | 6 +- .../library/lux/target/jvm/attribute/code.lux | 2 +- .../lux/target/jvm/attribute/code/exception.lux | 2 +- .../library/lux/target/jvm/attribute/constant.lux | 2 +- stdlib/source/library/lux/target/jvm/bytecode.lux | 12 +-- .../lux/target/jvm/bytecode/environment.lux | 4 +- .../lux/target/jvm/bytecode/environment/limit.lux | 2 +- .../jvm/bytecode/environment/limit/registry.lux | 2 +- .../lux/target/jvm/bytecode/instruction.lux | 8 +- .../library/lux/target/jvm/bytecode/jump.lux | 4 +- stdlib/source/library/lux/target/jvm/class.lux | 2 +- stdlib/source/library/lux/target/jvm/constant.lux | 10 +-- .../library/lux/target/jvm/constant/pool.lux | 8 +- .../library/lux/target/jvm/encoding/name.lux | 2 +- .../library/lux/target/jvm/encoding/signed.lux | 2 +- .../library/lux/target/jvm/encoding/unsigned.lux | 2 +- stdlib/source/library/lux/target/jvm/field.lux | 2 +- stdlib/source/library/lux/target/jvm/loader.lux | 2 +- stdlib/source/library/lux/target/jvm/magic.lux | 2 +- stdlib/source/library/lux/target/jvm/method.lux | 2 +- .../source/library/lux/target/jvm/reflection.lux | 2 +- stdlib/source/library/lux/target/jvm/type.lux | 6 +- .../source/library/lux/target/jvm/type/alias.lux | 4 +- .../library/lux/target/jvm/type/category.lux | 12 +-- stdlib/source/library/lux/target/jvm/type/lux.lux | 4 +- stdlib/source/library/lux/target/jvm/version.lux | 6 +- stdlib/source/library/lux/target/lua.lux | 4 +- stdlib/source/library/lux/target/php.lux | 8 +- stdlib/source/library/lux/target/python.lux | 8 +- stdlib/source/library/lux/target/r.lux | 6 +- stdlib/source/library/lux/target/ruby.lux | 8 +- stdlib/source/library/lux/target/scheme.lux | 6 +- stdlib/source/library/lux/test.lux | 8 +- stdlib/source/library/lux/time.lux | 2 +- stdlib/source/library/lux/time/day.lux | 2 +- stdlib/source/library/lux/time/month.lux | 2 +- stdlib/source/library/lux/time/year.lux | 2 +- stdlib/source/library/lux/tool/compiler.lux | 14 ++-- stdlib/source/library/lux/tool/compiler/arity.lux | 2 +- .../library/lux/tool/compiler/default/init.lux | 6 +- .../library/lux/tool/compiler/default/platform.lux | 24 +++--- .../lux/tool/compiler/language/lux/analysis.lux | 18 ++--- .../compiler/language/lux/analysis/complex.lux | 8 +- .../compiler/language/lux/analysis/coverage.lux | 4 +- .../compiler/language/lux/analysis/evaluation.lux | 2 +- .../tool/compiler/language/lux/analysis/macro.lux | 2 +- .../tool/compiler/language/lux/analysis/module.lux | 2 +- .../compiler/language/lux/analysis/pattern.lux | 2 +- .../tool/compiler/language/lux/analysis/scope.lux | 4 +- .../tool/compiler/language/lux/analysis/simple.lux | 2 +- .../lux/tool/compiler/language/lux/directive.lux | 10 +-- .../lux/tool/compiler/language/lux/generation.lux | 8 +- .../tool/compiler/language/lux/phase/directive.lux | 2 +- .../tool/compiler/language/lux/phase/extension.lux | 16 ++-- .../language/lux/phase/extension/analysis/js.lux | 14 ++-- .../language/lux/phase/extension/analysis/jvm.lux | 78 +++++++++--------- .../language/lux/phase/extension/analysis/lua.lux | 20 ++--- .../language/lux/phase/extension/analysis/lux.lux | 10 +-- .../language/lux/phase/extension/analysis/php.lux | 18 ++--- .../lux/phase/extension/analysis/python.lux | 16 ++-- .../language/lux/phase/extension/analysis/ruby.lux | 16 ++-- .../lux/phase/extension/analysis/scheme.lux | 14 ++-- .../language/lux/phase/extension/directive/jvm.lux | 14 ++-- .../language/lux/phase/extension/directive/lux.lux | 6 +- .../lux/phase/extension/generation/jvm/host.lux | 4 +- .../lux/phase/generation/common_lisp/runtime.lux | 4 +- .../language/lux/phase/generation/extension.lux | 4 +- .../language/lux/phase/generation/js/runtime.lux | 8 +- .../generation/jvm/function/field/constant.lux | 2 +- .../phase/generation/jvm/function/method/apply.lux | 2 +- .../jvm/function/method/implementation.lux | 2 +- .../phase/generation/jvm/function/method/init.lux | 2 +- .../phase/generation/jvm/function/method/new.lux | 2 +- .../phase/generation/jvm/function/method/reset.lux | 2 +- .../language/lux/phase/generation/jvm/runtime.lux | 12 +-- .../language/lux/phase/generation/jvm/value.lux | 2 +- .../language/lux/phase/generation/lua/runtime.lux | 8 +- .../language/lux/phase/generation/php/runtime.lux | 8 +- .../lux/phase/generation/python/runtime.lux | 8 +- .../lux/phase/generation/r/procedure/common.lux | 6 +- .../language/lux/phase/generation/r/runtime.lux | 4 +- .../language/lux/phase/generation/reference.lux | 2 +- .../language/lux/phase/generation/ruby/runtime.lux | 8 +- .../lux/phase/generation/scheme/runtime.lux | 4 +- .../compiler/language/lux/phase/synthesis/case.lux | 2 +- .../compiler/language/lux/phase/synthesis/loop.lux | 2 +- .../language/lux/phase/synthesis/variable.lux | 6 +- .../lux/tool/compiler/language/lux/program.lux | 2 +- .../lux/tool/compiler/language/lux/syntax.lux | 6 +- .../lux/tool/compiler/language/lux/synthesis.lux | 34 ++++---- .../compiler/language/lux/synthesis/access.lux | 2 +- .../language/lux/synthesis/access/member.lux | 2 +- .../language/lux/synthesis/access/side.lux | 2 +- .../compiler/language/lux/synthesis/simple.lux | 2 +- .../library/lux/tool/compiler/meta/archive.lux | 8 +- .../lux/tool/compiler/meta/archive/artifact.lux | 4 +- .../compiler/meta/archive/artifact/category.lux | 4 +- .../lux/tool/compiler/meta/archive/module.lux | 4 +- .../compiler/meta/archive/module/descriptor.lux | 4 +- .../lux/tool/compiler/meta/archive/signature.lux | 2 +- .../lux/tool/compiler/meta/archive/unit.lux | 2 +- .../tool/compiler/meta/cache/dependency/module.lux | 8 +- .../library/lux/tool/compiler/meta/cache/purge.lux | 4 +- .../source/library/lux/tool/compiler/meta/cli.lux | 18 ++--- .../lux/tool/compiler/meta/cli/compiler.lux | 2 +- .../library/lux/tool/compiler/meta/context.lux | 4 +- .../library/lux/tool/compiler/meta/import.lux | 4 +- .../source/library/lux/tool/compiler/meta/io.lux | 4 +- .../library/lux/tool/compiler/meta/io/archive.lux | 12 +-- .../library/lux/tool/compiler/meta/io/context.lux | 6 +- .../library/lux/tool/compiler/meta/packager.lux | 4 +- .../lux/tool/compiler/meta/packager/scheme.lux | 2 +- stdlib/source/library/lux/tool/compiler/phase.lux | 6 +- .../source/library/lux/tool/compiler/reference.lux | 4 +- .../lux/tool/compiler/reference/variable.lux | 4 +- .../source/library/lux/tool/compiler/version.lux | 2 +- stdlib/source/library/lux/tool/interpreter.lux | 2 +- stdlib/source/library/lux/tool/mediator.lux | 6 +- stdlib/source/library/lux/type.lux | 2 +- stdlib/source/library/lux/type/check.lux | 10 +-- stdlib/source/library/lux/type/dynamic.lux | 4 +- stdlib/source/library/lux/type/implicit.lux | 2 +- stdlib/source/library/lux/type/primitive.lux | 6 +- stdlib/source/library/lux/type/quotient.lux | 2 +- stdlib/source/library/lux/type/refinement.lux | 6 +- stdlib/source/library/lux/type/resource.lux | 8 +- stdlib/source/library/lux/type/unit.lux | 4 +- stdlib/source/library/lux/type/unit/scale.lux | 6 +- stdlib/source/library/lux/type/variance.lux | 12 +-- stdlib/source/library/lux/world/console.lux | 4 +- stdlib/source/library/lux/world/db/jdbc.lux | 8 +- stdlib/source/library/lux/world/db/jdbc/input.lux | 2 +- stdlib/source/library/lux/world/db/jdbc/output.lux | 2 +- stdlib/source/library/lux/world/db/sql.lux | 10 +-- stdlib/source/library/lux/world/file.lux | 10 +-- stdlib/source/library/lux/world/file/watch.lux | 8 +- stdlib/source/library/lux/world/input/keyboard.lux | 4 +- stdlib/source/library/lux/world/net.lux | 8 +- stdlib/source/library/lux/world/net/http.lux | 32 ++++---- .../source/library/lux/world/net/http/client.lux | 2 +- .../source/library/lux/world/net/http/cookie.lux | 4 +- stdlib/source/library/lux/world/net/uri.lux | 2 +- .../library/lux/world/output/video/resolution.lux | 2 +- stdlib/source/library/lux/world/program.lux | 2 +- stdlib/source/library/lux/world/shell.lux | 18 ++--- stdlib/source/parser/lux/data/binary.lux | 8 +- stdlib/source/parser/lux/data/format/json.lux | 2 +- stdlib/source/parser/lux/data/format/xml.lux | 2 +- stdlib/source/parser/lux/data/text.lux | 6 +- .../lux/tool/compiler/language/lux/analysis.lux | 2 +- .../lux/tool/compiler/language/lux/synthesis.lux | 2 +- stdlib/source/program/aedifex/action.lux | 2 +- stdlib/source/program/aedifex/artifact.lux | 8 +- .../source/program/aedifex/artifact/extension.lux | 2 +- .../source/program/aedifex/artifact/snapshot.lux | 2 +- .../program/aedifex/artifact/snapshot/build.lux | 2 +- .../program/aedifex/artifact/snapshot/stamp.lux | 2 +- .../program/aedifex/artifact/snapshot/time.lux | 2 +- .../program/aedifex/artifact/snapshot/version.lux | 2 +- .../aedifex/artifact/snapshot/version/value.lux | 2 +- stdlib/source/program/aedifex/artifact/time.lux | 2 +- .../source/program/aedifex/artifact/time/time.lux | 2 +- stdlib/source/program/aedifex/artifact/type.lux | 2 +- .../source/program/aedifex/artifact/versioning.lux | 2 +- stdlib/source/program/aedifex/cli.lux | 4 +- stdlib/source/program/aedifex/command.lux | 2 +- stdlib/source/program/aedifex/command/build.lux | 4 +- stdlib/source/program/aedifex/dependency.lux | 2 +- .../program/aedifex/dependency/resolution.lux | 2 +- .../source/program/aedifex/dependency/status.lux | 2 +- stdlib/source/program/aedifex/format.lux | 4 +- .../source/program/aedifex/metadata/artifact.lux | 2 +- .../source/program/aedifex/metadata/snapshot.lux | 2 +- stdlib/source/program/aedifex/package.lux | 2 +- stdlib/source/program/aedifex/parser.lux | 2 +- stdlib/source/program/aedifex/profile.lux | 24 +++--- stdlib/source/program/aedifex/project.lux | 2 +- stdlib/source/program/aedifex/repository.lux | 4 +- .../source/program/aedifex/repository/identity.lux | 6 +- .../source/program/aedifex/repository/origin.lux | 2 +- .../source/program/aedifex/repository/remote.lux | 2 +- stdlib/source/program/aedifex/runtime.lux | 2 +- stdlib/source/specification/compositor/common.lux | 6 +- .../source/specification/lux/abstract/functor.lux | 4 +- stdlib/source/test/aedifex/cache.lux | 2 +- .../source/test/aedifex/dependency/deployment.lux | 2 +- stdlib/source/test/aedifex/repository.lux | 2 +- stdlib/source/test/lux.lux | 26 +++--- stdlib/source/test/lux/abstract/equivalence.lux | 6 +- stdlib/source/test/lux/control/parser/type.lux | 6 +- stdlib/source/test/lux/control/security/policy.lux | 4 +- stdlib/source/test/lux/data/format/json.lux | 6 +- stdlib/source/test/lux/debug.lux | 10 +-- stdlib/source/test/lux/locale/language.lux | 2 +- stdlib/source/test/lux/locale/territory.lux | 2 +- stdlib/source/test/lux/macro/pattern.lux | 2 +- stdlib/source/test/lux/target/jvm.lux | 4 +- .../compiler/language/lux/analysis/inference.lux | 38 ++++----- .../tool/compiler/language/lux/phase/analysis.lux | 16 ++-- .../compiler/language/lux/phase/analysis/case.lux | 10 +-- .../language/lux/phase/analysis/complex.lux | 28 +++---- .../language/lux/phase/analysis/function.lux | 8 +- .../language/lux/phase/extension/analysis/lux.lux | 6 +- .../language/lux/phase/synthesis/function.lux | 4 +- .../compiler/language/lux/phase/synthesis/loop.lux | 2 +- .../language/lux/phase/synthesis/variable.lux | 4 +- stdlib/source/test/lux/type.lux | 2 +- stdlib/source/test/lux/type/check.lux | 62 +++++++------- stdlib/source/test/lux/type/variance.lux | 20 ++--- stdlib/source/test/lux/world/file.lux | 2 +- stdlib/source/unsafe/lux/data/binary.lux | 10 +-- stdlib/source/unsafe/lux/data/collection/array.lux | 4 +- 396 files changed, 1301 insertions(+), 1204 deletions(-) create mode 100644 documentation/bookmark/augmented_reality.md delete mode 100644 documentation/bookmark/code/mod.md delete mode 100644 documentation/bookmark/code/query.md create mode 100644 documentation/bookmark/concurrency/reactive.md create mode 100644 documentation/bookmark/control_system.md create mode 100644 documentation/bookmark/data/sorting.md create mode 100644 documentation/bookmark/game/mechanic/problem_solving.md create mode 100644 documentation/bookmark/math/probability/information_geometry.md create mode 100644 documentation/bookmark/memory_management/borrow.md create mode 100644 documentation/bookmark/memory_management/generational_reference.md create mode 100644 documentation/bookmark/metaprogramming/code/mod.md create mode 100644 documentation/bookmark/metaprogramming/code/query.md create mode 100644 documentation/bookmark/optimization/compiler/constant_propagation.md create mode 100644 documentation/bookmark/optimization/compiler/dead_code_elimination.md create mode 100644 documentation/bookmark/optimization/compiler/tail_call.md create mode 100644 documentation/bookmark/optimization/compiler/tail_recursion_modulo_cons.md delete mode 100644 documentation/bookmark/optimization/dead_code_elimination.md delete mode 100644 documentation/bookmark/optimization/tail_call.md delete mode 100644 documentation/bookmark/optimization/tail_recursion_modulo_cons.md create mode 100644 documentation/bookmark/persistence.md create mode 100644 documentation/bookmark/reliability/data.md create mode 100644 documentation/bookmark/to_do.md create mode 100644 documentation/bookmark/user_interface/adaptability.md create mode 100644 documentation/bookmark/user_interface/text/typography.md diff --git a/documentation/bookmark/analysis/static.md b/documentation/bookmark/analysis/static.md index b70b9f50d..0300a44d1 100644 --- a/documentation/bookmark/analysis/static.md +++ b/documentation/bookmark/analysis/static.md @@ -1,5 +1,7 @@ # Reference +0. []() +0. [Fusing Industry and Academia at GitHub (Experience Report)](https://arxiv.org/abs/2206.09206) 0. [Software can literally be perfect](https://www.youtube.com/watch?v=Lf7ML_ErWvQ) 0. [Magmide](https://github.com/magmide/magmide) diff --git a/documentation/bookmark/augmented_reality.md b/documentation/bookmark/augmented_reality.md new file mode 100644 index 000000000..95e0a99a8 --- /dev/null +++ b/documentation/bookmark/augmented_reality.md @@ -0,0 +1,5 @@ +# Reference + +0. []() +0. [Join innovative technologist Iddris Sandu as he shares his vision for building commerce solutions in augmented reality with Shannon Skipper, Head of Developer Relations at Square.](https://www.youtube.com/watch?v=LvJes9shwJk) + diff --git a/documentation/bookmark/business/decision_making.md b/documentation/bookmark/business/decision_making.md index 9fcd96aec..0522af05c 100644 --- a/documentation/bookmark/business/decision_making.md +++ b/documentation/bookmark/business/decision_making.md @@ -1,4 +1,6 @@ # Reference +0. []() +0. [Tools for better thinking](https://untools.co/) 0. [Multi-Factor Decision Making Math](https://criticalfallibilism.com/multi-factor-decision-making-math/) diff --git a/documentation/bookmark/business/management.md b/documentation/bookmark/business/management.md index 2d17f7e31..db406def7 100644 --- a/documentation/bookmark/business/management.md +++ b/documentation/bookmark/business/management.md @@ -1,5 +1,7 @@ # Reference +0. []() +0. [The Power of Introspection: The Fuel That Keeps Teams Resilient](https://www.youtube.com/watch?v=gl1AKeEHTG8) 0. [Preventing burnout: A manager's toolkit](https://about.gitlab.com/blog/2022/05/03/preventing-burnout-a-managers-toolkit/) 0. [The Curse of Systems Thinkers (Part 1)](https://blog.relyabilit.ie/the-curse-of-systems-thinkers/) 0. [Democracy Without Elections](https://democracywithoutelections.org/) diff --git a/documentation/bookmark/code/mod.md b/documentation/bookmark/code/mod.md deleted file mode 100644 index 88da7aae5..000000000 --- a/documentation/bookmark/code/mod.md +++ /dev/null @@ -1,9 +0,0 @@ -# Reference - -1. https://comby.dev/ -1. ["Parser Parser Combinators for Program Transformation" by Rijnard van Tonder](https://www.youtube.com/watch?v=JMZLBB_BFNg) -1. [Codemod](https://github.com/facebook/codemod) -1. [jscodeshift](https://github.com/facebook/jscodeshift) -1. [Writing codemods to transform your codebase](https://augustinlf.com/writing-codemods-to-transform-your-codebase/) -1. []() - diff --git a/documentation/bookmark/code/query.md b/documentation/bookmark/code/query.md deleted file mode 100644 index 4db580b7b..000000000 --- a/documentation/bookmark/code/query.md +++ /dev/null @@ -1,5 +0,0 @@ -# Reference - -0. [Find bugs in your code with CodeQL](https://www.youtube.com/watch?v=y_-pIbsr7jc) -0. [CodeQL](https://codeql.github.com/) - diff --git a/documentation/bookmark/compilation/just_in_time.md b/documentation/bookmark/compilation/just_in_time.md index dea94f107..1570030bc 100644 --- a/documentation/bookmark/compilation/just_in_time.md +++ b/documentation/bookmark/compilation/just_in_time.md @@ -1,4 +1,6 @@ # Reference +0. []() +0. [Just in Time: Assumptions and Speculations](https://thesis.r-vm.net/main.html) 0. [Trace-based compilation in execution environments without interpreters](https://dl.acm.org/doi/10.1145/1852761.1852771) diff --git a/documentation/bookmark/concurrency/reactive.md b/documentation/bookmark/concurrency/reactive.md new file mode 100644 index 000000000..8ff73c0c6 --- /dev/null +++ b/documentation/bookmark/concurrency/reactive.md @@ -0,0 +1,5 @@ +# Reference + +0. []() +0. [Survey of Built-in Concurrency in Programming Languages](https://codemachete.com/2022/06/23/survey-of-built-in-concurrency-in-programming-languages/) + diff --git a/documentation/bookmark/control_system.md b/documentation/bookmark/control_system.md new file mode 100644 index 000000000..a81a7ee41 --- /dev/null +++ b/documentation/bookmark/control_system.md @@ -0,0 +1,5 @@ +# Reference + +0. []() +0. [Intro to Incremental Non-Linear Dynamic Inversion (INDI)](https://fusion.engineering/intro-to-incremental-non-linear-dynamic-inversion-indi/) + diff --git a/documentation/bookmark/css.md b/documentation/bookmark/css.md index 7492be4ab..99f446bbc 100644 --- a/documentation/bookmark/css.md +++ b/documentation/bookmark/css.md @@ -4,6 +4,8 @@ # Reference +0. []() +0. [Style scoping versus shadow DOM: which is fastest?](https://nolanlawson.com/2022/06/22/style-scoping-versus-shadow-dom-which-is-fastest/) 0. [Got Spaghetti Stylesheets? 4 Techniques for Managing CSS Complexity](https://blog.shimin.io/4-techniques-for-managing-css-complexity/) 0. [Why is :hover:after valid but not :after:hover? CSS Pseudo-Class and Pseudo-Element Selectors](https://blog.shimin.io/pseudo-class-and-pseudo-element-selectors/) 0. [Increasing the performance of elm-css](https://blogg.bekk.no/increasing-the-performance-of-elm-css-34075512d6a6) diff --git a/documentation/bookmark/data/sorting.md b/documentation/bookmark/data/sorting.md new file mode 100644 index 000000000..4a73483c6 --- /dev/null +++ b/documentation/bookmark/data/sorting.md @@ -0,0 +1,5 @@ +# Reference + +0. []() +0. [Clojure: sort by multiple keys with different orderings](https://www.youtube.com/watch?v=bihh8nPGixo) + diff --git a/documentation/bookmark/game/mechanic/problem_solving.md b/documentation/bookmark/game/mechanic/problem_solving.md new file mode 100644 index 000000000..2d416b056 --- /dev/null +++ b/documentation/bookmark/game/mechanic/problem_solving.md @@ -0,0 +1,5 @@ +# Reference + +0. []() +0. [How To Design An Unsolvable Problem](https://www.youtube.com/watch?v=toD5D6PDofU) + diff --git a/documentation/bookmark/game/worldbuilding.md b/documentation/bookmark/game/worldbuilding.md index 31d76b746..633011f5e 100644 --- a/documentation/bookmark/game/worldbuilding.md +++ b/documentation/bookmark/game/worldbuilding.md @@ -1,4 +1,6 @@ # Reference +0. []() +0. [What's The Point of Elements in Games?](https://www.youtube.com/watch?v=QS9CYuUOmU4) 0. [The Best Way to Creating the Illusion of a Living World - Top GM Tips](https://www.youtube.com/watch?v=6JP-nkeCwYg) diff --git a/documentation/bookmark/math/probability/information_geometry.md b/documentation/bookmark/math/probability/information_geometry.md new file mode 100644 index 000000000..babd544d6 --- /dev/null +++ b/documentation/bookmark/math/probability/information_geometry.md @@ -0,0 +1,6 @@ +# Reference + +0. []() +0. [The Many Faces of Information Geometry](https://www.ams.org//journals/notices/202201/rnoti-p36.pdf) +0. [Information geometry](https://en.wikipedia.org/wiki/Information_geometry) + diff --git a/documentation/bookmark/memory_management/borrow.md b/documentation/bookmark/memory_management/borrow.md new file mode 100644 index 000000000..cf9f4bb6c --- /dev/null +++ b/documentation/bookmark/memory_management/borrow.md @@ -0,0 +1,5 @@ +# Reference + +0. []() +0. [Aeneas: Rust Verification by Functional Translation](https://arxiv.org/abs/2206.07185) + diff --git a/documentation/bookmark/memory_management/generational_reference.md b/documentation/bookmark/memory_management/generational_reference.md new file mode 100644 index 000000000..9f29d0417 --- /dev/null +++ b/documentation/bookmark/memory_management/generational_reference.md @@ -0,0 +1,5 @@ +# Reference + +0. []() +0. [Generational References: 2.3x faster than reference counting, unoptimized!](https://verdagon.dev/blog/generational-references) + diff --git a/documentation/bookmark/memory_management/reference_counting.md b/documentation/bookmark/memory_management/reference_counting.md index 7a09fdcf0..024713c2f 100644 --- a/documentation/bookmark/memory_management/reference_counting.md +++ b/documentation/bookmark/memory_management/reference_counting.md @@ -1,4 +1,7 @@ # Reference +0. []() +0. [Implementing the Perceus reference counting GC](https://dev.to/raviqqe/implementing-the-perceus-reference-counting-gc-5662) +0. [Perceus: Garbage Free Reference Counting with Reuse (Extended version)](https://www.microsoft.com/en-us/research/publication/perceus-garbage-free-reference-counting-with-reuse/) 0. [StaticRc](https://github.com/matthieu-m/static-rc) diff --git a/documentation/bookmark/metaprogramming/code/mod.md b/documentation/bookmark/metaprogramming/code/mod.md new file mode 100644 index 000000000..9e5158ce6 --- /dev/null +++ b/documentation/bookmark/metaprogramming/code/mod.md @@ -0,0 +1,9 @@ +# Reference + +0. []() +0. [Comby is a tool for searching and changing code structure](https://comby.dev/) + 0. ["Parser Parser Combinators for Program Transformation" by Rijnard van Tonder](https://www.youtube.com/watch?v=JMZLBB_BFNg) +0. [Codemod](https://github.com/facebook/codemod) +0. [jscodeshift](https://github.com/facebook/jscodeshift) +0. [Writing codemods to transform your codebase](https://augustinlf.com/writing-codemods-to-transform-your-codebase/) + diff --git a/documentation/bookmark/metaprogramming/code/query.md b/documentation/bookmark/metaprogramming/code/query.md new file mode 100644 index 000000000..4db580b7b --- /dev/null +++ b/documentation/bookmark/metaprogramming/code/query.md @@ -0,0 +1,5 @@ +# Reference + +0. [Find bugs in your code with CodeQL](https://www.youtube.com/watch?v=y_-pIbsr7jc) +0. [CodeQL](https://codeql.github.com/) + diff --git a/documentation/bookmark/optimization/compiler/constant_propagation.md b/documentation/bookmark/optimization/compiler/constant_propagation.md new file mode 100644 index 000000000..00e88f36e --- /dev/null +++ b/documentation/bookmark/optimization/compiler/constant_propagation.md @@ -0,0 +1,7 @@ +# Reference + +0. []() +0. [Compiler Adventures, part 1: No-op Instructions](https://medium.com/@predrag.gruevski/compiler-adventures-part-1-no-op-instructions-c084358c7864) +0. [Compiler Adventures, part 2: Constant Propagation](https://medium.com/@predrag.gruevski/compiler-adventures-part-2-constant-propagation-c6f2e67d9881) +0. [Compiler Adventures, part 3: Value Numbering](https://medium.com/@predrag.gruevski/compiler-adventures-part-3-value-numbering-12d087b891bd) + diff --git a/documentation/bookmark/optimization/compiler/dead_code_elimination.md b/documentation/bookmark/optimization/compiler/dead_code_elimination.md new file mode 100644 index 000000000..03a4bd9ca --- /dev/null +++ b/documentation/bookmark/optimization/compiler/dead_code_elimination.md @@ -0,0 +1,5 @@ +# Reference + +0. [PartialExecuter: Reducing WebAssembly size by exploring all executions in LLVM](https://leaningtech.com/reducing-webassembly-size-by-exploring-all-executions-in-llvm/) +0. [Dead code elimination](https://en.wikipedia.org/wiki/Dead_code_elimination) + diff --git a/documentation/bookmark/optimization/compiler/tail_call.md b/documentation/bookmark/optimization/compiler/tail_call.md new file mode 100644 index 000000000..6bfccef62 --- /dev/null +++ b/documentation/bookmark/optimization/compiler/tail_call.md @@ -0,0 +1,5 @@ +# Reference + +0. [Parsing Protobuf at 2+GB/s: How I Learned To Love Tail Calls in C](https://blog.reverberate.org/2021/04/21/musttail-efficient-interpreters.html) +0. [musttail](https://clang.llvm.org/docs/AttributeReference.html#musttail) + diff --git a/documentation/bookmark/optimization/compiler/tail_recursion_modulo_cons.md b/documentation/bookmark/optimization/compiler/tail_recursion_modulo_cons.md new file mode 100644 index 000000000..e82648af6 --- /dev/null +++ b/documentation/bookmark/optimization/compiler/tail_recursion_modulo_cons.md @@ -0,0 +1,6 @@ +# Reference + +0. [Tail recursion modulo cons](https://en.wikipedia.org/wiki/Tail_call#Tail_recursion_modulo_cons) +0. [Tail recursion, but modulo cons](https://jfmengels.net/modulo-cons/) +0. [A faster `List.map` for Elm](https://discourse.elm-lang.org/t/a-faster-list-map-for-elm/6721) + diff --git a/documentation/bookmark/optimization/dead_code_elimination.md b/documentation/bookmark/optimization/dead_code_elimination.md deleted file mode 100644 index 03a4bd9ca..000000000 --- a/documentation/bookmark/optimization/dead_code_elimination.md +++ /dev/null @@ -1,5 +0,0 @@ -# Reference - -0. [PartialExecuter: Reducing WebAssembly size by exploring all executions in LLVM](https://leaningtech.com/reducing-webassembly-size-by-exploring-all-executions-in-llvm/) -0. [Dead code elimination](https://en.wikipedia.org/wiki/Dead_code_elimination) - diff --git a/documentation/bookmark/optimization/tail_call.md b/documentation/bookmark/optimization/tail_call.md deleted file mode 100644 index 6bfccef62..000000000 --- a/documentation/bookmark/optimization/tail_call.md +++ /dev/null @@ -1,5 +0,0 @@ -# Reference - -0. [Parsing Protobuf at 2+GB/s: How I Learned To Love Tail Calls in C](https://blog.reverberate.org/2021/04/21/musttail-efficient-interpreters.html) -0. [musttail](https://clang.llvm.org/docs/AttributeReference.html#musttail) - diff --git a/documentation/bookmark/optimization/tail_recursion_modulo_cons.md b/documentation/bookmark/optimization/tail_recursion_modulo_cons.md deleted file mode 100644 index e82648af6..000000000 --- a/documentation/bookmark/optimization/tail_recursion_modulo_cons.md +++ /dev/null @@ -1,6 +0,0 @@ -# Reference - -0. [Tail recursion modulo cons](https://en.wikipedia.org/wiki/Tail_call#Tail_recursion_modulo_cons) -0. [Tail recursion, but modulo cons](https://jfmengels.net/modulo-cons/) -0. [A faster `List.map` for Elm](https://discourse.elm-lang.org/t/a-faster-list-map-for-elm/6721) - diff --git a/documentation/bookmark/persistence.md b/documentation/bookmark/persistence.md new file mode 100644 index 000000000..a3c543ea3 --- /dev/null +++ b/documentation/bookmark/persistence.md @@ -0,0 +1,5 @@ +# Reference + +0. []() +0. [Persistence Programming: Are we doing this right?](https://queue.acm.org/detail.cfm?id=3526210&doi=10.1145/3526210) + diff --git a/documentation/bookmark/reliability/data.md b/documentation/bookmark/reliability/data.md new file mode 100644 index 000000000..0a3963acf --- /dev/null +++ b/documentation/bookmark/reliability/data.md @@ -0,0 +1,5 @@ +# Reference + +0. []() +0. [Soda OSS: Data Reliability Engineering as Code](https://www.soda.io/oss) + diff --git a/documentation/bookmark/to_do.md b/documentation/bookmark/to_do.md new file mode 100644 index 000000000..d3604e437 --- /dev/null +++ b/documentation/bookmark/to_do.md @@ -0,0 +1,5 @@ +# Reference + +0. []() +0. [The Code Is the To-Do List](https://www.executeprogram.com/blog/the-code-is-the-to-do-list) + diff --git a/documentation/bookmark/tool/read_eval_print_loop.md b/documentation/bookmark/tool/read_eval_print_loop.md index 6d71c3e53..711758436 100644 --- a/documentation/bookmark/tool/read_eval_print_loop.md +++ b/documentation/bookmark/tool/read_eval_print_loop.md @@ -1,4 +1,6 @@ # Reference +0. []() +0. [Ideas for Clojure Network Eval API](https://tonsky.me/blog/network-eval/) 0. [reple: "Replay-based" REPLs for compiled languages.](https://github.com/BenBrock/reple) diff --git a/documentation/bookmark/tool/text_editor.md b/documentation/bookmark/tool/text_editor.md index b2b0c7d54..623e0f0cd 100644 --- a/documentation/bookmark/tool/text_editor.md +++ b/documentation/bookmark/tool/text_editor.md @@ -65,6 +65,8 @@ # Reference +0. []() +0. [keenwrite: Java-based desktop text editor with live preview, string interpolation, and formulas](https://github.com/DaveJarvis/keenwrite) 0. [Deft for Emacs](https://jblevins.org/projects/deft/) 0. [Text Editing Hates You Too](https://lord.io/text-editing-hates-you-too/) 0. [On the design of text editors](https://arxiv.org/abs/2008.06030) diff --git a/documentation/bookmark/user_interface/adaptability.md b/documentation/bookmark/user_interface/adaptability.md new file mode 100644 index 000000000..e33bad405 --- /dev/null +++ b/documentation/bookmark/user_interface/adaptability.md @@ -0,0 +1,5 @@ +# Reference + +0. []() +0. [Adaptive Cards: A whole new way to deliver UI](https://adaptivecards.io/) + diff --git a/documentation/bookmark/user_interface/color.md b/documentation/bookmark/user_interface/color.md index 2a81c4260..289fa18a9 100644 --- a/documentation/bookmark/user_interface/color.md +++ b/documentation/bookmark/user_interface/color.md @@ -1,5 +1,7 @@ # Reference +0. []() +0. [Color difference](https://en.wikipedia.org/wiki/Color_difference) 0. [How to Choose Colours Procedurally (Algorithms)](http://devmag.org.za/2012/07/29/how-to-choose-colours-procedurally-algorithms/) 0. [CSS System Colors](https://blog.jim-nielsen.com/2021/css-system-colors/) 0. [LUTious Color: Grading for Games](https://www.youtube.com/watch?v=-fb3QXR5spE) diff --git a/documentation/bookmark/user_interface/human_computer_interaction.md b/documentation/bookmark/user_interface/human_computer_interaction.md index 1eb2ce86d..23cedd37b 100644 --- a/documentation/bookmark/user_interface/human_computer_interaction.md +++ b/documentation/bookmark/user_interface/human_computer_interaction.md @@ -1,4 +1,6 @@ # Reference -1. [Formality Considered Harmful: Experiences, Emerging Themes, and Directions on the Use of Formal Representations in Interactive Systems](https://andymatuschak.org/files/papers/Shipman%20and%20Marshall%20-%201999%20-%20Formality%20Considered%20Harmful%20Experiences,%20Emergin.pdf) +0. []() +0. [Smarter Defaults by Paying Attention](https://textslashplain.com/2022/02/15/smarter-defaults-by-paying-attention/) +0. [Formality Considered Harmful: Experiences, Emerging Themes, and Directions on the Use of Formal Representations in Interactive Systems](https://andymatuschak.org/files/papers/Shipman%20and%20Marshall%20-%201999%20-%20Formality%20Considered%20Harmful%20Experiences,%20Emergin.pdf) diff --git a/documentation/bookmark/user_interface/text/typography.md b/documentation/bookmark/user_interface/text/typography.md new file mode 100644 index 000000000..6e9f8d99c --- /dev/null +++ b/documentation/bookmark/user_interface/text/typography.md @@ -0,0 +1,5 @@ +# Reference + +0. []() +0. [Typography for Lawyers](https://typographyforlawyers.com/) + diff --git a/licentia/source/program/licentia/document.lux b/licentia/source/program/licentia/document.lux index 9272cbf6a..12cb89ac5 100644 --- a/licentia/source/program/licentia/document.lux +++ b/licentia/source/program/licentia/document.lux @@ -39,7 +39,7 @@ [and/or "and/or"] ) -(type: .public Section +(type .public Section (Record [#title Text #content Text])) diff --git a/licentia/source/program/licentia/license.lux b/licentia/source/program/licentia/license.lux index b9280bd5f..6541bf103 100644 --- a/licentia/source/program/licentia/license.lux +++ b/licentia/source/program/licentia/license.lux @@ -5,63 +5,63 @@ [time (.only Days Months Period)] ["[1][0]" copyright]]) -(type: .public Identification +(type .public Identification (Record [#name Text #version Text])) -(type: .public Termination +(type .public Termination (Record [#patent_retaliation? Bit #termination_period Days #grace_period Days])) -(type: .public Liability +(type .public Liability (Record [#can_accept? Bit #disclaim_high_risk? Bit])) -(type: .public Distribution +(type .public Distribution (Record [#can_re_license? Bit #can_multi_license? Bit])) -(type: .public Commercial +(type .public Commercial (Record [#can_sell? Bit #require_contributor_credit? Bit #allow_contributor_endorsement? Bit])) -(type: .public Extension +(type .public Extension (Record [#same_license? Bit #must_be_distinguishable? Bit #notification_period (Maybe (Period Months)) #must_describe_modifications? Bit])) -(type: .public Entity +(type .public Entity Text) -(type: .public Black_List +(type .public Black_List (Record [#justification (Maybe Text) #entities (List Entity)])) -(type: .public URL +(type .public URL Text) -(type: .public Attribution +(type .public Attribution (Record [#copyright_notice Text #phrase (Maybe Text) #url URL #image (Maybe URL)])) -(type: .public Addendum +(type .public Addendum (Record [#commons_clause? Bit])) -(type: .public License +(type .public License (Record [#copyright_holders (List /copyright.Holder) #identification (Maybe Identification) diff --git a/licentia/source/program/licentia/license/copyright.lux b/licentia/source/program/licentia/license/copyright.lux index b3bbcfa9b..97eefea46 100644 --- a/licentia/source/program/licentia/license/copyright.lux +++ b/licentia/source/program/licentia/license/copyright.lux @@ -4,7 +4,7 @@ [// [time (.only Year Period)]]) -(type: .public Holder +(type .public Holder (Record [#name Text #period (Period Year)])) diff --git a/licentia/source/program/licentia/license/definition.lux b/licentia/source/program/licentia/license/definition.lux index d43906feb..ae0da31c3 100644 --- a/licentia/source/program/licentia/license/definition.lux +++ b/licentia/source/program/licentia/license/definition.lux @@ -7,7 +7,7 @@ [/// ["$" document]]) -(type: .public Definition +(type .public Definition (Record [#term Text #meaning Text])) diff --git a/licentia/source/program/licentia/license/time.lux b/licentia/source/program/licentia/license/time.lux index 9efebaf10..a7befd906 100644 --- a/licentia/source/program/licentia/license/time.lux +++ b/licentia/source/program/licentia/license/time.lux @@ -2,16 +2,16 @@ [library [lux (.except)]]) -(type: .public Days +(type .public Days Nat) -(type: .public Months +(type .public Months Nat) -(type: .public Year +(type .public Year Nat) -(type: .public (Period a) +(type .public (Period a) (Record [#start a #end a])) diff --git a/licentia/source/test/licentia.lux b/licentia/source/test/licentia.lux index d00497877..8d7bdc120 100644 --- a/licentia/source/test/licentia.lux +++ b/licentia/source/test/licentia.lux @@ -152,7 +152,7 @@ ..addendum )) -(type: (Concern a) +(type (Concern a) (-> (-> Text Bit) a Test)) (def (about_grant present? termination) diff --git a/lux-cl/source/program.lux b/lux-cl/source/program.lux index af4540785..c3e0589c4 100644 --- a/lux-cl/source/program.lux +++ b/lux-cl/source/program.lux @@ -220,7 +220,7 @@ )) )))) -(type: (Reader a) +(type (Reader a) (-> a (Try Any))) (def (read_variant read host_object) @@ -427,7 +427,7 @@ generation.bundle extension/bundle.empty ..program - [(& _.Tag Register) (type (_.Expression Any)) (type (_.Expression Any))] + [(And _.Tag Register) (type_literal (_.Expression Any)) (type_literal (_.Expression Any))] ..extender service [(packager.package (_.manual "") diff --git a/lux-jvm/source/program.lux b/lux-jvm/source/program.lux index 5e4f9c5b6..977c00f16 100644 --- a/lux-jvm/source/program.lux +++ b/lux-jvm/source/program.lux @@ -177,7 +177,7 @@ generation.bundle (|>> ..extender (directive.bundle loader)) (/program.program /runtime.class_name) - [Anchor (type (Bytecode Any)) Definition] + [Anchor (type_literal (Bytecode Any)) Definition] ..extender service [(packager.package context) diff --git a/lux-lua/source/program.lux b/lux-lua/source/program.lux index e043803ec..402287d22 100644 --- a/lux-lua/source/program.lux +++ b/lux-lua/source/program.lux @@ -179,7 +179,7 @@ "[1]::[0]" (getValue [] java/lang/Object)) - (type: Translator + (type Translator (-> java/lang/Object (Try Any))) (def (read_variant read host_object) @@ -454,7 +454,7 @@ (|>> (as java/lang/Object) (ffi.as net/sandius/rembulan/runtime/LuaFunction))) - (type: Baggage + (type Baggage [net/sandius/rembulan/StateContext net/sandius/rembulan/exec/DirectCallExecutor]) @@ -899,7 +899,7 @@ generation.bundle (function.constant extension/bundle.empty) ..program - [(type [Register _.Label]) + [(type_literal [Register _.Label]) _.Expression _.Statement] (for @.old (..extender baggage) diff --git a/lux-mode/lux-mode.el b/lux-mode/lux-mode.el index 5877a72f4..000cb4aaa 100644 --- a/lux-mode/lux-mode.el +++ b/lux-mode/lux-mode.el @@ -372,7 +372,7 @@ Called by `imenu--generic-function'." "Primitive" "->" "All" "Ex" "Interface" - "type")) + "type_literal")) (type//checking (altRE "is" "as" "let" "as_expected" "type_of" "sharing" "by_example" "hole")) (type//primitive (altRE "primitive" "abstraction" "representation" "transmutation")) (type//poly (altRE "polytypic")) @@ -396,7 +396,7 @@ Called by `imenu--generic-function'." (remember (altRE "remember" "to_do" "fix_me")) (extension (altRE "analysis" "synthesis" "generation" "directive")) (definition (altRE "\\.require" - "def" "inlined" "type:" "program:" + "def" "inlined" "type" "program:" "macro" "syntax" "exception:"))) (let ((control (altRE control//flow @@ -584,6 +584,7 @@ This function also returns nil meaning don't specify the indentation." ("polytypic" 'defun) ("def" 'defun) + ("type" 'defun) ("inlined" 'defun) ("context" 'defun) ("primitive" 'defun) diff --git a/lux-php/source/program.lux b/lux-php/source/program.lux index e9041321e..6dd73842c 100644 --- a/lux-php/source/program.lux +++ b/lux-php/source/program.lux @@ -177,7 +177,7 @@ [StructureValue] ) -(type: Reader +(type Reader (-> java/lang/Object (Try Any))) (exception: (unknown_kind_of_object [object java/lang/Object]) diff --git a/lux-python/source/program.lux b/lux-python/source/program.lux index c33470ebf..9b47b79f9 100644 --- a/lux-python/source/program.lux +++ b/lux-python/source/program.lux @@ -143,7 +143,7 @@ (exec [java/lang/String] "try" void) (eval [java/lang/String] "try" PyObject)) - (type: Translator + (type Translator (-> org/python/core/PyObject (Try Any))) (def (read_tuple read host_object) @@ -589,8 +589,8 @@ (function.constant extension/bundle.empty) ..program [Register - (type (_.Expression Any)) - (type (_.Statement Any))] + (type_literal (_.Expression Any)) + (type_literal (_.Statement Any))] ..extender service [(packager.package (is (_.Statement Any) (_.manual "")) diff --git a/lux-r/source/program.lux b/lux-r/source/program.lux index 47a0b83b9..46d0ccade 100644 --- a/lux-r/source/program.lux +++ b/lux-r/source/program.lux @@ -353,7 +353,7 @@ )) ))))) -(type: (Reader a) +(type (Reader a) (-> a (Try Any))) (def (read_variant read host_object) diff --git a/lux-ruby/source/program.lux b/lux-ruby/source/program.lux index a18f86cb9..30940108e 100644 --- a/lux-ruby/source/program.lux +++ b/lux-ruby/source/program.lux @@ -228,7 +228,7 @@ (call [org/jruby/runtime/ThreadContext [org/jruby/runtime/builtin/IRubyObject]] "try" org/jruby/runtime/builtin/IRubyObject)) -(type: Translator +(type Translator (-> java/lang/Object (Try Any))) (def (read_tuple read host_object) diff --git a/lux-scheme/source/program.lux b/lux-scheme/source/program.lux index 857d2e3e9..9c26be31f 100644 --- a/lux-scheme/source/program.lux +++ b/lux-scheme/source/program.lux @@ -258,7 +258,7 @@ {.#None}) value)) -(type: (Reader a) +(type (Reader a) (-> a (Try Any))) (def (variant tag flag value) diff --git a/stdlib/source/documentation/lux.lux b/stdlib/source/documentation/lux.lux index 0106fc515..72fa36c45 100644 --- a/stdlib/source/documentation/lux.lux +++ b/stdlib/source/documentation/lux.lux @@ -301,8 +301,8 @@ (documentation /.type "Takes a type expression and returns its representation as data-structure." - [(type (All (_ a) - (Maybe (List a))))]) + [(type_literal (All (_ a) + (Maybe (List a))))]) (documentation /.is "The type-annotation macro." @@ -320,8 +320,8 @@ (Rec Int_List (Or Any [Int Int_List]))] - ["Can also be used with type: and labelled-type definitions." - (type: Type + ["Can also be used with type and labelled-type definitions." + (type Type (Rec @ (Variant {#Primitive Text (List @)} @@ -369,7 +369,7 @@ ... (documentation /.^or ... (format "Or-patterns." ... \n "It's a special macro meant to be used with 'case'.") - ... [(type: Weekday + ... [(type Weekday ... (Variant ... {#Monday} ... {#Tuesday} @@ -472,8 +472,8 @@ (documentation /.Variant (format "Syntax for defining labelled/tagged sum/union types." - \n "WARNING: Only use it within the type: macro.") - [(type: Referrals + \n "WARNING: Only use it within the type macro.") + [(type Referrals (Variant {#All} {#Only (List Text)} @@ -483,21 +483,21 @@ (documentation /.Record (format "Syntax for defining labelled/slotted product/tuple types." - \n "WARNING: Only use it within the type: macro.") - [(type: Refer + \n "WARNING: Only use it within the type macro.") + [(type Refer (Record [#refer_defs Referrals #refer_open (List Openings)]))]) - (documentation /.type: + (documentation /.type "The type-definition macro." - [(type: (List a) + [(type (List a) {#End} {#Item a (List a)})]) (documentation /.Interface "Interface definition." - [(type: .public (Order a) + [(type .public (Order a) (Interface (is (Equivalence a) equivalence) diff --git a/stdlib/source/documentation/lux/control/security/policy.lux b/stdlib/source/documentation/lux/control/security/policy.lux index 6b1aa6f74..a2da0b92f 100644 --- a/stdlib/source/documentation/lux/control/security/policy.lux +++ b/stdlib/source/documentation/lux/control/security/policy.lux @@ -34,10 +34,10 @@ (documentation: /.with_policy "Activates a security context with the priviledge to enforce it's policy." - [(type: Password + [(type Password (Private Text)) - (type: (Policy %) + (type (Policy %) (Interface (is (-> Text (Password %)) password) diff --git a/stdlib/source/documentation/lux/data/format/binary.lux b/stdlib/source/documentation/lux/data/format/binary.lux index 9b415289a..64ece5b0b 100644 --- a/stdlib/source/documentation/lux/data/format/binary.lux +++ b/stdlib/source/documentation/lux/data/format/binary.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except nat int rev list type or and symbol) + [lux (.except nat int rev list or and symbol) ["$" documentation (.only documentation:)] [data [text (.only \n) diff --git a/stdlib/source/documentation/lux/data/format/json.lux b/stdlib/source/documentation/lux/data/format/json.lux index 27ae612b5..bda2246e2 100644 --- a/stdlib/source/documentation/lux/data/format/json.lux +++ b/stdlib/source/documentation/lux/data/format/json.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except nat int rev list type or and has) + [lux (.except nat int rev list or and has) ["$" documentation (.only documentation:)] [data [text (.only \n) diff --git a/stdlib/source/documentation/lux/data/format/xml.lux b/stdlib/source/documentation/lux/data/format/xml.lux index b433ceb20..afb0bc9ee 100644 --- a/stdlib/source/documentation/lux/data/format/xml.lux +++ b/stdlib/source/documentation/lux/data/format/xml.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except nat int rev list type or and) + [lux (.except nat int rev list or and) ["$" documentation (.only documentation:)] [data [text (.only \n) diff --git a/stdlib/source/documentation/lux/data/identity.lux b/stdlib/source/documentation/lux/data/identity.lux index c63c92e7c..f5a0d9589 100644 --- a/stdlib/source/documentation/lux/data/identity.lux +++ b/stdlib/source/documentation/lux/data/identity.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except nat int rev list type or and) + [lux (.except nat int rev list or and) ["$" documentation (.only documentation:)] [data [text (.only \n) diff --git a/stdlib/source/documentation/lux/data/text/format.lux b/stdlib/source/documentation/lux/data/text/format.lux index 35d677e8b..c7dbb68b5 100644 --- a/stdlib/source/documentation/lux/data/text/format.lux +++ b/stdlib/source/documentation/lux/data/text/format.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except nat int rev type list symbol) + [lux (.except nat int rev list symbol) ["$" documentation (.only documentation:)] [macro ["[0]" template]]]] diff --git a/stdlib/source/documentation/lux/ffi.js.lux b/stdlib/source/documentation/lux/ffi.js.lux index 460448c1e..6797208c8 100644 --- a/stdlib/source/documentation/lux/ffi.js.lux +++ b/stdlib/source/documentation/lux/ffi.js.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except int char type) + [lux (.except int char) ["$" documentation (.only documentation:)] [data ["[0]" text (.only \n) diff --git a/stdlib/source/documentation/lux/ffi.jvm.lux b/stdlib/source/documentation/lux/ffi.jvm.lux index 0aed47fd6..da10cb3d6 100644 --- a/stdlib/source/documentation/lux/ffi.jvm.lux +++ b/stdlib/source/documentation/lux/ffi.jvm.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except int char type is as) + [lux (.except int char is as) ["$" documentation (.only documentation:)] [data ["[0]" text (.only \n) diff --git a/stdlib/source/documentation/lux/ffi.lua.lux b/stdlib/source/documentation/lux/ffi.lua.lux index b437e24a9..5edd5c9e0 100644 --- a/stdlib/source/documentation/lux/ffi.lua.lux +++ b/stdlib/source/documentation/lux/ffi.lua.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except int char type) + [lux (.except int char) ["$" documentation (.only documentation:)] [data ["[0]" text (.only \n) diff --git a/stdlib/source/documentation/lux/ffi.old.lux b/stdlib/source/documentation/lux/ffi.old.lux index 8bcec68f2..805f9ec8c 100644 --- a/stdlib/source/documentation/lux/ffi.old.lux +++ b/stdlib/source/documentation/lux/ffi.old.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except int char type) + [lux (.except int char) ["$" documentation (.only documentation:)] [data ["[0]" text (.only \n) diff --git a/stdlib/source/documentation/lux/ffi.py.lux b/stdlib/source/documentation/lux/ffi.py.lux index 339d9407d..3feb67e74 100644 --- a/stdlib/source/documentation/lux/ffi.py.lux +++ b/stdlib/source/documentation/lux/ffi.py.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except int char type) + [lux (.except int char) ["$" documentation (.only documentation:)] [data ["[0]" text (.only \n) diff --git a/stdlib/source/documentation/lux/ffi.rb.lux b/stdlib/source/documentation/lux/ffi.rb.lux index b40599a19..86cff83d3 100644 --- a/stdlib/source/documentation/lux/ffi.rb.lux +++ b/stdlib/source/documentation/lux/ffi.rb.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except int char type) + [lux (.except int char) ["$" documentation (.only documentation:)] [data ["[0]" text (.only \n) diff --git a/stdlib/source/documentation/lux/meta.lux b/stdlib/source/documentation/lux/meta.lux index 327154e3a..651c465ea 100644 --- a/stdlib/source/documentation/lux/meta.lux +++ b/stdlib/source/documentation/lux/meta.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except type macro) + [lux (.except macro) ["$" documentation (.only documentation:)] [data ["[0]" text (.only \n) diff --git a/stdlib/source/documentation/lux/meta/symbol.lux b/stdlib/source/documentation/lux/meta/symbol.lux index afdf77bf2..6bdb746c3 100644 --- a/stdlib/source/documentation/lux/meta/symbol.lux +++ b/stdlib/source/documentation/lux/meta/symbol.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except nat int rev list type or and) + [lux (.except) ["$" documentation (.only documentation:)] [data [text (.only \n) diff --git a/stdlib/source/documentation/lux/type.lux b/stdlib/source/documentation/lux/type.lux index 0cb392108..16b7f238a 100644 --- a/stdlib/source/documentation/lux/type.lux +++ b/stdlib/source/documentation/lux/type.lux @@ -146,7 +146,7 @@ (foo expression))) (Bar a b c))) "=>" - (.type (Bar Bit Nat Text))]) + (.type_literal (Bar Bit Nat Text))]) (documentation: /.let "Local bindings for types." diff --git a/stdlib/source/documentation/lux/type/quotient.lux b/stdlib/source/documentation/lux/type/quotient.lux index c9f8c8586..2546996d7 100644 --- a/stdlib/source/documentation/lux/type/quotient.lux +++ b/stdlib/source/documentation/lux/type/quotient.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except type) + [lux (.except) ["$" documentation (.only documentation:)] [control ["<>" parser diff --git a/stdlib/source/documentation/lux/type/refinement.lux b/stdlib/source/documentation/lux/type/refinement.lux index e2f28603f..0c2d8eec5 100644 --- a/stdlib/source/documentation/lux/type/refinement.lux +++ b/stdlib/source/documentation/lux/type/refinement.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except type) + [lux (.except) ["$" documentation (.only documentation:)] [control ["<>" parser diff --git a/stdlib/source/format/lux/data/binary.lux b/stdlib/source/format/lux/data/binary.lux index 4a858a5f0..23b1e9c39 100644 --- a/stdlib/source/format/lux/data/binary.lux +++ b/stdlib/source/format/lux/data/binary.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except and or nat int rev list type symbol) + [lux (.except and or nat int rev list symbol type) [ffi (.only)] [abstract [monoid (.only Monoid)] @@ -46,10 +46,10 @@ (-> Size (I64 Any)) (|>> (n#* i64.bits_per_byte) i64.mask)) -(type: .public Mutation +(.type .public Mutation (-> [Offset Binary] [Offset Binary])) -(type: .public Specification +(.type .public Specification [Size Mutation]) (def .public no_op @@ -70,7 +70,7 @@ [(n#+ sizeL sizeR) (|>> mutL mutR)]))) -(type: .public (Writer a) +(.type .public (Writer a) (-> a Specification)) (def .public (result writer value) diff --git a/stdlib/source/format/lux/data/text.lux b/stdlib/source/format/lux/data/text.lux index 91e38ed27..7c80696fd 100644 --- a/stdlib/source/format/lux/data/text.lux +++ b/stdlib/source/format/lux/data/text.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except list nat int rev type symbol) + [lux (.except list nat int rev symbol type) [abstract [monad (.only do)] [functor @@ -39,7 +39,7 @@ ["[0]" symbol]] ["[0]" type]]]) -(type: .public (Format a) +(.type .public (Format a) (-> a Text)) (def .public functor diff --git a/stdlib/source/library/lux.lux b/stdlib/source/library/lux.lux index 41f6ab0ed..d9060f2c3 100644 --- a/stdlib/source/library/lux.lux +++ b/stdlib/source/library/lux.lux @@ -14,7 +14,7 @@ "library/lux" #1) -... (type: .public Any +... (type .public Any ... (Ex (_ a) a)) ("lux def" Any ("lux type check type" @@ -25,7 +25,7 @@ {4 #0 1}}}) #1) -... (type: .public Nothing +... (type .public Nothing ... (All (_ a) a)) ("lux def" Nothing ("lux type check type" @@ -36,7 +36,7 @@ {4 #0 1}}}) #1) -... (type: .public (List a) +... (type .public (List a) ... (Variant ... {#End} ... {#Item a (List a)})) @@ -115,7 +115,7 @@ {2 #0 Text Text}}) #1) -... (type: .public (Maybe a) +... (type .public (Maybe a) ... {#None} ... {#Some a}) ("lux def type tagged" Maybe @@ -131,7 +131,7 @@ {"#None" "#Some"} #1) -... (type: .public Type +... (type .public Type ... (Rec Type ... (Variant ... {#Primitive Text (List Type)} @@ -192,7 +192,7 @@ {"#Primitive" "#Sum" "#Product" "#Function" "#Parameter" "#Var" "#Ex" "#UnivQ" "#ExQ" "#Apply" "#Named"} #1) -... (type: .public Location +... (type .public Location ... (Record ... [#module Text ... #line Nat @@ -203,7 +203,7 @@ ["#module" "#line" "#column"] #1) -... (type: .public (Ann m v) +... (type .public (Ann m v) ... (Record ... [#meta m ... #datum v])) @@ -217,7 +217,7 @@ ["#meta" "#datum"] #1) -... (type: .public (Code' w) +... (type .public (Code' w) ... (Variant ... {#Bit Bit} ... {#Nat Nat} @@ -272,7 +272,7 @@ {"#Bit" "#Nat" "#Int" "#Rev" "#Frac" "#Text" "#Symbol" "#Form" "#Variant" "#Tuple"} #1) -... (type: .public Code +... (type .public Code ... (Ann Location (Code' (Ann Location)))) ("lux def" Code ("lux type check type" @@ -361,7 +361,7 @@ ([_ tokens] (_ann {#Tuple tokens}))) #0) -... (type: .public Definition +... (type .public Definition ... [Bit Type Any]) ("lux def" Definition ("lux type check type" @@ -369,7 +369,7 @@ {#Product Bit {#Product Type Any}}}) .public) -... (type: .public Alias +... (type .public Alias ... Symbol) ("lux def" Alias ("lux type check type" @@ -377,7 +377,7 @@ Symbol}) .public) -... (type: .public Label +... (type .public Label ... [Bit Type (List Text) Nat]) ("lux def" Label ("lux type check type" @@ -385,7 +385,7 @@ {#Product Bit {#Product Type {#Product {#Apply Text List} Nat}}}}) .public) -... (type: .public Global +... (type .public Global ... (Variant ... {#Definition Definition} ... {#Type [Bit Type (Either [Text (List Text)] [Text (List Text)])]} @@ -404,7 +404,7 @@ {"#Definition" "#Type" "#Tag" "#Slot" "#Alias"} .public) -... (type: .public (Bindings k v) +... (type .public (Bindings k v) ... (Record ... [#counter Nat ... #mappings (List [k v])])) @@ -422,7 +422,7 @@ ["#counter" "#mappings"] .public) -... (type: .public Ref +... (type .public Ref ... {#Local Nat} ... {#Captured Nat}) ("lux def type tagged" Ref @@ -436,7 +436,7 @@ .public) ... TODO: Get rid of both #name & #inner -... (type: .public Scope +... (type .public Scope ... (Record ... [#name (List Text) ... #inner Nat @@ -463,7 +463,7 @@ {#Apply Code List}) #0) -... (type: .public (Either l r) +... (type .public (Either l r) ... (Variant ... {#Left l} ... {#Right r})) @@ -479,7 +479,7 @@ {"#Left" "#Right"} .public) -... (type: .public Source +... (type .public Source ... [Location Nat Text]) ("lux def" Source ("lux type check type" @@ -487,7 +487,7 @@ {#Product Location {#Product Nat Text}}}) .public) -... (type: .public Module_State +... (type .public Module_State ... (Variant ... #Active ... #Compiled @@ -505,7 +505,7 @@ {"#Active" "#Compiled" "#Cached"} .public) -... (type: .public Module +... (type .public Module ... (Record ... [#module_hash Nat ... #module_aliases (List [Text Text]) @@ -532,7 +532,7 @@ ["#module_hash" "#module_aliases" "#definitions" "#imports" "#module_state"] .public) -... (type: .public Type_Context +... (type .public Type_Context ... (Record ... [#ex_counter Nat ... #var_counter Nat @@ -549,7 +549,7 @@ ["#ex_counter" "#var_counter" "#var_bindings"] .public) -... (type: .public Mode +... (type .public Mode ... #Build ... #Eval ... #Interpreter) @@ -564,7 +564,7 @@ {"#Build" "#Eval" "#Interpreter"} .public) -... (type: .public Info +... (type .public Info ... (Record ... [#target Text ... #version Text @@ -586,7 +586,7 @@ ["#target" "#version" "#mode" "#configuration"] .public) -... (type: .public Lux +... (type .public Lux ... (Rec Lux ... (Record ... [#info Info @@ -652,7 +652,7 @@ ["#info" "#source" "#location" "#current_module" "#modules" "#scopes" "#type_context" "#expected" "#seed" "#scope_type_vars" "#extensions" "#eval" "#host"] .public) -... (type: .public (Meta a) +... (type .public (Meta a) ... (-> Lux (Either Text [Lux a]))) ("lux def" Meta ("lux type check type" @@ -663,7 +663,7 @@ {#Apply Text Either}}}}}) .public) -... (type: .public Macro' +... (type .public Macro' ... (-> (List Code) (Meta (List Code)))) ("lux def" Macro' ("lux type check type" @@ -671,7 +671,7 @@ {#Function Code_List {#Apply Code_List Meta}}}) .public) -... (type: .public Macro +... (type .public Macro ... (Primitive "#Macro")) ("lux def" Macro ("lux type check type" @@ -1431,7 +1431,7 @@ (def''' .public all Macro ..right) -... (type: (Monad m) +... (type (Monad m) ... (Interface ... (is (All (_ a) (-> a (m a))) ... #in) @@ -2363,7 +2363,7 @@ type} type)) -(def'' .public type +(def'' .public type_literal Macro (macro (_ tokens) ({{#Item type {#End}} @@ -2378,7 +2378,7 @@ _ (failure "The expansion of the type-syntax had to yield a single element.")} type+)) - (in (list (..quantified (` (..type (~ type)))))))) + (in (list (..quantified (` (..type_literal (~ type)))))))) _ (failure "Wrong syntax for type")} @@ -2389,7 +2389,7 @@ (macro (_ tokens) ({{#Item type {#Item value {#End}}} (meta#in (list (` ("lux type check" - (..type (~ type)) + (..type_literal (~ type)) (~ value))))) _ @@ -2401,7 +2401,7 @@ (macro (_ tokens) ({{#Item type {#Item value {#End}}} (meta#in (list (` ("lux type as" - (..type (~ type)) + (..type_literal (~ type)) (~ value))))) _ @@ -2646,8 +2646,8 @@ (def' .private Parser Type {#Named [..prelude "Parser"] - (..type (All (_ a) - (-> (List Code) (Maybe [(List Code) a]))))}) + (..type_literal (All (_ a) + (-> (List Code) (Maybe [(List Code) a]))))}) (def' .private (parsed parser tokens) (All (_ a) (-> (Parser a) (List Code) (Maybe a))) @@ -3448,7 +3448,7 @@ (meta#in [type {#None}])} it)) -(def .public type: +(def .public type (macro (_ tokens) (case (typeP tokens) {#Some [export_policy name args type_codes]} @@ -3469,7 +3469,7 @@ {#Some type''} (let [typeC (` {.#Named [(~ (text$ module_name)) (~ (text$ name))] - (.type (~ type''))})] + (..type_literal (~ type''))})] (meta#in (list (case labels?? {#Some labels} (` ("lux def type tagged" (~ type_name) @@ -3489,15 +3489,15 @@ (~ export_policy))))))) {#None} - (failure (..wrong_syntax_error (symbol ..type:))))) + (failure (..wrong_syntax_error (symbol ..type))))) {#None} - (failure (..wrong_syntax_error (symbol ..type:)))))) + (failure (..wrong_syntax_error (symbol ..type)))))) -(type: Referral +(type Referral [Symbol (List Code)]) -(type: Importation +(type Importation (Record [#import_name Text #import_alias (Maybe Text) @@ -4241,11 +4241,11 @@ .let [[pre_defs implementations] pre_defs,implementations]] (in (|> pre_defs {#Item (` (..use - (~ (text$ current_module)) - (~ (text$ imported_module)) - (~ (text$ import_alias)) - (~ (text$ alias)) - (~+ implementations)))} + (~ (text$ current_module)) + (~ (text$ imported_module)) + (~ (text$ import_alias)) + (~ (text$ alias)) + (~+ implementations)))} list#reversed))))) @@ -4731,7 +4731,7 @@ _ (failure (..wrong_syntax_error (symbol ..static)))))) -(type: Multi_Level_Case +(type Multi_Level_Case [Code (List [Code Code])]) (def (case_level^ level) @@ -5096,7 +5096,7 @@ _ #0)) -(type: .public Immediate_UnQuote +(type .public Immediate_UnQuote (Primitive "#Macro/Immediate_UnQuote")) (def .public immediate_unquote diff --git a/stdlib/source/library/lux/abstract/algebra.lux b/stdlib/source/library/lux/abstract/algebra.lux index bee4b3941..7db1d3887 100644 --- a/stdlib/source/library/lux/abstract/algebra.lux +++ b/stdlib/source/library/lux/abstract/algebra.lux @@ -4,14 +4,14 @@ [control [functor (.only Fix)]]]]) -(type: .public (Algebra f a) +(type .public (Algebra f a) (-> (f a) a)) -(type: .public (CoAlgebra f a) +(type .public (CoAlgebra f a) (-> a (f a))) -(type: .public (RAlgebra f a) +(type .public (RAlgebra f a) (-> (f (Tuple (Fix f) a)) a)) -(type: .public (RCoAlgebra f a) +(type .public (RCoAlgebra f a) (-> a (f (Or (Fix f) a)))) diff --git a/stdlib/source/library/lux/abstract/apply.lux b/stdlib/source/library/lux/abstract/apply.lux index 6c92b02f0..708441991 100644 --- a/stdlib/source/library/lux/abstract/apply.lux +++ b/stdlib/source/library/lux/abstract/apply.lux @@ -6,7 +6,7 @@ [monad (.only Monad do)] ["[0]" functor (.only Functor)]]) -(type: .public (Apply f) +(type .public (Apply f) (Interface (is (Functor f) functor) diff --git a/stdlib/source/library/lux/abstract/codec.lux b/stdlib/source/library/lux/abstract/codec.lux index abb67a5af..f91e1ff20 100644 --- a/stdlib/source/library/lux/abstract/codec.lux +++ b/stdlib/source/library/lux/abstract/codec.lux @@ -7,7 +7,7 @@ [monad (.only do)] ["[0]" functor]]) -(type: .public (Codec m a) +(type .public (Codec m a) (Interface (is (-> a m) encoded) diff --git a/stdlib/source/library/lux/abstract/comonad.lux b/stdlib/source/library/lux/abstract/comonad.lux index 3a9de9e14..3bb200239 100644 --- a/stdlib/source/library/lux/abstract/comonad.lux +++ b/stdlib/source/library/lux/abstract/comonad.lux @@ -12,7 +12,7 @@ [// [functor (.only Functor)]]) -(type: .public (CoMonad w) +(type .public (CoMonad w) (Interface (is (Functor w) functor) diff --git a/stdlib/source/library/lux/abstract/comonad/free.lux b/stdlib/source/library/lux/abstract/comonad/free.lux index 740a405b6..b67ad2c55 100644 --- a/stdlib/source/library/lux/abstract/comonad/free.lux +++ b/stdlib/source/library/lux/abstract/comonad/free.lux @@ -5,7 +5,7 @@ [// [functor (.only Functor)]]]) -(type: .public (Free F a) +(type .public (Free F a) [a (F (Free F a))]) (def .public (functor dsl) diff --git a/stdlib/source/library/lux/abstract/enum.lux b/stdlib/source/library/lux/abstract/enum.lux index 709b02a35..eea9320df 100644 --- a/stdlib/source/library/lux/abstract/enum.lux +++ b/stdlib/source/library/lux/abstract/enum.lux @@ -4,7 +4,7 @@ [// ["[0]" order (.only Order)]]) -(type: .public (Enum e) +(type .public (Enum e) (Interface (is (Order e) order) (is (-> e e) succ) diff --git a/stdlib/source/library/lux/abstract/equivalence.lux b/stdlib/source/library/lux/abstract/equivalence.lux index 2fc81201b..aec9896e2 100644 --- a/stdlib/source/library/lux/abstract/equivalence.lux +++ b/stdlib/source/library/lux/abstract/equivalence.lux @@ -5,7 +5,7 @@ [functor ["[0]" contravariant]]]) -(type: .public (Equivalence a) +(type .public (Equivalence a) (Interface (is (-> a a Bit) =))) diff --git a/stdlib/source/library/lux/abstract/functor.lux b/stdlib/source/library/lux/abstract/functor.lux index 8d9167fc8..583be0344 100644 --- a/stdlib/source/library/lux/abstract/functor.lux +++ b/stdlib/source/library/lux/abstract/functor.lux @@ -2,14 +2,14 @@ [library [lux (.except Or And)]]) -(type: .public (Functor f) +(type .public (Functor f) (Interface (is (All (_ a b) (-> (-> a b) (-> (f a) (f b)))) each))) -(type: .public (Or f g) +(type .public (Or f g) (All (_ a) (.Or (f a) (g a)))) (def .public (sum (open "f#[0]") (open "g#[0]")) @@ -23,7 +23,7 @@ {.#Right ga} {.#Right (g#each f ga)})))) -(type: .public (And f g) +(type .public (And f g) (All (_ a) (.And (f a) (g a)))) (def .public (product (open "f#[0]") (open "g#[0]")) @@ -33,7 +33,7 @@ [(f#each f fa) (g#each f ga)]))) -(type: .public (Then f g) +(type .public (Then f g) (All (_ a) (f (g a)))) (def .public (composite (open "f#[0]") (open "g#[0]")) diff --git a/stdlib/source/library/lux/abstract/functor/contravariant.lux b/stdlib/source/library/lux/abstract/functor/contravariant.lux index 01e482ae3..01a5f7dc8 100644 --- a/stdlib/source/library/lux/abstract/functor/contravariant.lux +++ b/stdlib/source/library/lux/abstract/functor/contravariant.lux @@ -2,7 +2,7 @@ [library [lux (.except)]]) -(type: .public (Functor f) +(type .public (Functor f) (Interface (is (All (_ a b) (-> (-> b a) diff --git a/stdlib/source/library/lux/abstract/hash.lux b/stdlib/source/library/lux/abstract/hash.lux index 0c9b9a9eb..07361aff2 100644 --- a/stdlib/source/library/lux/abstract/hash.lux +++ b/stdlib/source/library/lux/abstract/hash.lux @@ -6,7 +6,7 @@ [functor ["[0]" contravariant]]]) -(type: .public (Hash a) +(type .public (Hash a) (Interface (is (Equivalence a) equivalence) diff --git a/stdlib/source/library/lux/abstract/interval.lux b/stdlib/source/library/lux/abstract/interval.lux index 34f5a0da4..913f29274 100644 --- a/stdlib/source/library/lux/abstract/interval.lux +++ b/stdlib/source/library/lux/abstract/interval.lux @@ -7,7 +7,7 @@ ["[0]" order] [enum (.only Enum)]]) -(type: .public (Interval a) +(type .public (Interval a) (Interface (is (Enum a) enum) diff --git a/stdlib/source/library/lux/abstract/mix.lux b/stdlib/source/library/lux/abstract/mix.lux index b64a96fd2..29bc56412 100644 --- a/stdlib/source/library/lux/abstract/mix.lux +++ b/stdlib/source/library/lux/abstract/mix.lux @@ -4,7 +4,7 @@ [// [monoid (.only Monoid)]]) -(type: .public (Mix F) +(type .public (Mix F) (Interface (is (All (_ a b) (-> (-> b a a) a (F b) a)) diff --git a/stdlib/source/library/lux/abstract/monad.lux b/stdlib/source/library/lux/abstract/monad.lux index 737ee2678..3bf10fca1 100644 --- a/stdlib/source/library/lux/abstract/monad.lux +++ b/stdlib/source/library/lux/abstract/monad.lux @@ -43,7 +43,7 @@ _ {.#End})) -(type: .public (Monad m) +(type .public (Monad m) (Interface (is (Functor m) functor) diff --git a/stdlib/source/library/lux/abstract/monad/free.lux b/stdlib/source/library/lux/abstract/monad/free.lux index 614834c70..257d149b3 100644 --- a/stdlib/source/library/lux/abstract/monad/free.lux +++ b/stdlib/source/library/lux/abstract/monad/free.lux @@ -6,7 +6,7 @@ [apply (.only Apply)] [monad (.only Monad)]]) -(type: .public (Free F a) +(type .public (Free F a) (Variant {#Pure a} {#Effect (F (Free F a))})) diff --git a/stdlib/source/library/lux/abstract/monad/indexed.lux b/stdlib/source/library/lux/abstract/monad/indexed.lux index dc4e93177..ae8ad03db 100644 --- a/stdlib/source/library/lux/abstract/monad/indexed.lux +++ b/stdlib/source/library/lux/abstract/monad/indexed.lux @@ -12,7 +12,7 @@ ["[0]" code]]]] ["[0]" //]) -(type: .public (IxMonad m) +(type .public (IxMonad m) (Interface (is (All (_ p a) (-> a (m p p a))) @@ -24,14 +24,14 @@ (m ii io vo))) then))) -(type: Binding +(type Binding [Code Code]) (def binding (Parser Binding) (<>.and .any .any)) -(type: Context +(type Context (Variant {#Macro Symbol Code} {#Binding Binding})) diff --git a/stdlib/source/library/lux/abstract/monoid.lux b/stdlib/source/library/lux/abstract/monoid.lux index cf5ea3704..6190cfe7e 100644 --- a/stdlib/source/library/lux/abstract/monoid.lux +++ b/stdlib/source/library/lux/abstract/monoid.lux @@ -2,7 +2,7 @@ [library [lux (.except and)]]) -(type: .public (Monoid a) +(type .public (Monoid a) (Interface (is a identity) diff --git a/stdlib/source/library/lux/abstract/order.lux b/stdlib/source/library/lux/abstract/order.lux index 251683060..48bddc4be 100644 --- a/stdlib/source/library/lux/abstract/order.lux +++ b/stdlib/source/library/lux/abstract/order.lux @@ -8,7 +8,7 @@ [functor ["[0]" contravariant]]]) -(type: .public (Order a) +(type .public (Order a) (Interface (is (Equivalence a) equivalence) @@ -16,7 +16,7 @@ (is (-> a a Bit) <))) -(type: .public (Comparison a) +(type .public (Comparison a) (-> (Order a) a a Bit)) (def .public (<= order parameter subject) @@ -33,7 +33,7 @@ (or (at order < subject parameter) (at order = subject parameter))) -(type: .public (Choice a) +(type .public (Choice a) (-> (Order a) a a a)) (def .public (min order x y) diff --git a/stdlib/source/library/lux/abstract/predicate.lux b/stdlib/source/library/lux/abstract/predicate.lux index 358e5493a..1fa3a3dc4 100644 --- a/stdlib/source/library/lux/abstract/predicate.lux +++ b/stdlib/source/library/lux/abstract/predicate.lux @@ -8,7 +8,7 @@ [functor ["[0]" contravariant]]]) -(type: .public (Predicate a) +(type .public (Predicate a) (-> a Bit)) (with_template [ ] diff --git a/stdlib/source/library/lux/control/concatenative.lux b/stdlib/source/library/lux/control/concatenative.lux index 8af49edd4..b0768b43e 100644 --- a/stdlib/source/library/lux/control/concatenative.lux +++ b/stdlib/source/library/lux/control/concatenative.lux @@ -27,7 +27,7 @@ ["<>" parser (.use "[1]#[0]" monad) ["<[0]>" code (.only Parser)]]]) -(type: Stack +(type Stack (Record [#bottom (Maybe Code) #top (List Code)])) diff --git a/stdlib/source/library/lux/control/concurrency/actor.lux b/stdlib/source/library/lux/control/concurrency/actor.lux index 7184a105e..f777f5aa5 100644 --- a/stdlib/source/library/lux/control/concurrency/actor.lux +++ b/stdlib/source/library/lux/control/concurrency/actor.lux @@ -53,13 +53,13 @@ (Resolver ( Actor s))] #mailbox (Atom ( Actor s))]) - (type: .public (Mail s) + (type .public (Mail s) ( Actor s)) - (type: .public (Obituary s) + (type .public (Obituary s) ( Actor s)) - (type: .public (Behavior s) + (type .public (Behavior s) (-> (Mail s) s (Actor s) (Async (Try s)))) (def .public (spawn! behavior init) @@ -137,7 +137,7 @@ (again |mailbox|')))))) (in (exception.except ..dead []))))) - (type: .public (Message s o) + (type .public (Message s o) (-> s (Actor s) (Async (Try [s o])))) (def (mail message) @@ -187,7 +187,7 @@ (async.resolved (exception.except ..poisoned []))) actor)) -(type: .public Stop +(type .public Stop (IO Any)) (def continue! true) diff --git a/stdlib/source/library/lux/control/concurrency/async.lux b/stdlib/source/library/lux/control/concurrency/async.lux index f87dd4d05..40b2760b0 100644 --- a/stdlib/source/library/lux/control/concurrency/async.lux +++ b/stdlib/source/library/lux/control/concurrency/async.lux @@ -24,13 +24,13 @@ (primitive .public (Async'' a) (Atom [(Maybe a) (List (-> a (IO Any)))]) - (type: .public (Async' r w) + (type .public (Async' r w) (Async'' (Mutable r w))) - (type: .public (Async a) + (type .public (Async a) (Async'' (Mutable a a))) - (type: .public (Resolver w) + (type .public (Resolver w) (-> w (IO Bit))) ... Sets an async's value if it has not been done yet. diff --git a/stdlib/source/library/lux/control/concurrency/atom.lux b/stdlib/source/library/lux/control/concurrency/atom.lux index 6c40e9d7e..65a981c44 100644 --- a/stdlib/source/library/lux/control/concurrency/atom.lux +++ b/stdlib/source/library/lux/control/concurrency/atom.lux @@ -32,10 +32,10 @@ @.jvm (array.Array a))) - (type: .public (Atom' r w) + (type .public (Atom' r w) (Atom'' (Mutable r w))) - (type: .public (Atom a) + (type .public (Atom a) (Atom'' (Mutable a a))) (def .public (atom value) diff --git a/stdlib/source/library/lux/control/concurrency/frp.lux b/stdlib/source/library/lux/control/concurrency/frp.lux index 0839a267d..ec845f70d 100644 --- a/stdlib/source/library/lux/control/concurrency/frp.lux +++ b/stdlib/source/library/lux/control/concurrency/frp.lux @@ -17,18 +17,18 @@ ["[0]" atom (.only Atom)] ["[0]" async (.only Async Async') (.use "[1]#[0]" monad)]]) -(type: .public (Channel'' a) +(type .public (Channel'' a) (Async (Maybe [a (Channel'' a)]))) -(type: .public (Channel' r w) +(type .public (Channel' r w) (Channel'' (Mutable r w))) -(type: .public (Channel a) +(type .public (Channel a) (Channel'' (Mutable a a))) (exception: .public channel_is_already_closed) -(type: .public (Sink w) +(type .public (Sink w) (Interface (is (IO (Try Any)) close) @@ -158,7 +158,7 @@ (in (is Any (io.run! (at sink close)))))))) output))))) -(type: .public (Subscriber a) +(type .public (Subscriber a) (-> a (IO (Maybe Any)))) (def .public (subscribe! subscriber channel) diff --git a/stdlib/source/library/lux/control/concurrency/semaphore.lux b/stdlib/source/library/lux/control/concurrency/semaphore.lux index d08c90100..135dd3abb 100644 --- a/stdlib/source/library/lux/control/concurrency/semaphore.lux +++ b/stdlib/source/library/lux/control/concurrency/semaphore.lux @@ -24,7 +24,7 @@ ["[0]" atom (.only Atom)] ["[0]" async (.only Async Resolver)]]) -(type: State +(type State (Record [#max_positions Nat #open_positions Int @@ -121,7 +121,7 @@ (def .public limit (refinement.refiner (n.> 0))) -(type: .public Limit +(type .public Limit (~ (refinement.type limit))) (primitive .public Barrier diff --git a/stdlib/source/library/lux/control/concurrency/stm.lux b/stdlib/source/library/lux/control/concurrency/stm.lux index a1e50a983..3dfeeec5c 100644 --- a/stdlib/source/library/lux/control/concurrency/stm.lux +++ b/stdlib/source/library/lux/control/concurrency/stm.lux @@ -23,16 +23,16 @@ ["[0]" async (.only Async Resolver)] ["[0]" frp (.only Channel Sink)]]) -(type: (Observer a) +(type (Observer a) (-> a (IO Any))) (primitive .public (Var'' a) (Atom [a (List (Sink a))]) - (type: .public (Var' r w) + (type .public (Var' r w) (Var'' (Mutable r w))) - (type: .public (Var a) + (type .public (Var a) (Var'' (Mutable a a))) (def .public (var value) @@ -87,16 +87,16 @@ (in [channel sink]))) ) -(type: (Tx_Frame r w) +(type (Tx_Frame r w) (Record [#var (Var' r w) #original r #current w])) -(type: Tx +(type Tx (List (Ex (_ r w) (Tx_Frame r w)))) -(type: .public (STM a) +(type .public (STM a) (-> Tx [Tx a])) (def (var_value var tx) @@ -212,7 +212,7 @@ (def fresh_tx Tx (list)) -(type: (Commit a) +(type (Commit a) [(STM a) (Async a) (Resolver a)]) diff --git a/stdlib/source/library/lux/control/concurrency/thread.lux b/stdlib/source/library/lux/control/concurrency/thread.lux index 515447e22..57ab5f6e5 100644 --- a/stdlib/source/library/lux/control/concurrency/thread.lux +++ b/stdlib/source/library/lux/control/concurrency/thread.lux @@ -66,7 +66,7 @@ (start [] "io" "?" Any)) ... Default - (type: Thread + (type Thread (Record [#creation Nat #delay Nat diff --git a/stdlib/source/library/lux/control/continuation.lux b/stdlib/source/library/lux/control/continuation.lux index 5aa7f47a3..57f0053e9 100644 --- a/stdlib/source/library/lux/control/continuation.lux +++ b/stdlib/source/library/lux/control/continuation.lux @@ -13,7 +13,7 @@ [syntax (.only syntax)] ["[0]" code]]]]) -(type: .public (Cont i o) +(type .public (Cont i o) (-> (-> i o) o)) (def .public (continued next cont) diff --git a/stdlib/source/library/lux/control/exception.lux b/stdlib/source/library/lux/control/exception.lux index d9f2f0fcf..bbd25489e 100644 --- a/stdlib/source/library/lux/control/exception.lux +++ b/stdlib/source/library/lux/control/exception.lux @@ -26,7 +26,7 @@ [// ["//" try (.only Try)]]) -(type: .public (Exception a) +(type .public (Exception a) (Record [#label Text #constructor (-> a Text)])) diff --git a/stdlib/source/library/lux/control/function/memo.lux b/stdlib/source/library/lux/control/function/memo.lux index d3ff5744b..f39cb33e3 100644 --- a/stdlib/source/library/lux/control/function/memo.lux +++ b/stdlib/source/library/lux/control/function/memo.lux @@ -34,7 +34,7 @@ _ (state.update (dictionary.has input output))] (in output))))))) -(type: .public (Memo i o) +(type .public (Memo i o) (Recursive i (State (Dictionary i o) o))) (def .public (open memo) diff --git a/stdlib/source/library/lux/control/function/mixin.lux b/stdlib/source/library/lux/control/function/mixin.lux index 0ec280143..113d17fa9 100644 --- a/stdlib/source/library/lux/control/function/mixin.lux +++ b/stdlib/source/library/lux/control/function/mixin.lux @@ -9,7 +9,7 @@ [predicate (.only Predicate)] [monad (.only Monad do)]]]]) -(type: .public (Mixin i o) +(type .public (Mixin i o) (-> (-> i o) (-> i o) (-> i o))) (def .public (fixed f) @@ -55,7 +55,7 @@ _ (action input output)] (in output)))) -(type: .public (Recursive i o) +(type .public (Recursive i o) (-> (-> i o) (-> i o))) (def .public (of_recursive recursive) diff --git a/stdlib/source/library/lux/control/function/mutual.lux b/stdlib/source/library/lux/control/function/mutual.lux index 2af557492..bcf8753c6 100644 --- a/stdlib/source/library/lux/control/function/mutual.lux +++ b/stdlib/source/library/lux/control/function/mutual.lux @@ -24,7 +24,7 @@ ["[0]" declaration (.only Declaration)]]]]] ["[0]" //]) -(type: Mutual +(type Mutual (Record [#declaration Declaration #type Code @@ -96,7 +96,7 @@ (exec (~ g!pop) (~ g!output))))))))))) -(type: Definition +(type Definition (Record [#export_policy Code #mutual Mutual])) diff --git a/stdlib/source/library/lux/control/maybe.lux b/stdlib/source/library/lux/control/maybe.lux index 9241da0c8..e703c718f 100644 --- a/stdlib/source/library/lux/control/maybe.lux +++ b/stdlib/source/library/lux/control/maybe.lux @@ -11,7 +11,7 @@ [meta ["[0]" location]]]]) -... (type: (Maybe a) +... (type (Maybe a) ... {.#None} ... {.#Some a}) diff --git a/stdlib/source/library/lux/control/parser.lux b/stdlib/source/library/lux/control/parser.lux index 07bef823a..6b57ce695 100644 --- a/stdlib/source/library/lux/control/parser.lux +++ b/stdlib/source/library/lux/control/parser.lux @@ -16,7 +16,7 @@ [number ["n" nat]]]]]) -(type: .public (Parser s a) +(type .public (Parser s a) (-> s (Try [s a]))) (def .public functor diff --git a/stdlib/source/library/lux/control/parser/cli.lux b/stdlib/source/library/lux/control/parser/cli.lux index 90a0d80c2..694cb93fc 100644 --- a/stdlib/source/library/lux/control/parser/cli.lux +++ b/stdlib/source/library/lux/control/parser/cli.lux @@ -10,7 +10,7 @@ ["%" \\format (.only format)]]]]] ["[0]" //]) -(type: .public (Parser a) +(type .public (Parser a) (//.Parser (List Text) a)) (def .public (result parser inputs) diff --git a/stdlib/source/library/lux/control/parser/code.lux b/stdlib/source/library/lux/control/parser/code.lux index 184d4d97a..a73b18c55 100644 --- a/stdlib/source/library/lux/control/parser/code.lux +++ b/stdlib/source/library/lux/control/parser/code.lux @@ -31,7 +31,7 @@ {.#Item [[x y] pairs']} (list.partial x y (un_paired pairs')))) -(type: .public Parser +(type .public Parser (//.Parser (List Code))) (def remaining_inputs diff --git a/stdlib/source/library/lux/control/parser/environment.lux b/stdlib/source/library/lux/control/parser/environment.lux index 99f1405db..e685ae64d 100644 --- a/stdlib/source/library/lux/control/parser/environment.lux +++ b/stdlib/source/library/lux/control/parser/environment.lux @@ -12,17 +12,17 @@ ["[0]" dictionary (.only Dictionary)]]]]] ["[0]" //]) -(type: .public Property +(type .public Property Text) -(type: .public Environment +(type .public Environment (Dictionary Property Text)) (exception: .public (unknown_property [property Property]) (exception.report "Property" (%.text property))) -(type: .public (Parser a) +(type .public (Parser a) (//.Parser Environment a)) (def .public empty diff --git a/stdlib/source/library/lux/control/parser/tree.lux b/stdlib/source/library/lux/control/parser/tree.lux index 5aaba56ed..8b232b07f 100644 --- a/stdlib/source/library/lux/control/parser/tree.lux +++ b/stdlib/source/library/lux/control/parser/tree.lux @@ -12,7 +12,7 @@ ["[0]" zipper (.only Zipper)]]]]]] ["[0]" //]) -(type: .public (Parser t a) +(type .public (Parser t a) (//.Parser (Zipper t) a)) (def .public (result' parser zipper) diff --git a/stdlib/source/library/lux/control/parser/type.lux b/stdlib/source/library/lux/control/parser/type.lux index 999c44325..9546c128f 100644 --- a/stdlib/source/library/lux/control/parser/type.lux +++ b/stdlib/source/library/lux/control/parser/type.lux @@ -63,10 +63,10 @@ (list#each (|>> %.type (format text.new_line "* "))) (text.interposed "")))) -(type: .public Env +(type .public Env (Dictionary Nat [Type Code])) -(type: .public (Parser a) +(type .public (Parser a) (//.Parser [Env (List Type)] a)) (def .public fresh diff --git a/stdlib/source/library/lux/control/reader.lux b/stdlib/source/library/lux/control/reader.lux index 12f30ce22..aa15befa8 100644 --- a/stdlib/source/library/lux/control/reader.lux +++ b/stdlib/source/library/lux/control/reader.lux @@ -7,7 +7,7 @@ ["[0]" functor (.only Functor)] ["[0]" monad (.only Monad do)]]]]) -(type: .public (Reader r a) +(type .public (Reader r a) (-> r a)) (def .public read diff --git a/stdlib/source/library/lux/control/region.lux b/stdlib/source/library/lux/control/region.lux index 66bb3b721..15f4a25af 100644 --- a/stdlib/source/library/lux/control/region.lux +++ b/stdlib/source/library/lux/control/region.lux @@ -15,10 +15,10 @@ [// ["[0]" exception (.only Exception exception:)]]) -(type: (Cleaner r !) +(type (Cleaner r !) (-> r (! (Try Any)))) -(type: .public (Region r ! a) +(type .public (Region r ! a) (-> [r (List (Cleaner r !))] (! [(List (Cleaner r !)) (Try a)]))) diff --git a/stdlib/source/library/lux/control/security/capability.lux b/stdlib/source/library/lux/control/security/capability.lux index 24cb094d7..0164bcc7b 100644 --- a/stdlib/source/library/lux/control/security/capability.lux +++ b/stdlib/source/library/lux/control/security/capability.lux @@ -52,7 +52,7 @@ g!brand (at ! each (|>> %.code code.text) (macro.symbol (format (%.symbol [this_module name])))) .let [capability (` (..Capability (.Primitive (~ g!brand)) (~ input) (~ output)))]] - (in (list (` (type: (~ export_policy) + (in (list (` (type (~ export_policy) (~ (|declaration|.format declaration)) (~ capability))) (` (def (~ (code.local forger)) diff --git a/stdlib/source/library/lux/control/security/policy.lux b/stdlib/source/library/lux/control/security/policy.lux index 923d28db1..963f0377f 100644 --- a/stdlib/source/library/lux/control/security/policy.lux +++ b/stdlib/source/library/lux/control/security/policy.lux @@ -11,18 +11,18 @@ (primitive .public (Policy brand value label) value - (type: .public (Can_Upgrade brand label value) + (type .public (Can_Upgrade brand label value) (-> value (Policy brand value label))) - (type: .public (Can_Downgrade brand label value) + (type .public (Can_Downgrade brand label value) (-> (Policy brand value label) value)) - (type: .public (Privilege brand label) + (type .public (Privilege brand label) (Record [#can_upgrade (Can_Upgrade brand label) #can_downgrade (Can_Downgrade brand label)])) - (type: .public (Delegation brand from to) + (type .public (Delegation brand from to) (All (_ value) (-> (Policy brand value from) (Policy brand value to)))) @@ -33,7 +33,7 @@ (Delegation brand from to))) (|>> downgrade upgrade)) - (type: .public (Context brand scope label) + (type .public (Context brand scope label) (-> (Privilege brand label) (scope label))) @@ -51,8 +51,8 @@ (def (of_policy constructor) (-> Type Type) - (type (All (_ brand label) - (constructor (All (_ value) (Policy brand value label)))))) + (type_literal (All (_ brand label) + (constructor (All (_ value) (Policy brand value label)))))) (def .public functor (~ (..of_policy Functor)) @@ -80,13 +80,13 @@ [(primitive .public Any - (type: .public + (type .public (Policy )) - (type: .public + (type .public (Can_Upgrade )) - (type: .public + (type .public (Can_Downgrade )) )] diff --git a/stdlib/source/library/lux/control/state.lux b/stdlib/source/library/lux/control/state.lux index 205638278..3e925308a 100644 --- a/stdlib/source/library/lux/control/state.lux +++ b/stdlib/source/library/lux/control/state.lux @@ -6,7 +6,7 @@ [apply (.only Apply)] [monad (.only Monad do)]]]]) -(type: .public (State s a) +(type .public (State s a) (-> s [s a])) (def .public get @@ -108,7 +108,7 @@ [state a] (sFa state)] (in [state (f a)])))))) -(type: .public (+State M s a) +(type .public (+State M s a) (-> s (M [s a]))) (def .public (result' state action) diff --git a/stdlib/source/library/lux/control/thread.lux b/stdlib/source/library/lux/control/thread.lux index 506270888..69591de05 100644 --- a/stdlib/source/library/lux/control/thread.lux +++ b/stdlib/source/library/lux/control/thread.lux @@ -16,16 +16,16 @@ [primitive (.except)] ["[0]" variance (.only Mutable)]]]]) -(type: .public (Thread ! a) +(type .public (Thread ! a) (-> ! a)) (primitive .public (Box'' t a) (Array a) - (type: .public (Box' t r w) + (type .public (Box' t r w) (Box'' t (Mutable r w))) - (type: .public (Box t a) + (type .public (Box t a) (Box'' t (Mutable a a))) (def .public (box init) diff --git a/stdlib/source/library/lux/control/try.lux b/stdlib/source/library/lux/control/try.lux index e18c3eb65..794b00f7c 100644 --- a/stdlib/source/library/lux/control/try.lux +++ b/stdlib/source/library/lux/control/try.lux @@ -10,7 +10,7 @@ [meta ["[0]" location]]]]) -(type: .public (Try a) +(type .public (Try a) (Variant {#Failure Text} {#Success a})) diff --git a/stdlib/source/library/lux/control/writer.lux b/stdlib/source/library/lux/control/writer.lux index bfad2a3e9..c1c52b904 100644 --- a/stdlib/source/library/lux/control/writer.lux +++ b/stdlib/source/library/lux/control/writer.lux @@ -8,7 +8,7 @@ ["[0]" functor (.only Functor)] ["[0]" monad (.only Monad do)]]]]) -(type: .public (Writer log value) +(type .public (Writer log value) (Record [#log log #value value])) diff --git a/stdlib/source/library/lux/data/binary.lux b/stdlib/source/library/lux/data/binary.lux index 1c0f45a84..caf7e01b8 100644 --- a/stdlib/source/library/lux/data/binary.lux +++ b/stdlib/source/library/lux/data/binary.lux @@ -20,7 +20,7 @@ ["[0]" / ["[1]" \\unsafe]]) -(type: .public Binary +(type .public Binary /.Binary) (def .public size diff --git a/stdlib/source/library/lux/data/collection/array.lux b/stdlib/source/library/lux/data/collection/array.lux index f259d5c87..54206f22a 100644 --- a/stdlib/source/library/lux/data/collection/array.lux +++ b/stdlib/source/library/lux/data/collection/array.lux @@ -18,10 +18,10 @@ Text !.type) -(type: .public Array' +(type .public Array' !.Array') -(type: .public Array +(type .public Array !.Array) (def .public empty diff --git a/stdlib/source/library/lux/data/collection/bits.lux b/stdlib/source/library/lux/data/collection/bits.lux index c7da7a117..ba33e6fac 100644 --- a/stdlib/source/library/lux/data/collection/bits.lux +++ b/stdlib/source/library/lux/data/collection/bits.lux @@ -14,13 +14,13 @@ ["n" nat] ["[0]" i64]]]]]) -(type: .public Chunk +(type .public Chunk I64) (def .public chunk_size i64.width) -(type: .public Bits +(type .public Bits (Array Chunk)) (def empty_chunk diff --git a/stdlib/source/library/lux/data/collection/dictionary.lux b/stdlib/source/library/lux/data/collection/dictionary.lux index a7dc74404..1a960a6e9 100644 --- a/stdlib/source/library/lux/data/collection/dictionary.lux +++ b/stdlib/source/library/lux/data/collection/dictionary.lux @@ -30,22 +30,22 @@ ... Bitmaps are used to figure out which branches on a #Base node are ... populated. The number of bits that are 1s in a bitmap signal the ... size of the #Base node. -(type: Bit_Map +(type Bit_Map Nat) ... Represents the position of a node in a Bit_Map. ... It's meant to be a single bit set on a 32-bit word. ... The position of the bit reflects whether an entry in an analogous ... position exists within a #Base, as reflected in its Bit_Map. -(type: Bit_Position +(type Bit_Position Nat) ... An index into an array. -(type: Index +(type Index Nat) ... A hash-code derived from a key during tree-traversal. -(type: Hash_Code +(type Hash_Code Nat) ... Represents the nesting level of a leaf or node, when looking-it-up @@ -55,12 +55,12 @@ ... A shift of 0 means root level. ... A shift of (* branching_exponent 1) means level 2. ... A shift of (* branching_exponent N) means level N+1. -(type: Level +(type Level Nat) ... Nodes for the tree data-structure that organizes the data inside ... Dictionaries. -(type: (Node k v) +(type (Node k v) (Variant {#Hierarchy Nat (Array (Node k v))} {#Base Bit_Map @@ -69,19 +69,19 @@ {#Collisions Hash_Code (Array [k v])})) ... #Hierarchy nodes are meant to point down only to lower-level nodes. -(type: (Hierarchy k v) +(type (Hierarchy k v) [Nat (Array (Node k v))]) ... #Base nodes may point down to other nodes, but also to leaves, ... which are KV-pairs. -(type: (Base k v) +(type (Base k v) (Array (Either (Node k v) [k v]))) ... #Collisions are collections of KV-pairs for which the key is ... different on each case, but their hashes are all the same (thus ... causing a collision). -(type: (Collisions k v) +(type (Collisions k v) (Array [k v])) ... That bitmap for an empty #Base is 0. @@ -560,7 +560,7 @@ {.#Item head tail}) {.#End})) -(type: .public (Dictionary k v) +(type .public (Dictionary k v) (Record [#hash (Hash k) #root (Node k v)])) diff --git a/stdlib/source/library/lux/data/collection/dictionary/ordered.lux b/stdlib/source/library/lux/data/collection/dictionary/ordered.lux index 00ef47da9..aba1374d3 100644 --- a/stdlib/source/library/lux/data/collection/dictionary/ordered.lux +++ b/stdlib/source/library/lux/data/collection/dictionary/ordered.lux @@ -20,12 +20,12 @@ (def error_message "Invariant violation") -(type: Color +(type Color (Variant {#Red} {#Black})) -(type: (Node k v) +(type (Node k v) (Record [#color Color #key k @@ -46,7 +46,7 @@ [black #Black] ) -(type: .public (Dictionary k v) +(type .public (Dictionary k v) (Record [#order (Order k) #root (Maybe (Node k v))])) diff --git a/stdlib/source/library/lux/data/collection/dictionary/plist.lux b/stdlib/source/library/lux/data/collection/dictionary/plist.lux index ed02d287c..2e6abd831 100644 --- a/stdlib/source/library/lux/data/collection/dictionary/plist.lux +++ b/stdlib/source/library/lux/data/collection/dictionary/plist.lux @@ -16,7 +16,7 @@ ["n" nat]]]]]) ... https://en.wikipedia.org/wiki/Property_list -(type: .public (PList a) +(type .public (PList a) (List [Text a])) (def .public empty diff --git a/stdlib/source/library/lux/data/collection/list.lux b/stdlib/source/library/lux/data/collection/list.lux index 929a6373b..55363092b 100644 --- a/stdlib/source/library/lux/data/collection/list.lux +++ b/stdlib/source/library/lux/data/collection/list.lux @@ -19,7 +19,7 @@ [number ["n" nat]]]]]) -... (type: (List a) +... (type (List a) ... #End ... {#Item a (List a)}) @@ -604,7 +604,7 @@ (do [! monad] [lMla MlMla ... TODO: Remove this version ASAP and use one below. - lla (for @.old (is {.#Apply (type (List (List (parameter 1)))) + lla (for @.old (is {.#Apply (type_literal (List (List (parameter 1)))) (parameter 0)} (monad.all ! lMla)) (monad.all ! lMla))] diff --git a/stdlib/source/library/lux/data/collection/queue.lux b/stdlib/source/library/lux/data/collection/queue.lux index fd85c71c0..361690fd7 100644 --- a/stdlib/source/library/lux/data/collection/queue.lux +++ b/stdlib/source/library/lux/data/collection/queue.lux @@ -11,7 +11,7 @@ [number ["n" nat]]]]]) -(type: .public (Queue a) +(type .public (Queue a) (Record [#front (List a) #rear (List a)])) diff --git a/stdlib/source/library/lux/data/collection/queue/priority.lux b/stdlib/source/library/lux/data/collection/queue/priority.lux index 0ee30e78d..c860daae8 100644 --- a/stdlib/source/library/lux/data/collection/queue/priority.lux +++ b/stdlib/source/library/lux/data/collection/queue/priority.lux @@ -16,7 +16,7 @@ [type (.only by_example) [primitive (.only primitive abstraction representation)]]]]) -(type: .public Priority +(type .public Priority Nat) (def .public max diff --git a/stdlib/source/library/lux/data/collection/sequence.lux b/stdlib/source/library/lux/data/collection/sequence.lux index a33351aee..477d034a7 100644 --- a/stdlib/source/library/lux/data/collection/sequence.lux +++ b/stdlib/source/library/lux/data/collection/sequence.lux @@ -34,21 +34,21 @@ ["n" nat] ["[0]" i64]]]]]) -(type: (Node a) +(type (Node a) (Variant {#Base (Array a)} {#Hierarchy (Array (Node a))})) -(type: (Base a) +(type (Base a) (Array a)) -(type: (Hierarchy a) +(type (Hierarchy a) (Array (Node a))) -(type: Level +(type Level Nat) -(type: Index +(type Index Nat) (def branching_exponent @@ -190,7 +190,7 @@ (list#composite (node#list sub) acc)) {.#End})))) -(type: .public (Sequence a) +(type .public (Sequence a) (Record [#level Level #size Nat diff --git a/stdlib/source/library/lux/data/collection/set.lux b/stdlib/source/library/lux/data/collection/set.lux index b669331f2..f78afec97 100644 --- a/stdlib/source/library/lux/data/collection/set.lux +++ b/stdlib/source/library/lux/data/collection/set.lux @@ -17,7 +17,7 @@ ["[0]" // ["[1]" dictionary (.only Dictionary)]]) -(type: .public (Set a) +(type .public (Set a) (Dictionary a Any)) (def .public member_hash diff --git a/stdlib/source/library/lux/data/collection/stream.lux b/stdlib/source/library/lux/data/collection/stream.lux index ab3a72eb1..42523d5e3 100644 --- a/stdlib/source/library/lux/data/collection/stream.lux +++ b/stdlib/source/library/lux/data/collection/stream.lux @@ -19,7 +19,7 @@ [number ["n" nat]]]]]) -(type: .public (Stream a) +(type .public (Stream a) (Cont [a (Stream a)])) (def .public (iterations step init) diff --git a/stdlib/source/library/lux/data/collection/tree.lux b/stdlib/source/library/lux/data/collection/tree.lux index d96d31371..f05521c70 100644 --- a/stdlib/source/library/lux/data/collection/tree.lux +++ b/stdlib/source/library/lux/data/collection/tree.lux @@ -16,7 +16,7 @@ [syntax (.only syntax)] ["[0]" code]]]]) -(type: .public (Tree a) +(type .public (Tree a) (Record [#value a #children (List (Tree a))])) @@ -39,7 +39,7 @@ [#value value #children children]) -(type: Tree_Code +(type Tree_Code (Rec Tree_Code [Code (List Tree_Code)])) diff --git a/stdlib/source/library/lux/data/collection/tree/finger.lux b/stdlib/source/library/lux/data/collection/tree/finger.lux index 0b890f766..7d981c667 100644 --- a/stdlib/source/library/lux/data/collection/tree/finger.lux +++ b/stdlib/source/library/lux/data/collection/tree/finger.lux @@ -18,7 +18,7 @@ #root (Either v [(Tree @ t v) (Tree @ t v)])]) - (type: .public (Builder @ t) + (type .public (Builder @ t) (Interface (is (All (_ v) (-> t v (Tree @ t v))) diff --git a/stdlib/source/library/lux/data/collection/tree/zipper.lux b/stdlib/source/library/lux/data/collection/tree/zipper.lux index b2ef4f056..2ddc54d22 100644 --- a/stdlib/source/library/lux/data/collection/tree/zipper.lux +++ b/stdlib/source/library/lux/data/collection/tree/zipper.lux @@ -17,14 +17,14 @@ ["[0]" list (.use "[1]#[0]" functor monoid)]]]]] ["[0]" // (.only Tree) (.use "[1]#[0]" functor)]) -(type: (Family Zipper a) +(type (Family Zipper a) (Record [#parent (Zipper a) #lefts (List (Tree a)) #rights (List (Tree a))])) ... https://en.wikipedia.org/wiki/Zipper_(data_structure) -(type: .public (Zipper a) +(type .public (Zipper a) (Record [#family (Maybe (Family Zipper a)) #node (Tree a)])) diff --git a/stdlib/source/library/lux/data/color.lux b/stdlib/source/library/lux/data/color.lux index 06a488328..de3ee1d99 100644 --- a/stdlib/source/library/lux/data/color.lux +++ b/stdlib/source/library/lux/data/color.lux @@ -32,23 +32,23 @@ (-> Frac Nat) (|>> (f.* rgb_factor) f.int .nat)) -(type: .public RGB +(type .public RGB (Record [#red Nat #green Nat #blue Nat])) -(type: .public HSL +(type .public HSL [Frac Frac Frac]) -(type: .public CMYK +(type .public CMYK (Record [#cyan Frac #magenta Frac #yellow Frac #key Frac])) -(type: .public HSB +(type .public HSB [Frac Frac Frac]) (primitive .public Color @@ -382,10 +382,10 @@ [tetradic (|> +2.0 (f./ +12.0)) (|> +6.0 (f./ +12.0)) (|> +8.0 (f./ +12.0))] ) -(type: .public Spread +(type .public Spread Frac) -(type: .public Palette +(type .public Palette (-> Spread Nat Color (List Color))) (`` (def .public (analogous spread variations color) @@ -410,7 +410,7 @@ [hue saturation] of_hsb)))))) -(type: .public Alpha +(type .public Alpha Rev) (def .public transparent @@ -425,7 +425,7 @@ Alpha rev#top) -(type: .public Pigment +(type .public Pigment (Record [#color Color #alpha Alpha])) diff --git a/stdlib/source/library/lux/data/format/css.lux b/stdlib/source/library/lux/data/format/css.lux index e0564ae8d..30e9c4153 100644 --- a/stdlib/source/library/lux/data/format/css.lux +++ b/stdlib/source/library/lux/data/format/css.lux @@ -38,7 +38,7 @@ (CSS Any) (abstraction "")) - (type: .public Style + (type .public Style (List (Ex (_ brand) [(Property brand) (Value brand)]))) (def .public (rule selector style) @@ -89,7 +89,7 @@ (def separator text.new_line) - (type: .public Frame + (type .public Frame (Record [#when (Value Percentage) #what Style])) diff --git a/stdlib/source/library/lux/data/format/css/font.lux b/stdlib/source/library/lux/data/format/css/font.lux index caba8fee8..37d63c8c7 100644 --- a/stdlib/source/library/lux/data/format/css/font.lux +++ b/stdlib/source/library/lux/data/format/css/font.lux @@ -11,12 +11,12 @@ ["[0]" // ["[1][0]" value (.only Value Font_Stretch Font_Style Font_Weight)]]) -(type: .public Unicode_Range +(type .public Unicode_Range (Record [#start Nat #end Nat])) -(type: .public Font +(type .public Font (Record [#family Text #source URL diff --git a/stdlib/source/library/lux/data/format/css/selector.lux b/stdlib/source/library/lux/data/format/css/selector.lux index 787dbd21f..5993f5c89 100644 --- a/stdlib/source/library/lux/data/format/css/selector.lux +++ b/stdlib/source/library/lux/data/format/css/selector.lux @@ -16,16 +16,16 @@ ["[1][0]" id (.only ID)] ["[1][0]" class (.only Class)]]) -(type: .public Label Text) +(type .public Label Text) -(type: .public Tag Label) -(type: .public Attribute Label) +(type .public Tag Label) +(type .public Attribute Label) (primitive .public (Generic brand) Any) (with_template [ ] [(primitive Any) - (type: .public (Generic ))] + (type .public (Generic ))] [Can_Chain Can_Chain'] [Cannot_Chain Cannot_Chain'] @@ -83,10 +83,10 @@ ["~" later]]] ) - (type: .public (Specializer kind) + (type .public (Specializer kind) (-> (Selector kind) (Selector (Generic Any)) (Selector Composite))) - (type: .public Combinator + (type .public Combinator (-> (Selector Any) (Selector Any) (Selector Composite))) (def .public (with? attribute) @@ -181,7 +181,7 @@ [even "even"] ) - (type: .public Formula + (type .public Formula (Record [#constant Int #variable Int])) diff --git a/stdlib/source/library/lux/data/format/css/value.lux b/stdlib/source/library/lux/data/format/css/value.lux index 5fb2cfb53..ac6af642c 100644 --- a/stdlib/source/library/lux/data/format/css/value.lux +++ b/stdlib/source/library/lux/data/format/css/value.lux @@ -77,7 +77,7 @@ (with_template [] [(with_expansions [' (template.symbol [ "'"])] (primitive .public ' Any) - (type: .public + (type .public (Numeric ')))] [Number] @@ -925,7 +925,7 @@ {.#Some hint} (format (representation Hint hint) ..value_separator (representation Stop stop)))))) - (type: .public (List/1 a) + (type .public (List/1 a) [a (List a)]) (primitive .public Angle @@ -1106,7 +1106,7 @@ (text.interposed " ") abstraction))) - (type: .public Rectangle + (type .public Rectangle (Record [#top (Value Length) #right (Value Length) diff --git a/stdlib/source/library/lux/data/format/html.lux b/stdlib/source/library/lux/data/format/html.lux index 87f56a8cd..f27ec9173 100644 --- a/stdlib/source/library/lux/data/format/html.lux +++ b/stdlib/source/library/lux/data/format/html.lux @@ -24,18 +24,18 @@ ["[0]" selector] ["[0]" style (.only Style)]]]) -(type: .public Tag selector.Tag) -(type: .public ID selector.ID) -(type: .public Class selector.Class) +(type .public Tag selector.Tag) +(type .public ID selector.ID) +(type .public Class selector.Class) ... Attributes for an HTML tag. -(type: .public Attributes +(type .public Attributes (List [Text Text])) -(type: .public Script +(type .public Script js.Statement) -(type: .public Target +(type .public Target (Variant {#Blank} {#Parent} @@ -84,7 +84,7 @@ (.with_template [ ] [(primitive Any) - (type: .public (HTML ))] + (type .public (HTML ))] [Meta Meta'] [Head Head'] @@ -102,11 +102,11 @@ (.with_template [ +] [(primitive ( brand) Any) - (type: .public (HTML ( Any))) + (type .public (HTML ( Any))) (`` (.with_template [ ] [(primitive Any) - (type: .public (HTML ( )))] + (type .public (HTML ( )))] (~~ (template.spliced +))))] @@ -222,7 +222,7 @@ (at xml.codec encoded) (..raw "svg" attributes))) - (type: .public Coord + (type .public Coord (Record [#horizontal Nat #vertical Nat])) @@ -234,17 +234,17 @@ (Format Coord) (format (%.nat horizontal) ..metric_separator (%.nat vertical))) - (type: .public Rectangle + (type .public Rectangle (Record [#start Coord #end Coord])) - (type: .public Circle + (type .public Circle (Record [#center Coord #radius Nat])) - (type: .public Polygon + (type .public Polygon (Record [#first Coord #second Coord @@ -265,7 +265,7 @@ (list#each %coord) (text.interposed ..coord_separator))) - (type: .public Shape + (type .public Shape (Variant {#Rectangle Rectangle} {#Circle Circle} @@ -372,7 +372,7 @@ [iframe "iframe" Element] ) - (type: .public Phrase + (type .public Phrase (-> Attributes Content Element)) (.with_template [ ] @@ -429,7 +429,7 @@ content (ruby_pronunciation pronunciation)))) - (type: .public Composite + (type .public Composite (-> Attributes Element Element)) (.with_template [ ] diff --git a/stdlib/source/library/lux/data/format/json.lux b/stdlib/source/library/lux/data/format/json.lux index 52afae21d..845a4e057 100644 --- a/stdlib/source/library/lux/data/format/json.lux +++ b/stdlib/source/library/lux/data/format/json.lux @@ -32,7 +32,7 @@ ["f" frac (.use "[1]#[0]" decimal)]]]]]) (with_template [ ] - [(type: .public + [(type .public )] [Null Any] @@ -41,7 +41,7 @@ [String Text] ) -(type: .public JSON +(type .public JSON (Rec JSON (Variant {#Null Null} @@ -52,7 +52,7 @@ {#Object (Dictionary String JSON)}))) (with_template [ ] - [(type: .public + [(type .public )] [Array (Sequence JSON)] @@ -68,7 +68,7 @@ (-> (List [String JSON]) JSON) (|>> (dictionary.of_list text.hash) {..#Object})) -(type: JSON' +(type JSON' (Rec JSON' (Variant {#Null' Null} diff --git a/stdlib/source/library/lux/data/format/markdown.lux b/stdlib/source/library/lux/data/format/markdown.lux index 7833443d8..21843dd90 100644 --- a/stdlib/source/library/lux/data/format/markdown.lux +++ b/stdlib/source/library/lux/data/format/markdown.lux @@ -173,7 +173,7 @@ (-> (Markdown Span) URL (Markdown Span)) (abstraction (format "[" (representation description) "](" url ")"))) - (type: .public Email + (type .public Email Text) (with_template [ ] diff --git a/stdlib/source/library/lux/data/format/tar.lux b/stdlib/source/library/lux/data/format/tar.lux index ac6644919..628e1fde8 100644 --- a/stdlib/source/library/lux/data/format/tar.lux +++ b/stdlib/source/library/lux/data/format/tar.lux @@ -38,7 +38,7 @@ [type [primitive (.except)]]]]) -(type: Size +(type Size Nat) (def octal_size @@ -547,46 +547,46 @@ (|>> representation product.right)) ) -(type: .public ID +(type .public ID Small) (def .public no_id ID (..as_small 0)) -(type: .public Owner +(type .public Owner (Record [#name Name #id ID])) -(type: .public Ownership +(type .public Ownership (Record [#user Owner #group Owner])) -(type: .public File +(type .public File [Path Instant Mode Ownership Content]) -(type: .public Normal File) -(type: .public Symbolic_Link Path) -(type: .public Directory Path) -(type: .public Contiguous File) +(type .public Normal File) +(type .public Symbolic_Link Path) +(type .public Directory Path) +(type .public Contiguous File) -(type: .public Entry +(type .public Entry (Variant {#Normal ..Normal} {#Symbolic_Link ..Symbolic_Link} {#Directory ..Directory} {#Contiguous ..Contiguous})) -(type: Device +(type Device Small) (def no_device Device (try.trusted (..small 0))) -(type: .public Tar +(type .public Tar (Sequence Entry)) (def (blocks size) @@ -602,7 +602,7 @@ (|>> ..blocks (n.* ..block_size))) -(type: Header +(type Header (Record [#path Path #mode Mode diff --git a/stdlib/source/library/lux/data/format/xml.lux b/stdlib/source/library/lux/data/format/xml.lux index 2ca45753c..2f1c9b910 100644 --- a/stdlib/source/library/lux/data/format/xml.lux +++ b/stdlib/source/library/lux/data/format/xml.lux @@ -22,20 +22,20 @@ [meta ["[0]" symbol (.use "[1]#[0]" equivalence codec)]]]]) -(type: .public Tag +(type .public Tag Symbol) -(type: .public Attribute +(type .public Attribute Symbol) -(type: .public Attrs +(type .public Attrs (Dictionary Attribute Text)) (def .public attributes Attrs (dictionary.empty symbol.hash)) -(type: .public XML +(type .public XML (Rec XML (Variant {#Text Text} diff --git a/stdlib/source/library/lux/data/identity.lux b/stdlib/source/library/lux/data/identity.lux index 7b6c754ea..253814a3f 100644 --- a/stdlib/source/library/lux/data/identity.lux +++ b/stdlib/source/library/lux/data/identity.lux @@ -9,7 +9,7 @@ [control ["[0]" function]]]]) -(type: .public (Identity a) +(type .public (Identity a) a) (def .public functor diff --git a/stdlib/source/library/lux/data/store.lux b/stdlib/source/library/lux/data/store.lux index 16aa25395..8f09fd0df 100644 --- a/stdlib/source/library/lux/data/store.lux +++ b/stdlib/source/library/lux/data/store.lux @@ -7,7 +7,7 @@ [type implicit]]]) -(type: .public (Store s a) +(type .public (Store s a) (Record [#cursor s #peek (-> s a)])) diff --git a/stdlib/source/library/lux/data/text.lux b/stdlib/source/library/lux/data/text.lux index 49b905eac..7bf3cd997 100644 --- a/stdlib/source/library/lux/data/text.lux +++ b/stdlib/source/library/lux/data/text.lux @@ -21,7 +21,7 @@ ["n" nat] ["[0]" i64]]]]]) -(type: .public Char +(type .public Char Nat) ... TODO: Instead of ints, chars should be produced fron nats. diff --git a/stdlib/source/library/lux/data/text/regex.lux b/stdlib/source/library/lux/data/text/regex.lux index 017e29493..7f3846e1e 100644 --- a/stdlib/source/library/lux/data/text/regex.lux +++ b/stdlib/source/library/lux/data/text/regex.lux @@ -272,7 +272,7 @@ (re_quantified^ current_module) (re_simple^ current_module))) -(type: Re_Group +(type Re_Group (Variant {#Non_Capturing} {#Capturing [(Maybe Text) Nat]})) diff --git a/stdlib/source/library/lux/data/trace.lux b/stdlib/source/library/lux/data/trace.lux index a4a778c56..e7032aef1 100644 --- a/stdlib/source/library/lux/data/trace.lux +++ b/stdlib/source/library/lux/data/trace.lux @@ -7,7 +7,7 @@ comonad] function]]) -(type: .public (Trace t a) +(type .public (Trace t a) (Record [#monoid (Monoid t) #trace (-> t a)])) diff --git a/stdlib/source/library/lux/debug.lux b/stdlib/source/library/lux/debug.lux index 885208a95..0351ca9d0 100644 --- a/stdlib/source/library/lux/debug.lux +++ b/stdlib/source/library/lux/debug.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except type private) + [lux (.except private) ["@" target] ["[0]" type] ["[0]" ffi (.only import)] @@ -80,7 +80,7 @@ ("static" isArray [.Any] ffi.Boolean))) @.python - (these (type: PyType + (these (type PyType (Primitive "python_type")) (import (type [.Any] PyType)) @@ -120,7 +120,7 @@ )) (def Inspector - (.type (Format Any))) + (.type_literal (Format Any))) (for @.lua (def (tuple_array tuple) (-> (array.Array Any) (array.Array Any)) @@ -384,7 +384,7 @@ (exception.report "Type" (%.type type))) -(type: Representation +(type Representation (-> Any Text)) (def primitive_representation @@ -546,7 +546,7 @@ expectedT meta.expected_type] (function.constant (exception.except ..type_hole [location expectedT]))))) -(type: Target +(type Target [Text (Maybe Code)]) (def target diff --git a/stdlib/source/library/lux/documentation.lux b/stdlib/source/library/lux/documentation.lux index 6988ec0c3..bc67d8eb8 100644 --- a/stdlib/source/library/lux/documentation.lux +++ b/stdlib/source/library/lux/documentation.lux @@ -39,7 +39,7 @@ (template (_) [{.#Primitive "" {.#End}}])) -(type: Fragment +(.type Fragment (Variant {#Comment Text} {#Code Code})) @@ -475,7 +475,7 @@ c_16 \n c_16 blank_line)))) -(type: Example +(.type Example (List Fragment)) (def example @@ -490,7 +490,7 @@ (text.interposed "") code.text)) -(type: Declaration +(.type Declaration [Symbol (List Text)]) (def declaration @@ -569,12 +569,12 @@ (list.interposed ..example_separator)))))))))) )))))) -(type: .public Definition +(.type .public Definition (Record [#definition Text #documentation (Markdown Block)])) -(type: .public Module +(.type .public Module (Record [#module Text #description Text diff --git a/stdlib/source/library/lux/extension.lux b/stdlib/source/library/lux/extension.lux index aaffcd362..3d1b684f6 100644 --- a/stdlib/source/library/lux/extension.lux +++ b/stdlib/source/library/lux/extension.lux @@ -23,7 +23,7 @@ [synthesis ["" \\parser]]]]]]]]) -(type: Declaration +(type Declaration (Record [#name Code #label Text diff --git a/stdlib/source/library/lux/ffi.jvm.lux b/stdlib/source/library/lux/ffi.jvm.lux index 670f7b3a1..a460fbc5e 100644 --- a/stdlib/source/library/lux/ffi.jvm.lux +++ b/stdlib/source/library/lux/ffi.jvm.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Primitive Type type int char is as) + [lux (.except Primitive Type int char is as type) ["[0]" meta (.use "[1]#[0]" monad)] [abstract ["[0]" monad (.only do)]] @@ -180,68 +180,68 @@ (def constructor_method_name "") -(type: Primitive_Mode +(.type Primitive_Mode (Variant {#ManualPrM} {#AutoPrM})) -(type: .public Privacy +(.type .public Privacy (Variant {#PublicP} {#PrivateP} {#ProtectedP} {#DefaultP})) -(type: .public State +(.type .public State (Variant {#VolatileS} {#FinalS} {#DefaultS})) -(type: .public Inheritance +(.type .public Inheritance (Variant {#FinalI} {#AbstractI} {#DefaultI})) -(type: Class_Kind +(.type Class_Kind (Variant {#Class} {#Interface})) -(type: StackFrame +(.type StackFrame (.Primitive "java/lang/StackTraceElement")) -(type: StackTrace +(.type StackTrace (array.Array StackFrame)) -(type: Annotation_Parameter +(.type Annotation_Parameter [Text Code]) -(type: Annotation +(.type Annotation (Record [#ann_name Text #ann_params (List Annotation_Parameter)])) -(type: Member_Declaration +(.type Member_Declaration (Record [#member_name Text #member_privacy Privacy #member_anns (List Annotation)])) -(type: FieldDecl +(.type FieldDecl (Variant {#ConstantField (Type Value) Code} {#VariableField [State Bit (Type Value)]})) -(type: MethodDecl +(.type MethodDecl (Record [#method_tvars (List (Type Var)) #method_inputs (List (Type Value)) #method_output (Type Return) #method_exs (List (Type Class))])) -(type: Method_Definition +(.type Method_Definition (Variant {#ConstructorMethod [Bit (List (Type Var)) @@ -281,17 +281,17 @@ (Type Return) (List (Type Class))]})) -(type: Partial_Call +(.type Partial_Call (Record [#pc_method Symbol #pc_args (List Code)])) -(type: ImportMethodKind +(.type ImportMethodKind (Variant {#StaticIMK} {#VirtualIMK})) -(type: ImportMethodCommons +(.type ImportMethodCommons (Record [#import_member_mode Primitive_Mode #import_member_alias Text @@ -302,16 +302,16 @@ #import_member_try? Bit #import_member_io? Bit])) -(type: ImportConstructorDecl +(.type ImportConstructorDecl (Record [])) -(type: ImportMethodDecl +(.type ImportMethodDecl (Record [#import_method_name Text #import_method_return (Type Return)])) -(type: ImportFieldDecl +(.type ImportFieldDecl (Record [#import_field_mode Primitive_Mode #import_field_name Text @@ -320,7 +320,7 @@ #import_field_setter? Bit #import_field_type (Type Value)])) -(type: Import_Member_Declaration +(.type Import_Member_Declaration (Variant {#EnumDecl (List Text)} {#ConstructorDecl [ImportMethodCommons ImportConstructorDecl]} diff --git a/stdlib/source/library/lux/ffi.lux b/stdlib/source/library/lux/ffi.lux index 480582285..097f91e77 100644 --- a/stdlib/source/library/lux/ffi.lux +++ b/stdlib/source/library/lux/ffi.lux @@ -69,7 +69,7 @@ (primitive Any - (type: .public + (type .public (Object ))))] [Function] @@ -85,7 +85,7 @@ [Float Frac])) ] (with_template [ ] - [(type: .public + [(type .public )] [Boolean Bit] @@ -93,14 +93,14 @@ )) - (type: Alias + (type Alias (Maybe Text)) (def alias (Parser Alias) (<>.maybe (<>.after (.this (' "as")) .local))) - (type: Optional + (type Optional (Record [#optional? Bit #mandatory Code])) @@ -112,7 +112,7 @@ (<>.after (<>.not (.this_text token))) .any))) - (type: (Named a) + (type (Named a) (Record [#name Text #alias Alias @@ -130,14 +130,14 @@ [anonymous (<>#in "")] ) - (type: Output + (type Output Optional) (def output (Parser Output) ..optional) - (type: Global + (type Global (Named Output)) (def variables @@ -153,7 +153,7 @@ it it] (in ($ variables it)))) - (type: Input + (type Input (Record [#variables (List Text) #parameters (List Optional) @@ -168,7 +168,7 @@ (<>.parses? (.this_text "io")) (<>.parses? (.this_text "try")))) - (type: Constructor + (type Constructor (Named Input)) (def constructor @@ -178,7 +178,7 @@ (<>.after (.this (' new))) (..anonymous ..input))) - (type: (Member a) + (type (Member a) (Record [#static? Bit #member a])) @@ -198,7 +198,7 @@ #member]) it))) - (type: Field + (type Field (Member (Named Output))) (def field @@ -208,7 +208,7 @@ ..named ..output)) - (type: Procedure + (type Procedure (Record [#input Input #output Optional])) @@ -222,7 +222,7 @@ ..optional ))) - (type: Method + (type Method (Member (Named Procedure))) (def method @@ -231,7 +231,7 @@ ..member ..procedure)) - (`` (`` (type: Sub + (`` (`` (type Sub (Variant (~~ (for @.lua (~~ (these)) @.ruby (~~ (these)) @@ -306,13 +306,13 @@ nil? "ruby object nil?"])) )) - (type: Declaration + (type Declaration [Text (List Text)]) - (type: Namespace + (type Namespace Text) - (type: Class + (type Class (Record [#declaration Declaration #class_alias Alias @@ -330,7 +330,7 @@ .text (<>.some ..sub))) - (type: Import + (type Import (Variant {#Class Class} {#Procedure (Named Procedure)} @@ -587,7 +587,7 @@ g!class_variables (list#each code.local class_parameters) declaration (` ((~ (code.local (maybe.else class_name alias))) (~+ g!class_variables)))] - (in (list.partial (` (.type: (~ declaration) + (in (list.partial (` (.type (~ declaration) (..Object (.Primitive (~ (code.text (..host_path class_name))) [(~+ g!class_variables)])))) (list#each (.function (_ member) diff --git a/stdlib/source/library/lux/ffi.old.lux b/stdlib/source/library/lux/ffi.old.lux index cc5e342b1..a577a3b6d 100644 --- a/stdlib/source/library/lux/ffi.old.lux +++ b/stdlib/source/library/lux/ffi.old.lux @@ -98,15 +98,15 @@ (def member_separator "::") ... Types -(type: JVM_Code +(.type JVM_Code Text) -(type: BoundKind +(.type BoundKind (Variant {#UpperBound} {#LowerBound})) -(type: GenericType +(.type GenericType (Rec GenericType (Variant {#GenericTypeVar Text} @@ -114,89 +114,89 @@ {#GenericArray GenericType} {#GenericWildcard (Maybe [BoundKind GenericType])}))) -(type: Type_Parameter +(.type Type_Parameter [Text (List GenericType)]) -(type: Primitive_Mode +(.type Primitive_Mode (Variant {#ManualPrM} {#AutoPrM})) -(type: .public Privacy +(.type .public Privacy (Variant {#PublicP} {#PrivateP} {#ProtectedP} {#DefaultP})) -(type: .public State +(.type .public State (Variant {#VolatileS} {#FinalS} {#DefaultS})) -(type: .public Inheritance +(.type .public Inheritance (Variant {#FinalI} {#AbstractI} {#DefaultI})) -(type: Class_Kind +(.type Class_Kind (Variant {#Class} {#Interface})) -(type: Class_Declaration +(.type Class_Declaration (Record [#class_name Text #class_params (List Type_Parameter)])) -(type: StackFrame +(.type StackFrame (Primitive "java/lang/StackTraceElement")) -(type: StackTrace +(.type StackTrace (Array StackFrame)) -(type: Super_Class_Decl +(.type Super_Class_Decl (Record [#super_class_name Text #super_class_params (List GenericType)])) -(type: AnnotationParam +(.type AnnotationParam [Text Code]) -(type: Annotation +(.type Annotation (Record [#ann_name Text #ann_params (List AnnotationParam)])) -(type: Member_Declaration +(.type Member_Declaration (Record [#member_name Text #member_privacy Privacy #member_anns (List Annotation)])) -(type: FieldDecl +(.type FieldDecl (Variant {#ConstantField GenericType Code} {#VariableField State GenericType})) -(type: MethodDecl +(.type MethodDecl (Record [#method_tvars (List Type_Parameter) #method_inputs (List GenericType) #method_output GenericType #method_exs (List GenericType)])) -(type: ArgDecl +(.type ArgDecl (Record [#arg_name Text #arg_type GenericType])) -(type: ConstructorArg +(.type ConstructorArg [GenericType Code]) -(type: Method_Definition +(.type Method_Definition (Variant {#ConstructorMethod [Bit (List Type_Parameter) @@ -235,17 +235,17 @@ GenericType (List GenericType)]})) -(type: Partial_Call +(.type Partial_Call (Record [#pc_method Symbol #pc_args (List Code)])) -(type: ImportMethodKind +(.type ImportMethodKind (Variant {#StaticIMK} {#VirtualIMK})) -(type: ImportMethodCommons +(.type ImportMethodCommons (Record [#import_member_mode Primitive_Mode #import_member_alias Text @@ -256,16 +256,16 @@ #import_member_try? Bit #import_member_io? Bit])) -(type: ImportConstructorDecl +(.type ImportConstructorDecl (Record [])) -(type: ImportMethodDecl +(.type ImportMethodDecl (Record [#import_method_name Text #import_method_return GenericType])) -(type: ImportFieldDecl +(.type ImportFieldDecl (Record [#import_field_mode Primitive_Mode #import_field_name Text @@ -274,7 +274,7 @@ #import_field_setter? Bit #import_field_type GenericType])) -(type: Import_Member_Declaration +(.type Import_Member_Declaration (Variant {#EnumDecl (List Text)} {#ConstructorDecl [ImportMethodCommons ImportConstructorDecl]} @@ -1604,7 +1604,7 @@ [=args (member_def_arg_bindings type_params class member)] (member_def_interop type_params kind class =args member method_prefix import_format)))) -(type: (java/lang/Class a) +(.type (java/lang/Class a) (Primitive "java.lang.Class" [a])) (def interface? diff --git a/stdlib/source/library/lux/ffi.php.lux b/stdlib/source/library/lux/ffi.php.lux index 7993d5875..00b35e83d 100644 --- a/stdlib/source/library/lux/ffi.php.lux +++ b/stdlib/source/library/lux/ffi.php.lux @@ -28,7 +28,7 @@ (with_template [] [(with_expansions [ (template.symbol [ "'"])] (primitive .public Any) - (type: .public + (type .public (..Object )))] [Null] @@ -36,7 +36,7 @@ ) (with_template [ ] - [(type: .public + [(type .public )] [Boolean Bit] @@ -45,7 +45,7 @@ [String Text] ) -(type: Nullable +(type Nullable [Bit Code]) (def nullable @@ -55,14 +55,14 @@ (<>.after (<>.not (.this token))) .any))) -(type: Alias +(type Alias Text) (def alias (Parser Alias) (<>.after (.this (' "as")) .local)) -(type: Field +(type Field [Bit Text (Maybe Alias) Nullable]) (def static! @@ -85,7 +85,7 @@ (<>.maybe ..alias) ..nullable))) -(type: Common_Method +(type Common_Method (Record [#name Text #alias (Maybe Alias) @@ -94,10 +94,10 @@ #try? Bit #output Nullable])) -(type: Static_Method Common_Method) -(type: Virtual_Method Common_Method) +(type Static_Method Common_Method) +(type Virtual_Method Common_Method) -(type: Method +(type Method (Variant {#Static Static_Method} {#Virtual Virtual_Method})) @@ -120,7 +120,7 @@ (.form (<>.or ..static_method ..common_method))) -(type: Member +(type Member (Variant {#Field Field} {#Method Method})) @@ -167,7 +167,7 @@ (~ g!temp) (.panic! "Null is an invalid value!")))))) -(type: Import +(type Import (Variant {#Class Text (Maybe Alias) Text (List Member)} {#Function Static_Method} @@ -251,7 +251,7 @@ code.local))) g!type (code.local (maybe.else class alias)) class_import (` ("php constant" (~ (code.text class))))] - (in (list.partial (` (type: (~ g!type) + (in (list.partial (` (type (~ g!type) (..Object (Primitive (~ (code.text class)))))) (list#each (function (_ member) (case member diff --git a/stdlib/source/library/lux/ffi.scm.lux b/stdlib/source/library/lux/ffi.scm.lux index df00ad166..49296eef7 100644 --- a/stdlib/source/library/lux/ffi.scm.lux +++ b/stdlib/source/library/lux/ffi.scm.lux @@ -28,7 +28,7 @@ (with_template [] [(with_expansions [ (template.symbol [ "'"])] (primitive .public Any) - (type: .public + (type .public (..Object )))] [Nil] @@ -36,7 +36,7 @@ ) (with_template [ ] - [(type: .public + [(type .public )] [Boolean Bit] @@ -45,7 +45,7 @@ [String Text] ) -(type: Nilable +(type Nilable [Bit Code]) (def nilable @@ -55,14 +55,14 @@ (<>.after (<>.not (.this token))) .any))) -(type: Alias +(type Alias Text) (def alias (Parser Alias) (<>.after (.this (' "as")) .local)) -(type: Field +(type Field [Bit Text (Maybe Alias) Nilable]) (def static! @@ -85,7 +85,7 @@ (<>.maybe ..alias) ..nilable))) -(type: Common_Method +(type Common_Method (Record [#name Text #alias (Maybe Alias) @@ -139,7 +139,7 @@ (~ g!temp) (.panic! "Nil is an invalid value!")))))) -(type: Import +(type Import (Variant {#Function Common_Method} {#Constant Field})) diff --git a/stdlib/source/library/lux/ffi/export.jvm.lux b/stdlib/source/library/lux/ffi/export.jvm.lux index 970ae5481..8d3cc0ea1 100644 --- a/stdlib/source/library/lux/ffi/export.jvm.lux +++ b/stdlib/source/library/lux/ffi/export.jvm.lux @@ -12,7 +12,7 @@ ["[0]" code]]]] ["[0]" //]) -(type: (API of) +(type (API of) (Record [#interface of #type Code @@ -27,14 +27,14 @@ .any ))) -(type: Constant +(type Constant Text) (def constant (Parser Constant) .local) -(type: Function +(type Function (Record [#variables (List Text) #name Text @@ -52,7 +52,7 @@ ))) ))) -(type: Export +(type Export (Variant {#Constant (API Constant)} {#Function (API Function)})) diff --git a/stdlib/source/library/lux/ffi/export.rb.lux b/stdlib/source/library/lux/ffi/export.rb.lux index 3c867d4cb..1266c730c 100644 --- a/stdlib/source/library/lux/ffi/export.rb.lux +++ b/stdlib/source/library/lux/ffi/export.rb.lux @@ -63,7 +63,7 @@ [constant ..upper!] ) -(type: Name +(type Name (Variant {#Method Text} {#Global Text})) diff --git a/stdlib/source/library/lux/macro/code.lux b/stdlib/source/library/lux/macro/code.lux index 23e873e87..dc182b124 100644 --- a/stdlib/source/library/lux/macro/code.lux +++ b/stdlib/source/library/lux/macro/code.lux @@ -21,7 +21,7 @@ ["[0]" location] ["[0]" symbol]]]]) -... (type: (Code' w) +... (type (Code' w) ... {.#Bit Bit} ... {.#Nat Nat} ... {.#Int Int} @@ -33,7 +33,7 @@ ... {.#Variant (List (w (Code' w)))} ... {.#Tuple (List (w (Code' w)))}) -... (type: Code +... (type Code ... (Ann Location (Code' (Ann Location)))) (with_template [ ] diff --git a/stdlib/source/library/lux/macro/context.lux b/stdlib/source/library/lux/macro/context.lux index 4fe898ee4..ae958a606 100644 --- a/stdlib/source/library/lux/macro/context.lux +++ b/stdlib/source/library/lux/macro/context.lux @@ -22,7 +22,7 @@ ["^" pattern] ["[0]" code]]) -(type: .public Stack +(type .public Stack List) (exception: .public (no_definition [it Symbol]) diff --git a/stdlib/source/library/lux/macro/syntax/check.lux b/stdlib/source/library/lux/macro/syntax/check.lux index 4e6d62b18..c1ae94377 100644 --- a/stdlib/source/library/lux/macro/syntax/check.lux +++ b/stdlib/source/library/lux/macro/syntax/check.lux @@ -17,7 +17,7 @@ (def extension "lux check") -(type: .public Check +(type .public Check (Record [#type Code #value Code])) diff --git a/stdlib/source/library/lux/macro/syntax/declaration.lux b/stdlib/source/library/lux/macro/syntax/declaration.lux index 070c1d9c9..c4cac1e99 100644 --- a/stdlib/source/library/lux/macro/syntax/declaration.lux +++ b/stdlib/source/library/lux/macro/syntax/declaration.lux @@ -14,7 +14,7 @@ [macro ["[0]" code]]]]) -(type: .public Declaration +(type .public Declaration (Record [#name Text #arguments (List Text)])) diff --git a/stdlib/source/library/lux/macro/syntax/definition.lux b/stdlib/source/library/lux/macro/syntax/definition.lux index 030d1bc76..b0aa68194 100644 --- a/stdlib/source/library/lux/macro/syntax/definition.lux +++ b/stdlib/source/library/lux/macro/syntax/definition.lux @@ -23,7 +23,7 @@ ["[0]" // (.only) ["[1][0]" check (.only Check)]]) -(type: .public Definition +(type .public Definition (Record [#name Text #value (Either Check diff --git a/stdlib/source/library/lux/macro/syntax/input.lux b/stdlib/source/library/lux/macro/syntax/input.lux index f7708aadf..b0022bc25 100644 --- a/stdlib/source/library/lux/macro/syntax/input.lux +++ b/stdlib/source/library/lux/macro/syntax/input.lux @@ -13,7 +13,7 @@ [macro ["[0]" code]]]]) -(type: .public Input +(type .public Input (Record [#binding Code #type Code])) diff --git a/stdlib/source/library/lux/macro/syntax/type/variable.lux b/stdlib/source/library/lux/macro/syntax/type/variable.lux index 284699679..ada8766cb 100644 --- a/stdlib/source/library/lux/macro/syntax/type/variable.lux +++ b/stdlib/source/library/lux/macro/syntax/type/variable.lux @@ -11,7 +11,7 @@ [macro ["[0]" code]]]]) -(type: .public Variable +(type .public Variable Text) (def .public equivalence diff --git a/stdlib/source/library/lux/macro/template.lux b/stdlib/source/library/lux/macro/template.lux index be87a83bb..f1298bd46 100644 --- a/stdlib/source/library/lux/macro/template.lux +++ b/stdlib/source/library/lux/macro/template.lux @@ -98,7 +98,7 @@ [symbol code.local code.symbol] ) -(type: Environment +(type Environment (Dictionary Text Code)) (def (applied env template) @@ -122,7 +122,7 @@ _ template)) -(type: Local +(type Local (Record [#name Text #parameters (List Text) diff --git a/stdlib/source/library/lux/math/infix.lux b/stdlib/source/library/lux/math/infix.lux index e8d5339a3..af6268977 100644 --- a/stdlib/source/library/lux/math/infix.lux +++ b/stdlib/source/library/lux/math/infix.lux @@ -18,7 +18,7 @@ ["n" nat] ["i" int]]]]]) -(type: Infix +(type Infix (Rec Infix (Variant {#Const Code} diff --git a/stdlib/source/library/lux/math/logic/fuzzy.lux b/stdlib/source/library/lux/math/logic/fuzzy.lux index a3295acd7..b6f98a940 100644 --- a/stdlib/source/library/lux/math/logic/fuzzy.lux +++ b/stdlib/source/library/lux/math/logic/fuzzy.lux @@ -16,7 +16,7 @@ ["[0]" // ["[1]" continuous]]) -(type: .public (Fuzzy a) +(type .public (Fuzzy a) (-> a Rev)) (def .public functor diff --git a/stdlib/source/library/lux/math/number/complex.lux b/stdlib/source/library/lux/math/number/complex.lux index 816b0d19e..611d66066 100644 --- a/stdlib/source/library/lux/math/number/complex.lux +++ b/stdlib/source/library/lux/math/number/complex.lux @@ -17,7 +17,7 @@ ["f" frac] ["[0]" int]]]]]) -(type: .public Complex +(type .public Complex (Record [#real Frac #imaginary Frac])) diff --git a/stdlib/source/library/lux/math/number/i16.lux b/stdlib/source/library/lux/math/number/i16.lux index 613bf9b3f..446e5f71b 100644 --- a/stdlib/source/library/lux/math/number/i16.lux +++ b/stdlib/source/library/lux/math/number/i16.lux @@ -17,7 +17,7 @@ ... TODO: Switch to the cleaner approach ASAP. (case (type_of ..sub) {.#Apply :size: :sub:} - (type (I64 :size:)) + (type_literal (I64 :size:)) _ (undefined)) diff --git a/stdlib/source/library/lux/math/number/i32.lux b/stdlib/source/library/lux/math/number/i32.lux index 90bbf7c59..262dc3eb4 100644 --- a/stdlib/source/library/lux/math/number/i32.lux +++ b/stdlib/source/library/lux/math/number/i32.lux @@ -19,7 +19,7 @@ ... TODO: Switch to the cleaner approach ASAP. (case (type_of ..sub) {.#Apply :size: :sub:} - (type (I64 :size:)) + (type_literal (I64 :size:)) _ (undefined)) diff --git a/stdlib/source/library/lux/math/number/i64.lux b/stdlib/source/library/lux/math/number/i64.lux index 24d968f6a..d476bc4ff 100644 --- a/stdlib/source/library/lux/math/number/i64.lux +++ b/stdlib/source/library/lux/math/number/i64.lux @@ -35,7 +35,7 @@ ) ... https://en.wikipedia.org/wiki/Mask_(computing) -(type: .public Mask +(type .public Mask I64) (def .public (bit position) @@ -178,7 +178,7 @@ swap_02 swap_01))) -(type: .public (Sub size) +(type .public (Sub size) (Interface (is (Equivalence (I64 size)) sub_equivalence) diff --git a/stdlib/source/library/lux/math/number/i8.lux b/stdlib/source/library/lux/math/number/i8.lux index 5b77180f7..0ea292821 100644 --- a/stdlib/source/library/lux/math/number/i8.lux +++ b/stdlib/source/library/lux/math/number/i8.lux @@ -17,7 +17,7 @@ ... TODO: Switch to the cleaner approach ASAP. (case (type_of ..sub) {.#Apply :size: :sub:} - (type (I64 :size:)) + (type_literal (I64 :size:)) _ (undefined)) diff --git a/stdlib/source/library/lux/math/number/ratio.lux b/stdlib/source/library/lux/math/number/ratio.lux index a682665b0..2e77616c6 100644 --- a/stdlib/source/library/lux/math/number/ratio.lux +++ b/stdlib/source/library/lux/math/number/ratio.lux @@ -22,7 +22,7 @@ [// ["n" nat (.use "[1]#[0]" decimal)]]) -(type: .public Ratio +(type .public Ratio (Record [#numerator Nat #denominator Nat])) diff --git a/stdlib/source/library/lux/math/number/rev.lux b/stdlib/source/library/lux/math/number/rev.lux index a03b60b2e..03e8e9684 100644 --- a/stdlib/source/library/lux/math/number/rev.lux +++ b/stdlib/source/library/lux/math/number/rev.lux @@ -276,7 +276,7 @@ ... write the encoding/decoding algorithm once, in pure Lux, rather ... than having to implement it on the compiler for every platform ... targeted by Lux. -(type: Digits +(type Digits (Array Nat)) (def (digits _) diff --git a/stdlib/source/library/lux/math/random.lux b/stdlib/source/library/lux/math/random.lux index 66f80ef25..89ae2ef53 100644 --- a/stdlib/source/library/lux/math/random.lux +++ b/stdlib/source/library/lux/math/random.lux @@ -37,11 +37,11 @@ [type [refinement (.only Refiner Refined)]]]]) -(type: .public PRNG +(type .public PRNG (Rec PRNG (-> Any [PRNG I64]))) -(type: .public (Random a) +(type .public (Random a) (-> PRNG [PRNG a])) (def .public functor diff --git a/stdlib/source/library/lux/meta.lux b/stdlib/source/library/lux/meta.lux index cc3aa9036..7d778190c 100644 --- a/stdlib/source/library/lux/meta.lux +++ b/stdlib/source/library/lux/meta.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except type try macro) + [lux (.except try macro type) [abstract [functor (.only Functor)] [apply (.only Apply)] @@ -27,7 +27,7 @@ [/ ["[0]" location]]) -... (type: (Meta a) +... (.type (Meta a) ... (-> Lux (Try [Lux a]))) (def .public functor diff --git a/stdlib/source/library/lux/meta/configuration.lux b/stdlib/source/library/lux/meta/configuration.lux index 5176ba34c..727a48fb7 100644 --- a/stdlib/source/library/lux/meta/configuration.lux +++ b/stdlib/source/library/lux/meta/configuration.lux @@ -25,7 +25,7 @@ [math [number (.only hex)]]]]) -(type: .public Configuration +(type .public Configuration (/.PList Text)) (def .public equivalence diff --git a/stdlib/source/library/lux/meta/symbol.lux b/stdlib/source/library/lux/meta/symbol.lux index 4d393f491..cea58ae51 100644 --- a/stdlib/source/library/lux/meta/symbol.lux +++ b/stdlib/source/library/lux/meta/symbol.lux @@ -10,7 +10,7 @@ ["[0]" text (.use "[1]#[0]" equivalence monoid)] ["[0]" product]]]]) -... (type: Symbol +... (type Symbol ... [Text Text]) (with_template [] diff --git a/stdlib/source/library/lux/program.lux b/stdlib/source/library/lux/program.lux index 77cdb67fd..ca420eb9f 100644 --- a/stdlib/source/library/lux/program.lux +++ b/stdlib/source/library/lux/program.lux @@ -15,7 +15,7 @@ [syntax (.only syntax)] ["[0]" code]]]]) -(type: Arguments +(type Arguments (Variant {#Raw Text} {#Parsed (List Code)})) diff --git a/stdlib/source/library/lux/static.lux b/stdlib/source/library/lux/static.lux index 071452a67..53426b0f8 100644 --- a/stdlib/source/library/lux/static.lux +++ b/stdlib/source/library/lux/static.lux @@ -43,7 +43,7 @@ (syntax (_ [format .any expression .any]) (do meta.monad - [pair (meta.eval (.type ) + [pair (meta.eval (.type_literal ) (` [(~ format) (~ expression)])) .let [[format expression] (as pair)]] (in (list (format expression))))))) @@ -55,7 +55,7 @@ (syntax (_ [format .any expression .any]) (do meta.monad - [pair (meta.eval (.type ) + [pair (meta.eval (.type_literal ) (` [(~ format) (~ expression)])) .let [[format expression] (as pair)]] (in (list#each format expression)))))) @@ -87,7 +87,7 @@ (syntax (_ [format .any random .any]) (do meta.monad - [pair (meta.eval (type ) + [pair (meta.eval (type_literal ) (` [(~ format) (~ random)])) .let [[format random] (as pair)] seed meta.seed @@ -102,7 +102,7 @@ (syntax (_ [format .any random .any]) (do meta.monad - [pair (meta.eval (type ) + [pair (meta.eval (type_literal ) (` [(~ format) (~ random)])) .let [[format random] (as pair)] seed meta.seed diff --git a/stdlib/source/library/lux/target.lux b/stdlib/source/library/lux/target.lux index b3b1b37c9..11094325d 100644 --- a/stdlib/source/library/lux/target.lux +++ b/stdlib/source/library/lux/target.lux @@ -2,7 +2,7 @@ [library [lux (.except)]]) -(type: .public Target +(type .public Target Text) (with_template [ ] @@ -11,7 +11,7 @@ )] ... TODO: Delete ASAP. - [old "{old}"] + [old "{old}"] ... Available. [js "JavaScript"] [jvm "JVM"] diff --git a/stdlib/source/library/lux/target/common_lisp.lux b/stdlib/source/library/lux/target/common_lisp.lux index ec18f3c38..7f93025a2 100644 --- a/stdlib/source/library/lux/target/common_lisp.lux +++ b/stdlib/source/library/lux/target/common_lisp.lux @@ -34,7 +34,7 @@ (with_template [ ] [(with_expansions [ (template.symbol [ "'"])] (`` (primitive .public ( brand) Any)) - (`` (type: .public ( brand) + (`` (type .public ( brand) ( ( brand)))))] [Expression Code] @@ -48,7 +48,7 @@ (with_template [ ] [(with_expansions [ (template.symbol [ "'"])] (`` (primitive .public Any)) - (`` (type: .public ( ))))] + (`` (type .public ( ))))] [Label Code] [Tag Expression] @@ -57,7 +57,7 @@ [Var/* Input] ) - (type: .public Lambda + (type .public Lambda (Record [#input Var/* #output (Expression Any)])) @@ -384,7 +384,7 @@ (-> (Access Any) (Expression Any) (Expression Any)) (..form (list (..var "setf") access value))) - (type: .public Handler + (type .public Handler (Record [#condition_type (Expression Any) #condition Var/1 diff --git a/stdlib/source/library/lux/target/js.lux b/stdlib/source/library/lux/target/js.lux index 453d9e9fc..8665f2ce4 100644 --- a/stdlib/source/library/lux/target/js.lux +++ b/stdlib/source/library/lux/target/js.lux @@ -43,7 +43,7 @@ (with_template [ +] [(with_expansions [ (template.symbol [ "'"])] (primitive ( brand) Any) - (`` (type: .public (|> Any (~~ (template.spliced +))))))] + (`` (type .public (|> Any (~~ (template.spliced +))))))] [Expression [Code]] [Computation [Expression' Code]] @@ -54,7 +54,7 @@ (with_template [ +] [(with_expansions [ (template.symbol [ "'"])] (primitive Any) - (`` (type: .public (|> (~~ (template.spliced +))))))] + (`` (type .public (|> (~~ (template.spliced +))))))] [Var [Location' Computation' Expression' Code]] [Access [Location' Computation' Expression' Code]] diff --git a/stdlib/source/library/lux/target/jvm.lux b/stdlib/source/library/lux/target/jvm.lux index e5909d3ba..a19962aab 100644 --- a/stdlib/source/library/lux/target/jvm.lux +++ b/stdlib/source/library/lux/target/jvm.lux @@ -9,7 +9,7 @@ [type (.only Type) ["[0]" category (.only Primitive Class Value Method)]]]]]]) -(type: .public Literal +(type .public Literal (Variant {#Boolean Bit} {#Int Int} @@ -18,7 +18,7 @@ {#Char Nat} {#String Text})) -(type: .public Constant +(type .public Constant (Variant {#BIPUSH Int} @@ -46,7 +46,7 @@ {#LDC Literal})) -(type: .public Int_Arithmetic +(type .public Int_Arithmetic (Variant {#IADD} {#ISUB} @@ -55,7 +55,7 @@ {#IREM} {#INEG})) -(type: .public Long_Arithmetic +(type .public Long_Arithmetic (Variant {#LADD} {#LSUB} @@ -64,7 +64,7 @@ {#LREM} {#LNEG})) -(type: .public Float_Arithmetic +(type .public Float_Arithmetic (Variant {#FADD} {#FSUB} @@ -73,7 +73,7 @@ {#FREM} {#FNEG})) -(type: .public Double_Arithmetic +(type .public Double_Arithmetic (Variant {#DADD} {#DSUB} @@ -82,14 +82,14 @@ {#DREM} {#DNEG})) -(type: .public Arithmetic +(type .public Arithmetic (Variant {#Int_Arithmetic Int_Arithmetic} {#Long_Arithmetic Long_Arithmetic} {#Float_Arithmetic Float_Arithmetic} {#Double_Arithmetic Double_Arithmetic})) -(type: .public Int_Bitwise +(type .public Int_Bitwise (Variant {#IOR} {#IXOR} @@ -98,7 +98,7 @@ {#ISHR} {#IUSHR})) -(type: .public Long_Bitwise +(type .public Long_Bitwise (Variant {#LOR} {#LXOR} @@ -107,12 +107,12 @@ {#LSHR} {#LUSHR})) -(type: .public Bitwise +(type .public Bitwise (Variant {#Int_Bitwise Int_Bitwise} {#Long_Bitwise Long_Bitwise})) -(type: .public Conversion +(type .public Conversion (Variant {#I2B} {#I2S} @@ -133,7 +133,7 @@ {#D2L} {#D2F})) -(type: .public Array +(type .public Array (Variant {#ARRAYLENGTH} @@ -164,7 +164,7 @@ {#AALOAD} {#AASTORE})) -(type: .public Object +(type .public Object (Variant {#GETSTATIC (Type Class) Text (Type Value)} {#PUTSTATIC (Type Class) Text (Type Value)} @@ -182,35 +182,35 @@ {#INVOKESTATIC (Type Class) Text (Type Method)} {#INVOKEVIRTUAL (Type Class) Text (Type Method)})) -(type: .public Register +(type .public Register Nat) -(type: .public Local_Int +(type .public Local_Int (Variant {#ILOAD Register} {#ISTORE Register})) -(type: .public Local_Long +(type .public Local_Long (Variant {#LLOAD Register} {#LSTORE Register})) -(type: .public Local_Float +(type .public Local_Float (Variant {#FLOAD Register} {#FSTORE Register})) -(type: .public Local_Double +(type .public Local_Double (Variant {#DLOAD Register} {#DSTORE Register})) -(type: .public Local_Object +(type .public Local_Object (Variant {#ALOAD Register} {#ASTORE Register})) -(type: .public Local +(type .public Local (Variant {#Local_Int Local_Int} {#IINC Register} @@ -219,7 +219,7 @@ {#Local_Double Local_Double} {#Local_Object Local_Object})) -(type: .public Stack +(type .public Stack (Variant {#DUP} {#DUP_X1} @@ -231,7 +231,7 @@ {#POP} {#POP2})) -(type: .public Comparison +(type .public Comparison (Variant {#LCMP} @@ -241,10 +241,10 @@ {#DCMPG} {#DCMPL})) -(type: .public Label +(type .public Label Nat) -(type: .public (Branching label) +(type .public (Branching label) (Variant {#IF_ICMPEQ label} {#IF_ICMPGE label} @@ -267,17 +267,17 @@ {#IFNONNULL label} {#IFNULL label})) -(type: .public (Exception label) +(type .public (Exception label) (Variant {#Try label label label (Type Class)} {#ATHROW})) -(type: .public Concurrency +(type .public Concurrency (Variant {#MONITORENTER} {#MONITOREXIT})) -(type: .public Return +(type .public Return (Variant {#RETURN} {#IRETURN} @@ -286,7 +286,7 @@ {#DRETURN} {#ARETURN})) -(type: .public (Control label) +(type .public (Control label) (Variant {#GOTO label} {#Branching (Branching label)} @@ -294,7 +294,7 @@ {#Concurrency Concurrency} {#Return Return})) -(type: .public (Instruction embedded label) +(type .public (Instruction embedded label) (Variant {#NOP} {#Constant Constant} @@ -309,5 +309,5 @@ {#Control (Control label)} {#Embedded embedded})) -(type: .public (Bytecode embedded label) +(type .public (Bytecode embedded label) (Sequence (Instruction embedded label))) diff --git a/stdlib/source/library/lux/target/jvm/attribute.lux b/stdlib/source/library/lux/target/jvm/attribute.lux index a1796629b..61e9401f5 100644 --- a/stdlib/source/library/lux/target/jvm/attribute.lux +++ b/stdlib/source/library/lux/target/jvm/attribute.lux @@ -29,7 +29,7 @@ ["[1][0]" constant (.only Constant)] ["[1][0]" code]]) -(type: .public (Info about) +(type .public (Info about) (Record [#name (Index UTF8) #length U4 @@ -56,14 +56,14 @@ (|>> nameT lengthT infoT)]))) (with_expansions [ (these (/code.Code Attribute))] - (type: .public Attribute + (type .public Attribute (Rec Attribute (Variant {#Constant (Info (Constant Any))} {#Code (Info )} {#Signature (Info (Index UTF8))}))) - (type: .public Code + (type .public Code ) ) diff --git a/stdlib/source/library/lux/target/jvm/attribute/code.lux b/stdlib/source/library/lux/target/jvm/attribute/code.lux index 24bb2bdd1..face35c64 100644 --- a/stdlib/source/library/lux/target/jvm/attribute/code.lux +++ b/stdlib/source/library/lux/target/jvm/attribute/code.lux @@ -22,7 +22,7 @@ ["[0]" / ["[1][0]" exception (.only Exception)]]) -(type: .public (Code Attribute) +(type .public (Code Attribute) (Record [#limit Limit #code Binary diff --git a/stdlib/source/library/lux/target/jvm/attribute/code/exception.lux b/stdlib/source/library/lux/target/jvm/attribute/code/exception.lux index ee7d960cb..a125c1282 100644 --- a/stdlib/source/library/lux/target/jvm/attribute/code/exception.lux +++ b/stdlib/source/library/lux/target/jvm/attribute/code/exception.lux @@ -19,7 +19,7 @@ [encoding ["[1][0]" unsigned (.only U2)]]]]) -(type: .public Exception +(type .public Exception (Record [#start Address #end Address diff --git a/stdlib/source/library/lux/target/jvm/attribute/constant.lux b/stdlib/source/library/lux/target/jvm/attribute/constant.lux index 799124c9a..3a31f2c70 100644 --- a/stdlib/source/library/lux/target/jvm/attribute/constant.lux +++ b/stdlib/source/library/lux/target/jvm/attribute/constant.lux @@ -12,7 +12,7 @@ [encoding ["[1][0]" unsigned (.only U2 U4)]]]) -(type: .public (Constant a) +(type .public (Constant a) (Index (Value a))) (def .public equivalence diff --git a/stdlib/source/library/lux/target/jvm/bytecode.lux b/stdlib/source/library/lux/target/jvm/bytecode.lux index 5d74511b8..9f71fd570 100644 --- a/stdlib/source/library/lux/target/jvm/bytecode.lux +++ b/stdlib/source/library/lux/target/jvm/bytecode.lux @@ -52,13 +52,13 @@ ["[0]" reflection] ["[0]" parser]]]]) -(type: .public Label +(type .public Label Nat) -(type: .public Resolver +(type .public Resolver (Dictionary Label [Stack (Maybe Address)])) -(type: .public Tracker +(type .public Tracker (Record [#program_counter Address #next Label @@ -70,7 +70,7 @@ #next 0 #known (dictionary.empty n.hash)]) -(type: .public Relative +(type .public Relative (-> Resolver (Try [(Sequence Exception) Instruction]))) (def no_exceptions @@ -116,7 +116,7 @@ (def identity ..relative#identity) (def composite ..relative#composite))) -(type: .public (Bytecode a) +(type .public (Bytecode a) (+State Try [Pool Environment Tracker] (Writer Relative a))) (def .public new_label @@ -792,7 +792,7 @@ "Start" (|> @from /address.value //unsigned.value %.nat) "Target" (|> jump //signed.value %.int))) -(type: Any_Jump +(type Any_Jump (Either Big_Jump Jump)) diff --git a/stdlib/source/library/lux/target/jvm/bytecode/environment.lux b/stdlib/source/library/lux/target/jvm/bytecode/environment.lux index b3f322519..a0c93c974 100644 --- a/stdlib/source/library/lux/target/jvm/bytecode/environment.lux +++ b/stdlib/source/library/lux/target/jvm/bytecode/environment.lux @@ -17,7 +17,7 @@ [type (.only Type) [category (.only Method)]]]]) -(type: .public Environment +(type .public Environment (Record [#limit Limit #stack (Maybe Stack)])) @@ -34,7 +34,7 @@ [virtual /limit.virtual] ) -(type: .public Condition +(type .public Condition (-> Environment (Try Environment))) (def .public monoid diff --git a/stdlib/source/library/lux/target/jvm/bytecode/environment/limit.lux b/stdlib/source/library/lux/target/jvm/bytecode/environment/limit.lux index 3cda1e1f1..ce98e3228 100644 --- a/stdlib/source/library/lux/target/jvm/bytecode/environment/limit.lux +++ b/stdlib/source/library/lux/target/jvm/bytecode/environment/limit.lux @@ -20,7 +20,7 @@ [type (.only Type) [category (.only Method)]]]]) -(type: .public Limit +(type .public Limit (Record [#stack Stack #registry Registry])) diff --git a/stdlib/source/library/lux/target/jvm/bytecode/environment/limit/registry.lux b/stdlib/source/library/lux/target/jvm/bytecode/environment/limit/registry.lux index 88b3e4dec..cc989ed02 100644 --- a/stdlib/source/library/lux/target/jvm/bytecode/environment/limit/registry.lux +++ b/stdlib/source/library/lux/target/jvm/bytecode/environment/limit/registry.lux @@ -22,7 +22,7 @@ [category (.only Method)] ["[1]/[0]" parser]]]) -(type: .public Register +(type .public Register U1) (def normal 1) diff --git a/stdlib/source/library/lux/target/jvm/bytecode/instruction.lux b/stdlib/source/library/lux/target/jvm/bytecode/instruction.lux index 060e751a5..fa61fa2fc 100644 --- a/stdlib/source/library/lux/target/jvm/bytecode/instruction.lux +++ b/stdlib/source/library/lux/target/jvm/bytecode/instruction.lux @@ -38,17 +38,17 @@ [type [category (.only Value Method)]]]]) -(type: .public Size +(type .public Size U2) -(type: .public Estimator +(type .public Estimator (-> Address Size)) (def fixed (-> Size Estimator) function.constant) -(type: .public Instruction +(type .public Instruction (-> Specification Specification)) (def .public empty @@ -59,7 +59,7 @@ (-> Instruction Specification) (function.on \\format.no_op)) -(type: Opcode +(type Opcode Nat) (with_template [ ] diff --git a/stdlib/source/library/lux/target/jvm/bytecode/jump.lux b/stdlib/source/library/lux/target/jvm/bytecode/jump.lux index d2931b2c8..8274d3855 100644 --- a/stdlib/source/library/lux/target/jvm/bytecode/jump.lux +++ b/stdlib/source/library/lux/target/jvm/bytecode/jump.lux @@ -10,7 +10,7 @@ [encoding ["[1][0]" signed (.only S2 S4)]]]) -(type: .public Jump +(type .public Jump S2) (def .public equivalence @@ -21,7 +21,7 @@ (Writer Jump) ///signed.writer/2) -(type: .public Big_Jump +(type .public Big_Jump S4) (def .public lifted diff --git a/stdlib/source/library/lux/target/jvm/class.lux b/stdlib/source/library/lux/target/jvm/class.lux index 8bb2ea186..08ef0790a 100644 --- a/stdlib/source/library/lux/target/jvm/class.lux +++ b/stdlib/source/library/lux/target/jvm/class.lux @@ -30,7 +30,7 @@ ["[1][0]" constant (.only Constant) ["[2][0]" pool (.only Pool Resource)]]]) -(type: .public Class +(type .public Class (Rec Class (Record [#magic Magic diff --git a/stdlib/source/library/lux/target/jvm/constant.lux b/stdlib/source/library/lux/target/jvm/constant.lux index 54b1d15d5..f404694ea 100644 --- a/stdlib/source/library/lux/target/jvm/constant.lux +++ b/stdlib/source/library/lux/target/jvm/constant.lux @@ -33,7 +33,7 @@ [encoding ["[1][0]" unsigned]]]]) -(type: .public UTF8 +(type .public UTF8 Text) (def utf8_writer @@ -98,7 +98,7 @@ Equivalence)) (with_template [ ] - [(type: .public + [(type .public (Value )) (def .public @@ -127,12 +127,12 @@ ) ) -(type: .public (Name_And_Type of) +(type .public (Name_And_Type of) (Record [#name (Index UTF8) #descriptor (Index (Descriptor of))])) -(type: .public (Reference of) +(type .public (Reference of) (Record [#class (Index Class) #name_and_type (Index (Name_And_Type of))])) @@ -154,7 +154,7 @@ [Reference reference_equivalence reference_writer] ) -(type: .public Constant +(type .public Constant (Variant {#UTF8 UTF8} {#Integer Integer} diff --git a/stdlib/source/library/lux/target/jvm/constant/pool.lux b/stdlib/source/library/lux/target/jvm/constant/pool.lux index bbfc2be17..ad82d4686 100644 --- a/stdlib/source/library/lux/target/jvm/constant/pool.lux +++ b/stdlib/source/library/lux/target/jvm/constant/pool.lux @@ -32,7 +32,7 @@ [category (.only Value Method)] ["[1][0]" descriptor (.only Descriptor)]]]]) -(type: .public Pool +(type .public Pool [Index (Sequence [Index Constant])]) (def .public equivalence @@ -41,7 +41,7 @@ (sequence.equivalence (product.equivalence //index.equivalence //.equivalence)))) -(type: .public (Resource a) +(type .public (Resource a) (+State Try Pool a)) (def .public functor @@ -135,7 +135,7 @@ failure (as_expected failure))])) -(type: (Adder of) +(type (Adder of) (-> of (Resource (Index of)))) (with_template [ ] @@ -173,7 +173,7 @@ (/|do %) (!add % //.#UTF8 text.equivalence value))) -(type: .public (Member of) +(type .public (Member of) (Record [#name UTF8 #descriptor (Descriptor of)])) diff --git a/stdlib/source/library/lux/target/jvm/encoding/name.lux b/stdlib/source/library/lux/target/jvm/encoding/name.lux index 558dfcad5..246bb0575 100644 --- a/stdlib/source/library/lux/target/jvm/encoding/name.lux +++ b/stdlib/source/library/lux/target/jvm/encoding/name.lux @@ -10,7 +10,7 @@ (def .public internal_separator "/") (def .public external_separator ".") -(type: .public External +(type .public External Text) (primitive .public Internal diff --git a/stdlib/source/library/lux/target/jvm/encoding/signed.lux b/stdlib/source/library/lux/target/jvm/encoding/signed.lux index b25fc4412..83d6bc4d8 100644 --- a/stdlib/source/library/lux/target/jvm/encoding/signed.lux +++ b/stdlib/source/library/lux/target/jvm/encoding/signed.lux @@ -51,7 +51,7 @@ (with_template [ <+> <->] [(with_expansions [ (template.symbol [ "'"])] (primitive Any) - (type: .public (Signed ))) + (type .public (Signed ))) (def .public ) diff --git a/stdlib/source/library/lux/target/jvm/encoding/unsigned.lux b/stdlib/source/library/lux/target/jvm/encoding/unsigned.lux index 33477f551..b31a67dcb 100644 --- a/stdlib/source/library/lux/target/jvm/encoding/unsigned.lux +++ b/stdlib/source/library/lux/target/jvm/encoding/unsigned.lux @@ -63,7 +63,7 @@ (with_template [ <+> <-> ] [(with_expansions [ (template.symbol [ "'"])] (primitive .public Any) - (type: .public (Unsigned ))) + (type .public (Unsigned ))) (def .public ) diff --git a/stdlib/source/library/lux/target/jvm/field.lux b/stdlib/source/library/lux/target/jvm/field.lux index d8d6ab791..ab9f3ea6e 100644 --- a/stdlib/source/library/lux/target/jvm/field.lux +++ b/stdlib/source/library/lux/target/jvm/field.lux @@ -20,7 +20,7 @@ [category (.only Value)] [descriptor (.only Descriptor)]]]) -(type: .public Field +(type .public Field (Rec Field (Record [#modifier (Modifier Field) diff --git a/stdlib/source/library/lux/target/jvm/loader.lux b/stdlib/source/library/lux/target/jvm/loader.lux index 0ce3ffe3f..04ea3f433 100644 --- a/stdlib/source/library/lux/target/jvm/loader.lux +++ b/stdlib/source/library/lux/target/jvm/loader.lux @@ -19,7 +19,7 @@ ["[0]" array] ["[0]" dictionary (.only Dictionary)]]]]]) -(type: .public Library +(type .public Library (Atom (Dictionary Text Binary))) (exception: .public (already_stored [class Text]) diff --git a/stdlib/source/library/lux/target/jvm/magic.lux b/stdlib/source/library/lux/target/jvm/magic.lux index b59147f41..3aab60bec 100644 --- a/stdlib/source/library/lux/target/jvm/magic.lux +++ b/stdlib/source/library/lux/target/jvm/magic.lux @@ -9,7 +9,7 @@ [encoding ["[1][0]" unsigned (.only U4)]]]) -(type: .public Magic +(type .public Magic U4) (def .public code diff --git a/stdlib/source/library/lux/target/jvm/method.lux b/stdlib/source/library/lux/target/jvm/method.lux index 9632c28a0..4468f152d 100644 --- a/stdlib/source/library/lux/target/jvm/method.lux +++ b/stdlib/source/library/lux/target/jvm/method.lux @@ -28,7 +28,7 @@ ["[2][0]" category] ["[2][0]" signature (.only Signature)]]]) -(type: .public Method +(type .public Method (Rec Method (Record [#modifier (Modifier Method) diff --git a/stdlib/source/library/lux/target/jvm/reflection.lux b/stdlib/source/library/lux/target/jvm/reflection.lux index 262ad8145..1076bfff2 100644 --- a/stdlib/source/library/lux/target/jvm/reflection.lux +++ b/stdlib/source/library/lux/target/jvm/reflection.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Primitive type parameter) + [lux (.except Primitive parameter) ["[0]" ffi (.only import)] ["[0]" type] [abstract diff --git a/stdlib/source/library/lux/target/jvm/type.lux b/stdlib/source/library/lux/target/jvm/type.lux index f2ae2d59d..3bb1f6411 100644 --- a/stdlib/source/library/lux/target/jvm/type.lux +++ b/stdlib/source/library/lux/target/jvm/type.lux @@ -30,13 +30,13 @@ (Descriptor category) (Reflection category)] - (type: .public Argument + (type .public Argument [Text (Type Value)]) - (type: .public (Typed a) + (type .public (Typed a) [(Type Value) a]) - (type: .public Constraint + (type .public Constraint (Record [#name Text #super_class (Type Class) diff --git a/stdlib/source/library/lux/target/jvm/type/alias.lux b/stdlib/source/library/lux/target/jvm/type/alias.lux index 9eb7986d2..5db726862 100644 --- a/stdlib/source/library/lux/target/jvm/type/alias.lux +++ b/stdlib/source/library/lux/target/jvm/type/alias.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Type Primitive int char type parameter) + [lux (.except Type Primitive int char parameter) [abstract ["[0]" monad (.only do)]] [control @@ -24,7 +24,7 @@ [encoding ["[1][0]" name]]]]) -(type: .public Aliasing +(type .public Aliasing (Dictionary Text Text)) (def .public fresh diff --git a/stdlib/source/library/lux/target/jvm/type/category.lux b/stdlib/source/library/lux/target/jvm/type/category.lux index 772503318..62a0a3a45 100644 --- a/stdlib/source/library/lux/target/jvm/type/category.lux +++ b/stdlib/source/library/lux/target/jvm/type/category.lux @@ -11,20 +11,20 @@ (primitive .public (Return' kind) Any) (primitive .public Method Any) -(type: .public Return (<| Return' Any)) -(type: .public Value (<| Return' Value' Any)) -(type: .public Void (<| Return' Void')) +(type .public Return (<| Return' Any)) +(type .public Value (<| Return' Value' Any)) +(type .public Void (<| Return' Void')) (primitive (Object' brand) Any) -(type: .public Object (<| Return' Value' Object' Any)) +(type .public Object (<| Return' Value' Object' Any)) (primitive (Parameter' brand) Any) -(type: .public Parameter (<| Return' Value' Object' Parameter' Any)) +(type .public Parameter (<| Return' Value' Object' Parameter' Any)) (with_template [ ] [(with_expansions [ (template.symbol [ "'"])] (primitive Any) - (type: .public + (type .public (`` (<| Return' Value' (~~ (template.spliced )) ))))] [[] Primitive] diff --git a/stdlib/source/library/lux/target/jvm/type/lux.lux b/stdlib/source/library/lux/target/jvm/type/lux.lux index 8ae726f26..3e3b02271 100644 --- a/stdlib/source/library/lux/target/jvm/type/lux.lux +++ b/stdlib/source/library/lux/target/jvm/type/lux.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Primitive int char type parameter) + [lux (.except Primitive int char parameter) [abstract ["[0]" monad (.only do)]] [control @@ -35,7 +35,7 @@ [Lower] [Upper] ) -(type: .public Mapping +(type .public Mapping (Dictionary Text Type)) (def .public fresh diff --git a/stdlib/source/library/lux/target/jvm/version.lux b/stdlib/source/library/lux/target/jvm/version.lux index 5d23d62c1..9e50f90bf 100644 --- a/stdlib/source/library/lux/target/jvm/version.lux +++ b/stdlib/source/library/lux/target/jvm/version.lux @@ -7,9 +7,9 @@ [encoding ["[1][0]" unsigned (.only U2)]]]) -(type: .public Version U2) -(type: .public Minor Version) -(type: .public Major Version) +(type .public Version U2) +(type .public Minor Version) +(type .public Major Version) (def .public default_minor Minor diff --git a/stdlib/source/library/lux/target/lua.lux b/stdlib/source/library/lux/target/lua.lux index 0aed4c5f4..635117c5e 100644 --- a/stdlib/source/library/lux/target/lua.lux +++ b/stdlib/source/library/lux/target/lua.lux @@ -66,7 +66,7 @@ (with_template [ +] [(with_expansions [ (template.symbol [ "'"])] (primitive ( brand) Any) - (`` (type: .public (|> Any (~~ (template.spliced +))))))] + (`` (type .public (|> Any (~~ (template.spliced +))))))] [Expression [Code]] [Computation [Expression' Code]] @@ -77,7 +77,7 @@ (with_template [ +] [(with_expansions [ (template.symbol [ "'"])] (primitive Any) - (`` (type: .public (|> (~~ (template.spliced +))))))] + (`` (type .public (|> (~~ (template.spliced +))))))] [Literal [Computation' Expression' Code]] [Var [Location' Computation' Expression' Code]] diff --git a/stdlib/source/library/lux/target/php.lux b/stdlib/source/library/lux/target/php.lux index 9924b5229..99b0c1d3f 100644 --- a/stdlib/source/library/lux/target/php.lux +++ b/stdlib/source/library/lux/target/php.lux @@ -74,7 +74,7 @@ (with_template [ +] [(with_expansions [ (template.symbol [ "'"])] (primitive ( brand) Any) - (`` (type: .public (|> Any (~~ (template.spliced +))))))] + (`` (type .public (|> Any (~~ (template.spliced +))))))] [Expression [Code]] [Computation [Expression' Code]] @@ -85,7 +85,7 @@ (with_template [ +] [(with_expansions [ (template.symbol [ "'"])] (primitive .public Any) - (`` (type: .public (|> (~~ (template.spliced +))))))] + (`` (type .public (|> (~~ (template.spliced +))))))] [Literal [Computation' Expression' Code]] [Var [Location' Computation' Expression' Code]] @@ -95,7 +95,7 @@ [Label [Code]] ) - (type: .public Argument + (type .public Argument (Record [#reference? Bit #var Var])) @@ -481,7 +481,7 @@ " as " (representation value) ") " (..block (representation body!))))) - (type: .public Except + (type .public Except (Record [#class Constant #exception Var diff --git a/stdlib/source/library/lux/target/python.lux b/stdlib/source/library/lux/target/python.lux index 3a737f2df..1ce2789e7 100644 --- a/stdlib/source/library/lux/target/python.lux +++ b/stdlib/source/library/lux/target/python.lux @@ -83,7 +83,7 @@ (with_template [ ] [(with_expansions [ (template.symbol [ "'"])] (`` (primitive ( brand) Any)) - (`` (type: .public ( brand) + (`` (type .public ( brand) ( ( brand)))))] [Expression Code] @@ -96,7 +96,7 @@ (with_template [ ] [(with_expansions [ (template.symbol [ "'"])] (`` (primitive Any)) - (`` (type: .public ( ))))] + (`` (type .public ( ))))] [Literal Computation] [Access Location] @@ -106,7 +106,7 @@ (with_template [ ] [(primitive .public Any) - (type: .public (Var ))] + (type .public (Var ))] [SVar Single] [PVar Poly] @@ -392,7 +392,7 @@ (Statement Any) (abstraction "pass")) - (type: .public Except + (type .public Except (Record [#classes (List Text) #exception SVar diff --git a/stdlib/source/library/lux/target/r.lux b/stdlib/source/library/lux/target/r.lux index 6ec894694..6ec808501 100644 --- a/stdlib/source/library/lux/target/r.lux +++ b/stdlib/source/library/lux/target/r.lux @@ -28,7 +28,7 @@ (with_template [ +] [(with_expansions [ (template.symbol [ "'"])] (primitive .public ( kind) Any) - (`` (type: .public (|> Any (~~ (template.spliced +))))))] + (`` (type .public (|> Any (~~ (template.spliced +))))))] [Expression [Code]] ) @@ -36,14 +36,14 @@ (with_template [ +] [(with_expansions [ (template.symbol [ "'"])] (primitive .public ( kind) Any) - (`` (type: .public ( ) (|> (~~ (template.spliced +))))))] + (`` (type .public ( ) (|> (~~ (template.spliced +))))))] [Var [Expression' Code]] ) (with_template [ ] [(primitive .public Any) - (type: .public (Var ))] + (type .public (Var ))] [SVar Single] [PVar Poly] diff --git a/stdlib/source/library/lux/target/ruby.lux b/stdlib/source/library/lux/target/ruby.lux index 0750ed717..980307456 100644 --- a/stdlib/source/library/lux/target/ruby.lux +++ b/stdlib/source/library/lux/target/ruby.lux @@ -60,7 +60,7 @@ (with_template [ +] [(with_expansions [ (template.symbol [ "'"])] (primitive ( brand) Any) - (`` (type: .public (|> Any (~~ (template.spliced +))))))] + (`` (type .public (|> Any (~~ (template.spliced +))))))] [Expression [Code]] [Computation [Expression' Code]] @@ -73,7 +73,7 @@ (with_template [ +] [(with_expansions [ (template.symbol [ "'"])] (primitive Any) - (`` (type: .public (|> (~~ (template.spliced +))))))] + (`` (type .public (|> (~~ (template.spliced +))))))] [Literal [Computation' Expression' Code]] [Access [Location' Computation' Expression' Code]] @@ -227,7 +227,7 @@ (format content \n+ "end" ..statement_suffix)) - (type: .public Block + (type .public Block (Record [#parameters (List Var) #body Statement])) @@ -333,7 +333,7 @@ " do " (..nested (representation iteration!))))) - (type: .public Rescue + (type .public Rescue (Record [#classes (List Text) #exception LVar diff --git a/stdlib/source/library/lux/target/scheme.lux b/stdlib/source/library/lux/target/scheme.lux index 5657061a3..0a2d66b7d 100644 --- a/stdlib/source/library/lux/target/scheme.lux +++ b/stdlib/source/library/lux/target/scheme.lux @@ -48,20 +48,20 @@ (with_template [ +] [(primitive .public ( brand) Any) - (`` (type: .public (|> Any (~~ (template.spliced +)))))] + (`` (type .public (|> Any (~~ (template.spliced +)))))] [Expression Expression' [Code]] ) (with_template [ +] [(primitive .public Any) - (`` (type: .public (|> (~~ (template.spliced +)))))] + (`` (type .public (|> (~~ (template.spliced +)))))] [Var Var' [Expression' Code]] [Computation Computation' [Expression' Code]] ) - (type: .public Arguments + (type .public Arguments (Record [#mandatory (List Var) #rest (Maybe Var)])) diff --git a/stdlib/source/library/lux/test.lux b/stdlib/source/library/lux/test.lux index e562a5d12..5f3e5d8bf 100644 --- a/stdlib/source/library/lux/test.lux +++ b/stdlib/source/library/lux/test.lux @@ -42,7 +42,7 @@ ["[0]" program] ["[0]" console]]]]) -(type: .public Tally +(type .public Tally (Record [#successes Nat #failures Nat @@ -74,10 +74,10 @@ [failure_tally #failures] ) -(type: .public Assertion +(type .public Assertion (Async [Tally Text])) -(type: .public Test +(type .public Test (Random Assertion)) (def separator @@ -145,7 +145,7 @@ Nat (hex "FEDCBA9876543210")) -(type: .public Seed +(type .public Seed Nat) (def .public (seed value test) diff --git a/stdlib/source/library/lux/time.lux b/stdlib/source/library/lux/time.lux index 63dd2bbaf..13fa9b63f 100644 --- a/stdlib/source/library/lux/time.lux +++ b/stdlib/source/library/lux/time.lux @@ -166,7 +166,7 @@ ... (n.< 1,000 millis) (all text#composite "." (n#encoded millis)))) -(type: .public Clock +(type .public Clock (Record [#hour Nat #minute Nat diff --git a/stdlib/source/library/lux/time/day.lux b/stdlib/source/library/lux/time/day.lux index 8436187da..689c5af7f 100644 --- a/stdlib/source/library/lux/time/day.lux +++ b/stdlib/source/library/lux/time/day.lux @@ -19,7 +19,7 @@ [number ["n" nat]]]]]) -(type: .public Day +(type .public Day (Variant {#Sunday} {#Monday} diff --git a/stdlib/source/library/lux/time/month.lux b/stdlib/source/library/lux/time/month.lux index e9b6d5578..3cac9c162 100644 --- a/stdlib/source/library/lux/time/month.lux +++ b/stdlib/source/library/lux/time/month.lux @@ -19,7 +19,7 @@ [number ["n" nat]]]]]) -(type: .public Month +(type .public Month (Variant {#January} {#February} diff --git a/stdlib/source/library/lux/time/year.lux b/stdlib/source/library/lux/time/year.lux index db1f73958..8552a8394 100644 --- a/stdlib/source/library/lux/time/year.lux +++ b/stdlib/source/library/lux/time/year.lux @@ -57,7 +57,7 @@ Nat 365) -(type: .public Period +(type .public Period Nat) (with_template [ ] diff --git a/stdlib/source/library/lux/tool/compiler.lux b/stdlib/source/library/lux/tool/compiler.lux index 2da6a3a44..536804e4b 100644 --- a/stdlib/source/library/lux/tool/compiler.lux +++ b/stdlib/source/library/lux/tool/compiler.lux @@ -20,30 +20,30 @@ [descriptor (.only Descriptor Module)] [document (.only Document)]]]]]) -(type: .public Code +(type .public Code Text) -(type: .public Parameter +(type .public Parameter Text) -(type: .public Input +(type .public Input (Record [#module Module #file Path #hash Nat #code Code])) -(type: .public (Compilation s d o) +(type .public (Compilation s d o) (Record [#dependencies (List Module) #process (-> s Archive (Try [s (Either (Compilation s d o) (archive.Entry d))]))])) -(type: .public (Compiler s d o) +(type .public (Compiler s d o) (-> Input (Compilation s d o))) -(type: .public Custom +(type .public Custom (Ex (_ state document object) [state (Key document) @@ -51,7 +51,7 @@ (Parser document) (-> Input (Try (Compilation state document object)))])) -(type: .public (Instancer s d o) +(type .public (Instancer s d o) (-> (Key d) (List Parameter) (Compiler s d o))) (exception: .public (cannot_compile [module Module]) diff --git a/stdlib/source/library/lux/tool/compiler/arity.lux b/stdlib/source/library/lux/tool/compiler/arity.lux index 28078039c..9d88e1d0f 100644 --- a/stdlib/source/library/lux/tool/compiler/arity.lux +++ b/stdlib/source/library/lux/tool/compiler/arity.lux @@ -5,7 +5,7 @@ [number ["n" nat]]]]]) -(type: .public Arity +(type .public Arity Nat) (with_template [ ] diff --git a/stdlib/source/library/lux/tool/compiler/default/init.lux b/stdlib/source/library/lux/tool/compiler/default/init.lux index 1e37db22b..d4213ccfc 100644 --- a/stdlib/source/library/lux/tool/compiler/default/init.lux +++ b/stdlib/source/library/lux/tool/compiler/default/init.lux @@ -91,7 +91,7 @@ (luxD.bundle expander host_analysis program anchorT,expressionT,directiveT extender)) sub_state])) -(type: Reader +(type Reader (-> Source (Either [Source Text] [Source Code]))) (def (reader current_module aliases [location offset source_code]) @@ -114,11 +114,11 @@ (has .#location location))] [source' output]]})))) -(type: (Operation a) +(type (Operation a) (All (_ anchor expression directive) (///directive.Operation anchor expression directive a))) -(type: (Payload directive) +(type (Payload directive) [(///generation.Buffer directive) Registry]) diff --git a/stdlib/source/library/lux/tool/compiler/default/platform.lux b/stdlib/source/library/lux/tool/compiler/default/platform.lux index 7b8115a43..6d19f4b14 100644 --- a/stdlib/source/library/lux/tool/compiler/default/platform.lux +++ b/stdlib/source/library/lux/tool/compiler/default/platform.lux @@ -73,7 +73,7 @@ (with_expansions [ (these anchor expression directive) (these ///generation.Operation )] - (type: .public (Platform ) + (type .public (Platform ) (Record [#file_system (file.System Async) #host (///generation.Host expression directive) @@ -83,7 +83,7 @@ #write (-> directive Binary)])) ... TODO: Get rid of this - (type: (Action a) + (type (Action a) (Async (Try a))) ... TODO: Get rid of this @@ -329,10 +329,10 @@ (Set descriptor.Module) (set.empty text.hash)) - (type: Mapping + (type Mapping (Dictionary descriptor.Module (Set descriptor.Module))) - (type: Dependence + (type Dependence (Record [#depends_on Mapping #depended_by Mapping])) @@ -462,26 +462,26 @@ state (with_generation_extensions from state)] (with_directive_extensions from state))) - (type: (Context state) + (type (Context state) [Archive state]) - (type: (Result state) + (type (Result state) (Try (Context state))) - (type: (Return state) + (type (Return state) (Async (Result state))) - (type: (Signal state) + (type (Signal state) (Resolver (Result state))) - (type: (Pending state) + (type (Pending state) [(Return state) (Signal state)]) - (type: (Importer state) + (type (Importer state) (-> (List ///.Custom) descriptor.Module descriptor.Module (Return state))) - (type: (Compiler state) + (type (Compiler state) (-> (List ///.Custom) descriptor.Module (Importer state) module.ID (Context state) descriptor.Module (Return state))) (with_expansions [Lux_Context (..Context ) @@ -838,7 +838,7 @@ (def .public Custom Type - (type (-> (List Text) (Try ///.Custom)))) + (type_literal (-> (List Text) (Try ///.Custom)))) (exception: .public (invalid_custom_compiler [definition Symbol type Type]) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis.lux index a74058ebb..81d6ccdf5 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis.lux @@ -44,18 +44,18 @@ ["[0]" reference (.only Reference) ["[0]" variable (.only Register Variable)]]]]]) -(type: .public (Branch' e) +(type .public (Branch' e) (Record [#when Pattern #then e])) -(type: .public (Match' e) +(type .public (Match' e) [(Branch' e) (List (Branch' e))]) -(type: .public (Environment a) +(type .public (Environment a) (List a)) -(type: .public Analysis +(type .public Analysis (Rec Analysis (.Variant {#Simple Simple} @@ -66,10 +66,10 @@ {#Apply Analysis Analysis} {#Extension (Extension Analysis)}))) -(type: .public Branch +(type .public Branch (Branch' Analysis)) -(type: .public Match +(type .public Match (Match' Analysis)) (def (branch_equivalence equivalence) @@ -139,10 +139,10 @@ [text /simple.#Text] ) -(type: .public (Abstraction c) +(type .public (Abstraction c) [(Environment c) Arity c]) -(type: .public (Reification c) +(type .public (Reification c) [c (List c)]) (def .public no_op @@ -245,7 +245,7 @@ (text.enclosed ["(" ")"])))) (with_template [ ] - [(type: .public + [(type .public ( .Lux Code Analysis))] [State+ extension.State] diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/complex.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/complex.lux index 8c3fbea81..0d00367b9 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/complex.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/complex.lux @@ -14,21 +14,21 @@ [number ["n" nat]]]]]) -(type: .public (Variant a) +(type .public (Variant a) (Record [#lefts Nat #right? Bit #value a])) -(type: .public (Tuple a) +(type .public (Tuple a) (List a)) -(type: .public (Complex a) +(type .public (Complex a) (.Variant {#Variant (Variant a)} {#Tuple (Tuple a)})) -(type: .public Tag +(type .public Tag Nat) (def .public (tag right? lefts) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/coverage.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/coverage.lux index 2d3d15ef0..fdd6d9b75 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/coverage.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/coverage.lux @@ -41,7 +41,7 @@ ... not being handled by any pattern). (template.let [(Variant' @) [[(Maybe Nat) (Dictionary Nat @)]]] - (these (type: .public Coverage + (these (type .public Coverage (Rec @ (.Variant {#Exhaustive} @@ -55,7 +55,7 @@ {#Seq @ @} {#Alt @ @}))) - (type: .public Variant + (type .public Variant (Variant' Coverage)))) (def .public (minimum [max cases]) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/evaluation.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/evaluation.lux index d0bb26946..d25341b39 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/evaluation.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/evaluation.lux @@ -35,7 +35,7 @@ ["[0]" archive (.only Archive) ["[0]" module]]]]]]]]) -(type: .public Eval +(type .public Eval (-> Archive Type Code (Operation Any))) (def evals diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/macro.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/macro.lux index 50fdf139b..68e1540b4 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/macro.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/macro.lux @@ -29,7 +29,7 @@ "Inputs" (exception.listing %.code inputs) "Outputs" (exception.listing %.code outputs))) -(type: .public Expander +(type .public Expander (-> Macro (List Code) Lux (Try (Try [Lux (List Code)])))) (def .public (expansion expander name macro inputs) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/module.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/module.lux index eb893d890..2c7f2f42b 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/module.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/module.lux @@ -22,7 +22,7 @@ [/// ["[1]" phase]]]]) -(type: .public Label +(type .public Label Text) (exception: .public (unknown_module [module Text]) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/pattern.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/pattern.lux index f198494ad..52c5de8fc 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/pattern.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/pattern.lux @@ -16,7 +16,7 @@ [reference ["[1][0]" variable (.only Register)]]]]) -(type: .public Pattern +(type .public Pattern (Rec Pattern (.Variant {#Simple Simple} diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/scope.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/scope.lux index 03edb5564..9e4749526 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/scope.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/scope.lux @@ -23,10 +23,10 @@ [reference ["[0]" variable (.only Register Variable)]]]]]) -(type: Local +(type Local (Bindings Text [Type Register])) -(type: Foreign +(type Foreign (Bindings Text [Type Variable])) (def (local? name scope) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/simple.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/simple.lux index 3a4e21bdf..b87c107ff 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/simple.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/simple.lux @@ -16,7 +16,7 @@ ["r" rev] ["f" frac]]]]]) -(type: .public Simple +(type .public Simple (Variant {#Unit} {#Bit Bit} diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/directive.lux b/stdlib/source/library/lux/tool/compiler/language/lux/directive.lux index 091ac3b6c..380e48d63 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/directive.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/directive.lux @@ -21,12 +21,12 @@ [module [descriptor (.only Module)]]]]]]) -(type: .public (Component state phase) +(type .public (Component state phase) (Record [#state state #phase phase])) -(type: .public (State anchor expression directive) +(type .public (State anchor expression directive) (Record [#analysis (Component analysis.State+ analysis.Phase) @@ -35,12 +35,12 @@ #generation (Component (generation.State+ anchor expression directive) (generation.Phase anchor expression directive))])) -(type: .public Import +(type .public Import (Record [#module Module #alias Text])) -(type: .public Requirements +(type .public Requirements (Record [#imports (List Import) #referrals (List Code)])) @@ -56,7 +56,7 @@ #referrals (list#composite (the #referrals left) (the #referrals right))]) (with_template [ ] - [(type: .public ( anchor expression directive) + [(type .public ( anchor expression directive) ( (..State anchor expression directive) Code Requirements))] [State+ extension.State] diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/generation.lux b/stdlib/source/library/lux/tool/compiler/language/lux/generation.lux index 6a73833fa..a0dc6d5d3 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/generation.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/generation.lux @@ -39,7 +39,7 @@ ["[0]" module (.only) ["[0]" descriptor]]]]]]) -(type: .public (Buffer directive) +(type .public (Buffer directive) (Sequence [artifact.ID (Maybe Text) directive])) (exception: .public (cannot_interpret [error Text]) @@ -55,7 +55,7 @@ [no_buffer_for_saving_code] ) -(type: .public (Host expression directive) +(type .public (Host expression directive) (Interface (is (-> unit.ID [(Maybe unit.ID) expression] (Try Any)) evaluate) @@ -71,7 +71,7 @@ (is (-> unit.ID (Maybe Text) directive (Try Any)) re_load))) -(type: .public (State anchor expression directive) +(type .public (State anchor expression directive) (Record [#module descriptor.Module #anchor (Maybe anchor) @@ -85,7 +85,7 @@ #interim_artifacts (List artifact.ID)])) (with_template [ ] - [(type: .public ( anchor expression directive) + [(type .public ( anchor expression directive) ( (State anchor expression directive) Synthesis expression))] [State+ extension.State] diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/directive.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/directive.lux index 4cb90a248..b601ba77a 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/directive.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/directive.lux @@ -40,7 +40,7 @@ (exception.report "Name" (%.symbol name))) -(type: Eval +(type Eval (-> Type Code (Meta Any))) (def (meta_eval archive bundle compiler_eval) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension.lux index 6844779c4..069ee2483 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension.lux @@ -23,10 +23,10 @@ [meta [archive (.only Archive)]]]) -(type: .public Name +(type .public Name Text) -(type: .public (Extension a) +(type .public (Extension a) [Name (List a)]) (def .public equivalence @@ -40,27 +40,27 @@ (product.hash text.hash))) (with_expansions [ (these (Dictionary Name (Handler s i o)))] - (type: .public (Handler s i o) + (type .public (Handler s i o) (-> Name (//.Phase [ s] i o) (//.Phase [ s] (List i) o))) - (type: .public (Bundle s i o) + (type .public (Bundle s i o) )) (def .public empty Bundle (dictionary.empty text.hash)) -(type: .public (State s i o) +(type .public (State s i o) (Record [#bundle (Bundle s i o) #state s])) -(type: .public (Operation s i o v) +(type .public (Operation s i o v) (//.Operation (State s i o) v)) -(type: .public (Phase s i o) +(type .public (Phase s i o) (//.Phase (State s i o) i o)) (exception: .public (cannot_overwrite [name Name]) @@ -91,7 +91,7 @@ (list.sorted text#<) (exception.listing %.text)))) -(type: .public (Extender s i o) +(type .public (Extender s i o) (-> Any (Handler s i o))) (def .public (install extender name handler) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/js.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/js.lux index 605c39956..af44a8272 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/js.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/js.lux @@ -38,7 +38,7 @@ (do phase.monad [lengthA (analysis/type.expecting Nat (phase archive lengthC)) - _ (analysis/type.inference (type (array.Array' :read: :write:)))] + _ (analysis/type.inference (type_literal (array.Array' :read: :write:)))] (in {analysis.#Extension extension (list lengthA)}))))])) (def array::length @@ -51,7 +51,7 @@ analysis/type.with_var (function (_ [@write :write:])) (do phase.monad - [arrayA (analysis/type.expecting (type (array.Array' :read: :write:)) + [arrayA (analysis/type.expecting (type_literal (array.Array' :read: :write:)) (phase archive arrayC)) _ (analysis/type.inference Nat)] (in {analysis.#Extension extension (list arrayA)}))))])) @@ -68,7 +68,7 @@ (do phase.monad [indexA (analysis/type.expecting Nat (phase archive indexC)) - arrayA (analysis/type.expecting (type (array.Array' :read: :write:)) + arrayA (analysis/type.expecting (type_literal (array.Array' :read: :write:)) (phase archive arrayC)) _ (analysis/type.inference :read:)] (in {analysis.#Extension extension (list indexA arrayA)}))))])) @@ -87,9 +87,9 @@ (phase archive indexC)) valueA (analysis/type.expecting :write: (phase archive valueC)) - arrayA (analysis/type.expecting (type (array.Array' :read: :write:)) + arrayA (analysis/type.expecting (type_literal (array.Array' :read: :write:)) (phase archive arrayC)) - _ (analysis/type.inference (type (array.Array' :read: :write:)))] + _ (analysis/type.inference (type_literal (array.Array' :read: :write:)))] (in {analysis.#Extension extension (list indexA valueA arrayA)}))))])) (def array::delete @@ -104,9 +104,9 @@ (do phase.monad [indexA (analysis/type.expecting Nat (phase archive indexC)) - arrayA (analysis/type.expecting (type (array.Array' :read: :write:)) + arrayA (analysis/type.expecting (type_literal (array.Array' :read: :write:)) (phase archive arrayC)) - _ (analysis/type.inference (type (array.Array' :read: :write:)))] + _ (analysis/type.inference (type_literal (array.Array' :read: :write:)))] (in {analysis.#Extension extension (list indexA arrayA)}))))])) (def bundle::array diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/jvm.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/jvm.lux index 2200e481c..193a1e8b5 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/jvm.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/jvm.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Type Module Primitive type char int) + [lux (.except Type Module Primitive char int) ["[0]" ffi (.only import)] ["[0]" meta] [abstract @@ -225,7 +225,7 @@ [char (reflection.reflection reflection.char)] ) -(type: Member +(type Member (Record [#class External #member Text])) @@ -234,7 +234,7 @@ (Parser Member) (all <>.and .text .text)) -(type: Method_Signature +(type Method_Signature (Record [#method .Type #deprecated? Bit @@ -482,11 +482,11 @@ (function (_ [@write :write:])) (do phase.monad [_ (typeA.inference ..int) - arrayA (<| (typeA.expecting (.type (array.Array' :read: :write:))) + arrayA (<| (typeA.expecting (.type_literal (array.Array' :read: :write:))) (analyse archive arrayC)) :read: (typeA.check (check.clean (list) :read:)) :write: (typeA.check (check.clean (list) :write:)) - arrayJT (jvm_array_type (.type (array.Array' :read: :write:)))] + arrayJT (jvm_array_type (.type_literal (array.Array' :read: :write:)))] (in {/////analysis.#Extension extension_name (list (/////analysis.text (..signature arrayJT)) arrayA)}))) @@ -720,13 +720,13 @@ (function (_ [@write :write:])) (do phase.monad [_ (typeA.inference :read:) - arrayA (<| (typeA.expecting (.type (array.Array' :read: :write:))) + arrayA (<| (typeA.expecting (.type_literal (array.Array' :read: :write:))) (analyse archive arrayC)) idxA (<| (typeA.expecting ..int) (analyse archive idxC)) :read: (typeA.check (check.clean (list) :read:)) :write: (typeA.check (check.clean (list) :write:)) - arrayJT (jvm_array_type (.type (array.Array' :read: :write:)))] + arrayJT (jvm_array_type (.type_literal (array.Array' :read: :write:)))] (in {/////analysis.#Extension extension_name (list (/////analysis.text (..signature arrayJT)) idxA arrayA)}))) @@ -766,8 +766,8 @@ typeA.with_var (function (_ [@write :write:])) (do phase.monad - [_ (typeA.inference (.type (array.Array' :read: :write:))) - arrayA (<| (typeA.expecting (.type (array.Array' :read: :write:))) + [_ (typeA.inference (.type_literal (array.Array' :read: :write:))) + arrayA (<| (typeA.expecting (.type_literal (array.Array' :read: :write:))) (analyse archive arrayC)) idxA (<| (typeA.expecting ..int) (analyse archive idxC)) @@ -775,7 +775,7 @@ (analyse archive valueC)) :read: (typeA.check (check.clean (list) :read:)) :write: (typeA.check (check.clean (list) :write:)) - arrayJT (jvm_array_type (.type (array.Array' :read: :write:)))] + arrayJT (jvm_array_type (.type_literal (array.Array' :read: :write:)))] (in {/////analysis.#Extension extension_name (list (/////analysis.text (..signature arrayJT)) idxA valueA @@ -1149,7 +1149,7 @@ valueA objectA)))))])) -(type: Method_Style +(type Method_Style (Variant {#Static} {#Abstract} @@ -1356,7 +1356,7 @@ concrete_exceptions generic_exceptions)])))) -(type: Evaluation +(type Evaluation (Variant {#Pass Method_Signature} {#Hint Method_Signature})) @@ -1649,14 +1649,14 @@ ))) ))) -(type: .public (Annotation_Parameter a) +(type .public (Annotation_Parameter a) [Text a]) (def annotation_parameter (Parser (Annotation_Parameter Code)) (.tuple (<>.and .text .any))) -(type: .public (Annotation a) +(type .public (Annotation a) [Text (List (Annotation_Parameter a))]) (def .public annotation @@ -1766,15 +1766,15 @@ [invalid_overriden_methods] ) -(type: .public Visibility +(type .public Visibility (Variant {#Public} {#Private} {#Protected} {#Default})) -(type: .public Finality Bit) -(type: .public Strictness Bit) +(type .public Finality Bit) +(type .public Strictness Bit) (def .public public_tag "public") (def .public private_tag "private") @@ -1802,7 +1802,7 @@ {#Protected} ..protected_tag {#Default} ..default_tag))) -(type: Exception +(type Exception (Type Class)) (def .public parameter_types @@ -1813,7 +1813,7 @@ [[_ parameterT] check.existential] (in [parameterJ parameterT]))))) -(type: .public (Abstract_Method a) +(type .public (Abstract_Method a) [Text Visibility (List (Annotation a)) @@ -1873,7 +1873,7 @@ (/////analysis.tuple (list#each class_analysis exceptions)) )))))) -(type: .public (Constructor a) +(type .public (Constructor a) [Visibility Strictness (List (Annotation a)) @@ -1951,7 +1951,7 @@ (/////analysis.tuple (list bodyA))} )))))) -(type: .public (Virtual_Method a) +(type .public (Virtual_Method a) [Text Visibility Finality @@ -1983,7 +1983,7 @@ (.tuple (<>.some ..class)) .any))) -(type: .public (Method_Declaration a) +(type .public (Method_Declaration a) (Record [#name Text #annotations (List (Annotation a)) @@ -2051,7 +2051,7 @@ (/////analysis.tuple (list bodyA))} )))))) -(type: .public (Static_Method a) +(type .public (Static_Method a) [Text Visibility Strictness @@ -2124,7 +2124,7 @@ (/////analysis.tuple (list bodyA))} )))))) -(type: .public (Overriden_Method a) +(type .public (Overriden_Method a) [(Type Class) Text Bit @@ -2435,21 +2435,21 @@ (list.empty? invalid_overriden_methods))] (in []))) -(type: Declaration +(type Declaration [Text (List (Type Var))]) -(type: Constant +(type Constant [Text (List Annotation) (Type Value) Code]) -(type: Variable +(type Variable [Text (Modifier field.Field) (Modifier field.Field) (List Annotation) (Type Value)]) -(type: Field +(type Field (Variant {#Constant Constant} {#Variable Variable})) -(type: (Method_Definition a) +(type (Method_Definition a) (Variant {#Constructor (..Constructor a)} {#Virtual_Method (..Virtual_Method a)} @@ -2470,16 +2470,16 @@ (try#each (|>> (\\format.result class.writer) [name]) (class.class version.v6_0 - (all modifier#composite - class.public - modifier) - (name.internal name) - {.#Some signature} - (..class_name super) - (list#each ..class_name interfaces) - fields - methods - sequence.empty)))) + (all modifier#composite + class.public + modifier) + (name.internal name) + {.#Some signature} + (..class_name super) + (list#each ..class_name interfaces) + fields + methods + sequence.empty)))) (def constant::modifier (Modifier field.Field) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lua.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lua.lux index 2cd5b0a68..b507b7a15 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lua.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lua.lux @@ -31,7 +31,7 @@ Any)) (def Object - (for @.lua (type (ffi.Object Any)) + (for @.lua (type_literal (ffi.Object Any)) Any)) (def Function @@ -50,7 +50,7 @@ (do phase.monad [lengthA (analysis/type.expecting Nat (phase archive lengthC)) - _ (analysis/type.inference (type (array.Array' :read: :write:)))] + _ (analysis/type.inference (type_literal (array.Array' :read: :write:)))] (in {analysis.#Extension extension (list lengthA)}))))])) (def array::length @@ -63,7 +63,7 @@ analysis/type.with_var (function (_ [@write :write:])) (do phase.monad - [arrayA (analysis/type.expecting (type (array.Array' :read: :write:)) + [arrayA (analysis/type.expecting (type_literal (array.Array' :read: :write:)) (phase archive arrayC)) _ (analysis/type.inference Nat)] (in {analysis.#Extension extension (list arrayA)}))))])) @@ -80,7 +80,7 @@ (do phase.monad [indexA (analysis/type.expecting Nat (phase archive indexC)) - arrayA (analysis/type.expecting (type (array.Array' :read: :write:)) + arrayA (analysis/type.expecting (type_literal (array.Array' :read: :write:)) (phase archive arrayC)) _ (analysis/type.inference :read:)] (in {analysis.#Extension extension (list indexA arrayA)}))))])) @@ -99,9 +99,9 @@ (phase archive indexC)) valueA (analysis/type.expecting :write: (phase archive valueC)) - arrayA (analysis/type.expecting (type (array.Array' :read: :write:)) + arrayA (analysis/type.expecting (type_literal (array.Array' :read: :write:)) (phase archive arrayC)) - _ (analysis/type.inference (type (array.Array' :read: :write:)))] + _ (analysis/type.inference (type_literal (array.Array' :read: :write:)))] (in {analysis.#Extension extension (list indexA valueA arrayA)}))))])) (def array::delete @@ -116,9 +116,9 @@ (do phase.monad [indexA (analysis/type.expecting Nat (phase archive indexC)) - arrayA (analysis/type.expecting (type (array.Array' :read: :write:)) + arrayA (analysis/type.expecting (type_literal (array.Array' :read: :write:)) (phase archive arrayC)) - _ (analysis/type.inference (type (array.Array' :read: :write:)))] + _ (analysis/type.inference (type_literal (array.Array' :read: :write:)))] (in {analysis.#Extension extension (list indexA arrayA)}))))])) (def bundle::array @@ -175,9 +175,9 @@ [.any (function (_ extension phase archive inputC) (do [! phase.monad] - [inputA (analysis/type.expecting (type ) + [inputA (analysis/type.expecting (type_literal ) (phase archive inputC)) - _ (analysis/type.inference (type ))] + _ (analysis/type.inference (type_literal ))] (in {analysis.#Extension extension (list inputA)})))]))] [utf8::encode Text (array.Array (I64 Any))] diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux index 400a7a5e7..e7711d4a0 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux @@ -141,10 +141,10 @@ (<| typeA.with_var (function (_ [@var :var:])) (do [! ////.monad] - [_ (typeA.inference (type (Either Text :var:)))] + [_ (typeA.inference (type_literal (Either Text :var:)))] (|> opC (analyse archive) - (typeA.expecting (type (-> .Any :var:))) + (typeA.expecting (type_literal (-> .Any :var:))) (at ! each (|>> list {////analysis.#Extension extension_name}))))) _ @@ -251,7 +251,7 @@ (///bundle.install "exit" (unary Int Nothing))))) (def I64* - (type (I64 Any))) + (type_literal (I64 Any))) (def bundle::i64 Bundle @@ -285,7 +285,7 @@ (///bundle.install "<" (binary Frac Frac Bit)) (///bundle.install "i64" (unary Frac Int)) (///bundle.install "encode" (unary Frac Text)) - (///bundle.install "decode" (unary Text (type (Maybe Frac))))))) + (///bundle.install "decode" (unary Text (type_literal (Maybe Frac))))))) (def bundle::text Bundle @@ -294,7 +294,7 @@ (///bundle.install "=" (binary Text Text Bit)) (///bundle.install "<" (binary Text Text Bit)) (///bundle.install "concat" (binary Text Text Text)) - (///bundle.install "index" (trinary Nat Text Text (type (Maybe Nat)))) + (///bundle.install "index" (trinary Nat Text Text (type_literal (Maybe Nat)))) (///bundle.install "size" (unary Text Nat)) (///bundle.install "char" (binary Nat Text Nat)) (///bundle.install "clip" (trinary Nat Nat Text Text)) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/php.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/php.lux index 04896e028..27e096e18 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/php.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/php.lux @@ -38,7 +38,7 @@ (do phase.monad [lengthA (analysis/type.with_type Nat (phase archive lengthC)) - _ (analysis/type.infer (type (Array :var:)))] + _ (analysis/type.infer (type_literal (Array :var:)))] (in {analysis.#Extension extension (list lengthA)}))))])) (def array::length @@ -49,7 +49,7 @@ (<| analysis/type.with_var (function (_ [@var :var:])) (do phase.monad - [arrayA (analysis/type.with_type (type (Array :var:)) + [arrayA (analysis/type.with_type (type_literal (Array :var:)) (phase archive arrayC)) _ (analysis/type.infer Nat)] (in {analysis.#Extension extension (list arrayA)}))))])) @@ -64,7 +64,7 @@ (do phase.monad [indexA (analysis/type.with_type Nat (phase archive indexC)) - arrayA (analysis/type.with_type (type (Array :var:)) + arrayA (analysis/type.with_type (type_literal (Array :var:)) (phase archive arrayC)) _ (analysis/type.infer :var:)] (in {analysis.#Extension extension (list indexA arrayA)}))))])) @@ -81,9 +81,9 @@ (phase archive indexC)) valueA (analysis/type.with_type :var: (phase archive valueC)) - arrayA (analysis/type.with_type (type (Array :var:)) + arrayA (analysis/type.with_type (type_literal (Array :var:)) (phase archive arrayC)) - _ (analysis/type.infer (type (Array :var:)))] + _ (analysis/type.infer (type_literal (Array :var:)))] (in {analysis.#Extension extension (list indexA valueA arrayA)}))))])) (def array::delete @@ -96,9 +96,9 @@ (do phase.monad [indexA (analysis/type.with_type Nat (phase archive indexC)) - arrayA (analysis/type.with_type (type (Array :var:)) + arrayA (analysis/type.with_type (type_literal (Array :var:)) (phase archive arrayC)) - _ (analysis/type.infer (type (Array :var:)))] + _ (analysis/type.infer (type_literal (Array :var:)))] (in {analysis.#Extension extension (list indexA arrayA)}))))])) (def bundle::array @@ -117,7 +117,7 @@ Any)) (def Object - (for @.php (type (ffi.Object Any)) + (for @.php (type_literal (ffi.Object Any)) Any)) (def Function @@ -200,7 +200,7 @@ (do [! phase.monad] [formatA (analysis/type.with_type Text (phase archive formatC)) - dataA (analysis/type.with_type (type (Array (I64 Any))) + dataA (analysis/type.with_type (type_literal (Array (I64 Any))) (phase archive dataC)) _ (analysis/type.infer Text)] (in {analysis.#Extension extension (list formatA dataA)})))])) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/python.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/python.lux index cc77fa604..d44c8f5de 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/python.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/python.lux @@ -38,7 +38,7 @@ (do phase.monad [lengthA (analysis/type.expecting Nat (phase archive lengthC)) - _ (analysis/type.inference (type (array.Array' :read: :write:)))] + _ (analysis/type.inference (type_literal (array.Array' :read: :write:)))] (in {analysis.#Extension extension (list lengthA)}))))])) (def array::length @@ -51,7 +51,7 @@ analysis/type.with_var (function (_ [@write :write:])) (do phase.monad - [arrayA (analysis/type.expecting (type (array.Array' :read: :write:)) + [arrayA (analysis/type.expecting (type_literal (array.Array' :read: :write:)) (phase archive arrayC)) _ (analysis/type.inference Nat)] (in {analysis.#Extension extension (list arrayA)}))))])) @@ -68,7 +68,7 @@ (do phase.monad [indexA (analysis/type.expecting Nat (phase archive indexC)) - arrayA (analysis/type.expecting (type (array.Array' :read: :write:)) + arrayA (analysis/type.expecting (type_literal (array.Array' :read: :write:)) (phase archive arrayC)) _ (analysis/type.inference :read:)] (in {analysis.#Extension extension (list indexA arrayA)}))))])) @@ -87,9 +87,9 @@ (phase archive indexC)) valueA (analysis/type.expecting :write: (phase archive valueC)) - arrayA (analysis/type.expecting (type (array.Array' :read: :write:)) + arrayA (analysis/type.expecting (type_literal (array.Array' :read: :write:)) (phase archive arrayC)) - _ (analysis/type.inference (type (array.Array' :read: :write:)))] + _ (analysis/type.inference (type_literal (array.Array' :read: :write:)))] (in {analysis.#Extension extension (list indexA valueA arrayA)}))))])) (def array::delete @@ -104,9 +104,9 @@ (do phase.monad [indexA (analysis/type.expecting Nat (phase archive indexC)) - arrayA (analysis/type.expecting (type (array.Array' :read: :write:)) + arrayA (analysis/type.expecting (type_literal (array.Array' :read: :write:)) (phase archive arrayC)) - _ (analysis/type.inference (type (array.Array' :read: :write:)))] + _ (analysis/type.inference (type_literal (array.Array' :read: :write:)))] (in {analysis.#Extension extension (list indexA arrayA)}))))])) (def bundle::array @@ -125,7 +125,7 @@ Any)) (def Object - (for @.python (type (ffi.Object Any)) + (for @.python (type_literal (ffi.Object Any)) Any)) (def Function diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/ruby.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/ruby.lux index 57f47077e..b43fb8c4f 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/ruby.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/ruby.lux @@ -38,7 +38,7 @@ (do phase.monad [lengthA (<| (analysis/type.expecting Nat) (phase archive lengthC)) - _ (analysis/type.inference (type (array.Array' :read: :write:)))] + _ (analysis/type.inference (type_literal (array.Array' :read: :write:)))] (in {analysis.#Extension extension (list lengthA)}))))])) (def array::length @@ -51,7 +51,7 @@ analysis/type.with_var (function (_ [@write :write:])) (do phase.monad - [arrayA (<| (analysis/type.expecting (type (array.Array' :read: :write:))) + [arrayA (<| (analysis/type.expecting (type_literal (array.Array' :read: :write:))) (phase archive arrayC)) _ (analysis/type.inference Nat)] (in {analysis.#Extension extension (list arrayA)}))))])) @@ -68,7 +68,7 @@ (do phase.monad [indexA (<| (analysis/type.expecting Nat) (phase archive indexC)) - arrayA (<| (analysis/type.expecting (type (array.Array' :read: :write:))) + arrayA (<| (analysis/type.expecting (type_literal (array.Array' :read: :write:))) (phase archive arrayC)) _ (analysis/type.inference :read:)] (in {analysis.#Extension extension (list indexA arrayA)}))))])) @@ -87,9 +87,9 @@ (phase archive indexC)) valueA (<| (analysis/type.expecting :write:) (phase archive valueC)) - arrayA (<| (analysis/type.expecting (type (array.Array' :read: :write:))) + arrayA (<| (analysis/type.expecting (type_literal (array.Array' :read: :write:))) (phase archive arrayC)) - _ (analysis/type.inference (type (array.Array' :read: :write:)))] + _ (analysis/type.inference (type_literal (array.Array' :read: :write:)))] (in {analysis.#Extension extension (list indexA valueA arrayA)}))))])) (def array::delete @@ -104,9 +104,9 @@ (do phase.monad [indexA (<| (analysis/type.expecting Nat) (phase archive indexC)) - arrayA (<| (analysis/type.expecting (type (array.Array' :read: :write:))) + arrayA (<| (analysis/type.expecting (type_literal (array.Array' :read: :write:))) (phase archive arrayC)) - _ (analysis/type.inference (type (array.Array' :read: :write:)))] + _ (analysis/type.inference (type_literal (array.Array' :read: :write:)))] (in {analysis.#Extension extension (list indexA arrayA)}))))])) (def bundle::array @@ -125,7 +125,7 @@ Any)) (def Object - (for @.ruby (type (ffi.Object Any)) + (for @.ruby (type_literal (ffi.Object Any)) Any)) (def Function diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/scheme.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/scheme.lux index bb57f5668..0220eb1f4 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/scheme.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/scheme.lux @@ -38,7 +38,7 @@ (do phase.monad [lengthA (analysis/type.with_type Nat (phase archive lengthC)) - _ (analysis/type.infer (type (Array :var:)))] + _ (analysis/type.infer (type_literal (Array :var:)))] (in {analysis.#Extension extension (list lengthA)}))))])) (def array::length @@ -49,7 +49,7 @@ (<| analysis/type.with_var (function (_ [@var :var:])) (do phase.monad - [arrayA (analysis/type.with_type (type (Array :var:)) + [arrayA (analysis/type.with_type (type_literal (Array :var:)) (phase archive arrayC)) _ (analysis/type.infer Nat)] (in {analysis.#Extension extension (list arrayA)}))))])) @@ -64,7 +64,7 @@ (do phase.monad [indexA (analysis/type.with_type Nat (phase archive indexC)) - arrayA (analysis/type.with_type (type (Array :var:)) + arrayA (analysis/type.with_type (type_literal (Array :var:)) (phase archive arrayC)) _ (analysis/type.infer :var:)] (in {analysis.#Extension extension (list indexA arrayA)}))))])) @@ -81,9 +81,9 @@ (phase archive indexC)) valueA (analysis/type.with_type :var: (phase archive valueC)) - arrayA (analysis/type.with_type (type (Array :var:)) + arrayA (analysis/type.with_type (type_literal (Array :var:)) (phase archive arrayC)) - _ (analysis/type.infer (type (Array :var:)))] + _ (analysis/type.infer (type_literal (Array :var:)))] (in {analysis.#Extension extension (list indexA valueA arrayA)}))))])) (def array::delete @@ -96,9 +96,9 @@ (do phase.monad [indexA (analysis/type.with_type Nat (phase archive indexC)) - arrayA (analysis/type.with_type (type (Array :var:)) + arrayA (analysis/type.with_type (type_literal (Array :var:)) (phase archive arrayC)) - _ (analysis/type.infer (type (Array :var:)))] + _ (analysis/type.infer (type_literal (Array :var:)))] (in {analysis.#Extension extension (list indexA arrayA)}))))])) (def bundle::array diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/jvm.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/jvm.lux index 21f260fb8..e2833a6c1 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/jvm.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/jvm.lux @@ -87,13 +87,13 @@ [type ["[0]" check (.only Check)]]]]) -(type: Operation +(type Operation (directive.Operation Anchor (Bytecode Any) Definition)) (def signature (|>> type.signature signature.signature)) (def reflection (|>> type.reflection reflection.reflection)) -(type: Declaration +(type Declaration [Text (List (Type Var))]) (def declaration @@ -143,7 +143,7 @@ ["final" field.final] ["default" modifier.empty]))))) -(type: Annotation Any) +(type Annotation Any) (def annotation (Parser Annotation) @@ -153,7 +153,7 @@ (Parser (Type Value)) (.then parser.value .text)) -(type: Constant +(type Constant [Text (List Annotation) (Type Value) Code]) (def constant @@ -167,7 +167,7 @@ .any ))) -(type: Variable +(type Variable [Text (Modifier field.Field) (Modifier field.Field) Bit (List Annotation) (Type Value)]) (def variable @@ -183,7 +183,7 @@ ..field_type ))) -(type: Field +(type Field (Variant {#Constant Constant} {#Variable Variable})) @@ -195,7 +195,7 @@ ..variable )) -(type: (Method_Definition a) +(type (Method_Definition a) (Variant {#Constructor (jvm.Constructor a)} {#Virtual_Method (jvm.Virtual_Method a)} diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux index 0b905495a..ac8d969ab 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux @@ -385,7 +385,7 @@ })))] [Binary|Python (Primitive "bytearray")] - [Binary|DEFAULT (type (array.Array (I64 Any)))] + [Binary|DEFAULT (type_literal (array.Array (I64 Any)))] ) (def (swapped original replacement) @@ -432,7 +432,7 @@ (///.lifted meta.target)) [_ _ name] (evaluate! archive Text nameC) [_ handlerV] ( archive (as Text name) - (let [raw_type (type )] + (let [raw_type (type_literal )] (case target_platform (^.or (pattern (static @.jvm)) (pattern (static @.js))) @@ -494,7 +494,7 @@ [[_ programA] (<| /////directive.lifted_analysis scope.with typeA.fresh - (typeA.expecting (type (-> (List Text) (IO Any)))) + (typeA.expecting (type_literal (-> (List Text) (IO Any)))) (analyse archive programC))] (/////directive.lifted_synthesis (synthesize archive programA)))) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/jvm/host.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/jvm/host.lux index 772a680e6..354be5da3 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/jvm/host.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/jvm/host.lux @@ -711,7 +711,7 @@ valueG putG))))])) -(type: Input +(type Input (Typed Synthesis)) (def input @@ -1032,7 +1032,7 @@ [synthesis.#F64_Fork] [synthesis.#Text_Fork])))) -(type: Mapping +(type Mapping (Dictionary Synthesis Variable)) (def (normalize_method_body mapping) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/runtime.lux index 20b1afabf..5032d0f0a 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/runtime.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/runtime.lux @@ -42,7 +42,7 @@ 0) (with_template [ ] - [(type: .public + [(type .public ( [_.Tag Register] (Expression Any) (Expression Any)))] [Operation /////generation.Operation] @@ -51,7 +51,7 @@ [Bundle /////generation.Bundle] ) -(type: .public (Generator i) +(type .public (Generator i) (-> Phase Archive i (Operation (Expression Any)))) (def .public unit diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/extension.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/extension.lux index 6dde26d12..5e96d3ec3 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/extension.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/extension.lux @@ -57,7 +57,7 @@ )))))))))) (with_template [ ] - [(type: .public (Arity )) + [(type .public (Arity )) (def .public (arity ))] [0 Nullary nullary] @@ -66,7 +66,7 @@ [3 Trinary trinary] ) -(type: .public (Variadic of) +(type .public (Variadic of) (-> (List of) of)) (def .public (variadic extension) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/js/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/js/runtime.lux index fc779ff8c..28c22f430 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/js/runtime.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/js/runtime.lux @@ -40,7 +40,7 @@ ["[0]" unit]]]]]]) (with_template [ ] - [(type: .public + [(type .public ( [Register Text] Expression Statement))] [Operation /////generation.Operation] @@ -49,13 +49,13 @@ [Bundle /////generation.Bundle] ) -(type: .public (Generator i) +(type .public (Generator i) (-> Phase Archive i (Operation Expression))) -(type: .public Phase! +(type .public Phase! (-> Phase Archive Synthesis (Operation Statement))) -(type: .public (Generator! i) +(type .public (Generator! i) (-> Phase! Phase Archive i (Operation Statement))) (def .public high diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/field/constant.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/field/constant.lux index 684c05c2e..8e171cfd2 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/field/constant.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/field/constant.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Type type) + [lux (.except Type) [data [collection ["[0]" sequence]]] diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/apply.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/apply.lux index b31f0233b..6bf5d7dec 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/apply.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/apply.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Type Label type) + [lux (.except Type Label) [abstract ["[0]" monad (.only do)]] [control diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/implementation.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/implementation.lux index 86965220b..81c42a003 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/implementation.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/implementation.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Type Label type) + [lux (.except Type Label) [data [collection ["[0]" list]]] diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/init.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/init.lux index d60aad8a3..d8ba5543d 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/init.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/init.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Type type) + [lux (.except Type) [abstract ["[0]" monad]] [control diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/new.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/new.lux index e8ce71290..1daa92777 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/new.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/new.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Type type) + [lux (.except Type) [abstract ["[0]" monad (.only do)]] [data diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/reset.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/reset.lux index faff66f47..f592a3aba 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/reset.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/reset.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Type type) + [lux (.except Type) [data [collection ["[0]" list (.use "[1]#[0]" functor)]]] diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/runtime.lux index fc28510ff..a182ed733 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/runtime.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/runtime.lux @@ -63,17 +63,17 @@ ["[0]" registry (.only Registry)] ["[0]" unit]]]]]]]) -(type: .public Byte_Code +(type .public Byte_Code Binary) -(type: .public Definition +(type .public Definition [Text Byte_Code]) -(type: .public Anchor +(type .public Anchor [Label Register]) (with_template [ ] - [(type: .public + [(type .public ( Anchor (Bytecode Any) Definition))] [Operation generation.Operation] @@ -83,10 +83,10 @@ [Extender generation.Extender] ) -(type: .public (Generator i) +(type .public (Generator i) (-> Phase Archive i (Operation (Bytecode Any)))) -(type: .public Host +(type .public Host (generation.Host (Bytecode Any) Definition)) (def .public (class_name [module id]) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/value.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/value.lux index 8421401c5..365da0d4d 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/value.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/value.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Type Primitive type) + [lux (.except Type Primitive) [target [jvm ["_" bytecode (.only Bytecode)] diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/lua/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/lua/runtime.lux index e23a2c50d..20a32d95a 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/lua/runtime.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/lua/runtime.lux @@ -40,7 +40,7 @@ ["[0]" unit]]]]]]) (with_template [ ] - [(type: .public + [(type .public ( [Register Label] Expression Statement))] [Operation /////generation.Operation] @@ -49,13 +49,13 @@ [Bundle /////generation.Bundle] ) -(type: .public (Generator i) +(type .public (Generator i) (-> Phase Archive i (Operation Expression))) -(type: .public Phase! +(type .public Phase! (-> Phase Archive Synthesis (Operation Statement))) -(type: .public (Generator! i) +(type .public (Generator! i) (-> Phase! Phase Archive i (Operation Statement))) (def .public unit diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/runtime.lux index 27e557f1f..d8549fb2c 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/runtime.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/runtime.lux @@ -39,7 +39,7 @@ ["[0]" artifact (.only Registry)]]]]]]) (with_template [ ] - [(type: .public + [(type .public ( [Nat Label] Expression Statement))] [Operation /////generation.Operation] @@ -48,13 +48,13 @@ [Bundle /////generation.Bundle] ) -(type: .public (Generator i) +(type .public (Generator i) (-> Phase Archive i (Operation Expression))) -(type: .public Phase! +(type .public Phase! (-> Phase Archive Synthesis (Operation Statement))) -(type: .public (Generator! i) +(type .public (Generator! i) (-> Phase! Phase Archive i (Operation Statement))) (def .public unit diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/python/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/python/runtime.lux index 41fbd5f78..a9cf3bbaa 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/python/runtime.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/python/runtime.lux @@ -42,7 +42,7 @@ ["[0]" unit]]]]]]) (with_template [ ] - [(type: .public + [(type .public ( Register (Expression Any) (Statement Any)))] [Operation /////generation.Operation] @@ -51,13 +51,13 @@ [Bundle /////generation.Bundle] ) -(type: .public Phase! +(type .public Phase! (-> Phase Archive Synthesis (Operation (Statement Any)))) -(type: .public (Generator! i) +(type .public (Generator! i) (-> Phase! Phase Archive i (Operation (Statement Any)))) -(type: .public (Generator i) +(type .public (Generator i) (-> Phase Archive i (Operation (Expression Any)))) (def prefix diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/procedure/common.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/procedure/common.lux index 32bc797c5..9f27e9c70 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/procedure/common.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/procedure/common.lux @@ -25,13 +25,13 @@ ["[0]T" loop])) ... [Types] -(type: .public Translator +(type .public Translator (-> ls.Synthesis (Meta Expression))) -(type: .public Proc +(type .public Proc (-> Translator (List ls.Synthesis) (Meta Expression))) -(type: .public Bundle +(type .public Bundle (Dict Text Proc)) ... [Utils] diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/runtime.lux index ea448fa0a..d4a118da0 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/runtime.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/runtime.lux @@ -45,7 +45,7 @@ 0) (with_template [ ] - [(type: .public + [(type .public ( _.SVar _.Expression _.Expression))] [Operation /////generation.Operation] @@ -54,7 +54,7 @@ [Bundle /////generation.Bundle] ) -(type: .public (Generator i) +(type .public (Generator i) (-> Phase Archive i (Operation Expression))) (def .public unit diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/reference.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/reference.lux index 62f559549..2ef7aa07e 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/reference.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/reference.lux @@ -53,7 +53,7 @@ "m" (%.nat module) "a" (%.nat artifact))) -(type: .public (System expression) +(type .public (System expression) (Interface (is (-> Text expression) constant') diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/ruby/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/ruby/runtime.lux index f1af54d33..b1946cee6 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/ruby/runtime.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/ruby/runtime.lux @@ -41,7 +41,7 @@ ["[0]" registry (.only Registry)]]]]]]) (with_template [ ] - [(type: .public + [(type .public ( Register Expression Statement))] [Operation /////generation.Operation] @@ -50,13 +50,13 @@ [Bundle /////generation.Bundle] ) -(type: .public (Generator i) +(type .public (Generator i) (-> Phase Archive i (Operation Expression))) -(type: .public Phase! +(type .public Phase! (-> Phase Archive Synthesis (Operation Statement))) -(type: .public (Generator! i) +(type .public (Generator! i) (-> Phase! Phase Archive i (Operation Statement))) (def .public unit diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/runtime.lux index 746cf6aff..e923616e4 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/runtime.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/runtime.lux @@ -43,7 +43,7 @@ 0) (with_template [ ] - [(type: .public + [(type .public ( Var Expression Expression))] [Operation /////generation.Operation] @@ -52,7 +52,7 @@ [Bundle /////generation.Bundle] ) -(type: .public (Generator i) +(type .public (Generator i) (-> Phase Archive i (Operation Expression))) (def .public unit diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/case.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/case.lux index a2a43f7d5..507e0b5fa 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/case.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/case.lux @@ -348,7 +348,7 @@ (def .public pattern_matching_error "Invalid expression for pattern-matching.") -(type: .public Storage +(type .public Storage (Record [#bindings (Set Register) #dependencies (Set Variable)])) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/loop.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/loop.lux index e31a5ca84..42d9ed6ae 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/loop.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/loop.lux @@ -22,7 +22,7 @@ ["[0]" reference (.only) ["[0]" variable (.only Register Variable)]]]]) -(type: .public (Transform a) +(type .public (Transform a) (-> a (Maybe a))) (def .public (register_optimization offset) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/variable.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/variable.lux index 29837c146..43d6faefb 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/variable.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/variable.lux @@ -36,7 +36,7 @@ (-- register) register)) -(type: (Remover a) +(type (Remover a) (-> Register (-> a a))) (def (remove_local_from_path remove_local redundant) @@ -175,7 +175,7 @@ {/.#Extension name inputs} {/.#Extension name (list#each again inputs)}))) -(type: Redundancy +(type Redundancy (Dictionary Register Bit)) (def initial @@ -198,7 +198,7 @@ (-> Arity Redundancy) (product.right (..extended 0 (++ arity) ..initial))) -(type: (Optimization a) +(type (Optimization a) (-> [Redundancy a] (Try [Redundancy a]))) (def (list_optimization optimization) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/program.lux b/stdlib/source/library/lux/tool/compiler/language/lux/program.lux index 34b894a90..509994009 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/program.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/program.lux @@ -21,7 +21,7 @@ [module ["[0]" descriptor]]]]]) -(type: .public (Program expression directive) +(type .public (Program expression directive) (-> unit.ID expression directive)) (def .public name diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/syntax.lux b/stdlib/source/library/lux/tool/compiler/language/lux/syntax.lux index 840502786..36daec361 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/syntax.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/syntax.lux @@ -80,7 +80,7 @@ ... producing the locations only involved building them, without any need ... for pattern-matching and de-structuring. -(type: Char +(type Char Nat) (with_template [ ] @@ -115,7 +115,7 @@ [!n/- "lux i64 -"] ) -(type: .public Aliases +(type .public Aliases (Dictionary Text Text)) (def .public no_aliases @@ -197,7 +197,7 @@ [{.#Left [[where offset source_code] (exception.error ..end_of_file current_module)]}])) -(type: (Parser a) +(type (Parser a) (-> Source (Either [Source Text] [Source a]))) (def !with_char+ diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis.lux b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis.lux index 74a7e41a1..2740b6bce 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis.lux @@ -41,10 +41,10 @@ ["[0]" reference (.only Reference) ["[0]" variable (.only Register Variable)]]]]]) -(type: .public Resolver +(type .public Resolver (Dictionary Variable Variable)) -(type: .public State +(type .public State (Record [#locals Nat ... https://en.wikipedia.org/wiki/Currying @@ -59,16 +59,16 @@ [#locals 0 #currying? false]) -(type: .public (Road value next) +(type .public (Road value next) (Record [#when value #then next])) -(type: .public (Fork value next) +(type .public (Fork value next) [(Road value next) (List (Road value next))]) -(type: .public (Path' s) +(type .public (Path' s) (Variant {#Pop} {#Bind Register} @@ -81,18 +81,18 @@ {#Alt (Path' s) (Path' s)} {#Then s})) -(type: .public (Abstraction' s) +(type .public (Abstraction' s) (Record [#environment (Environment s) #arity Arity #body s])) -(type: .public (Apply' s) +(type .public (Apply' s) (Record [#function s #arguments (List s)])) -(type: .public (Branch s) +(type .public (Branch s) (Variant {#Exec s s} {#Let s Register s} @@ -100,29 +100,29 @@ {#Get (List Member) s} {#Case s (Path' s)})) -(type: .public (Scope s) +(type .public (Scope s) (Record [#start Register #inits (List s) #iteration s])) -(type: .public (Loop s) +(type .public (Loop s) (Variant {#Scope (Scope s)} {#Again (List s)})) -(type: .public (Function s) +(type .public (Function s) (Variant {#Abstraction (Abstraction' s)} {#Apply (Apply' s)})) -(type: .public (Control s) +(type .public (Control s) (Variant {#Branch (Branch s)} {#Loop (Loop s)} {#Function (Function s)})) -(type: .public Synthesis +(type .public Synthesis (Rec Synthesis (Variant {#Simple Simple} @@ -132,7 +132,7 @@ {#Extension (Extension Synthesis)}))) (with_template [ ] - [(type: .public + [(type .public ( ..State Analysis Synthesis))] [State+ extension.State] @@ -142,7 +142,7 @@ [Bundle extension.Bundle] ) -(type: .public Path +(type .public Path (Path' Synthesis)) (def .public path/pop @@ -202,10 +202,10 @@ [path/seq ..#Seq] ) -(type: .public Abstraction +(type .public Abstraction (Abstraction' Synthesis)) -(type: .public Apply +(type .public Apply (Apply' Synthesis)) (def .public unit diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access.lux b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access.lux index 179a48ca8..f599f4d90 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access.lux @@ -12,7 +12,7 @@ ["[1][0]" side (.only Side)] ["[1][0]" member (.only Member)]]) -(type: .public Access +(type .public Access (Variant {#Side Side} {#Member Member})) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/member.lux b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/member.lux index 2618b1421..667775b7d 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/member.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/member.lux @@ -13,7 +13,7 @@ [number ["[0]" nat]]]]]) -(type: .public Member +(type .public Member (Record [#lefts Nat #right? Bit])) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/side.lux b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/side.lux index 0e1f79079..0f8ef1625 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/side.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/side.lux @@ -13,7 +13,7 @@ [number ["[0]" nat]]]]]) -(type: .public Side +(type .public Side (Record [#lefts Nat #right? Bit])) diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/simple.lux b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/simple.lux index ce183bf7a..32a921934 100644 --- a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/simple.lux +++ b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/simple.lux @@ -19,7 +19,7 @@ ["i" int] ["f" frac]]]]]) -(type: .public Simple +(type .public Simple (Variant {#Bit Bit} {#I64 I64} diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive.lux b/stdlib/source/library/lux/tool/compiler/meta/archive.lux index 4bdbb734f..b762d8c85 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/archive.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/archive.lux @@ -38,7 +38,7 @@ [/// [version (.only Version)]]]) -(type: .public Output +(type .public Output (Sequence [artifact.ID (Maybe Text) Binary])) (exception: .public (unknown_document [module descriptor.Module @@ -65,7 +65,7 @@ [module_is_only_reserved] ) -(type: .public (Entry a) +(type .public (Entry a) (Record [#module (Module a) #output Output @@ -213,10 +213,10 @@ (dictionary.entries +resolver)))) abstraction))) - (type: Reservation + (type Reservation [descriptor.Module module.ID]) - (type: Frozen + (type Frozen [Version module.ID (List Reservation)]) (def reader diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive/artifact.lux b/stdlib/source/library/lux/tool/compiler/meta/archive/artifact.lux index 77a4410d1..f458691b5 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/archive/artifact.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/archive/artifact.lux @@ -14,10 +14,10 @@ ["[0]" / ["[1][0]" category (.only Category)]]) -(type: .public ID +(type .public ID Nat) -(type: .public Artifact +(type .public Artifact (Record [#id ID #category Category diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive/artifact/category.lux b/stdlib/source/library/lux/tool/compiler/meta/archive/artifact/category.lux index 43ae87386..a8317290c 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/archive/artifact/category.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/archive/artifact/category.lux @@ -16,7 +16,7 @@ [///// [arity (.only Arity)]]) -(type: .public Definition +(type .public Definition [Text (Maybe [Arity [Nat Nat]])]) (def .public definition_equivalence @@ -30,7 +30,7 @@ )) )) -(type: .public Category +(type .public Category (Variant {#Anonymous} {#Definition Definition} diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive/module.lux b/stdlib/source/library/lux/tool/compiler/meta/archive/module.lux index 76822e0e1..6fbde6c03 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/archive/module.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/archive/module.lux @@ -5,14 +5,14 @@ [descriptor (.only Descriptor)] [document (.only Document)]]) -(type: .public ID +(type .public ID Nat) (def .public runtime ID 0) -(type: .public (Module a) +(type .public (Module a) (Record [#id ID #descriptor Descriptor diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive/module/descriptor.lux b/stdlib/source/library/lux/tool/compiler/meta/archive/module/descriptor.lux index b3fc0fb09..c67c50d15 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/archive/module/descriptor.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/archive/module/descriptor.lux @@ -21,14 +21,14 @@ [world [file (.only Path)]]]]) -(type: .public Module +(type .public Module Text) (def .public runtime Module "") -(type: .public Descriptor +(type .public Descriptor (Record [#name Module #file Path diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive/signature.lux b/stdlib/source/library/lux/tool/compiler/meta/archive/signature.lux index beb776044..086b11c12 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/archive/signature.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/archive/signature.lux @@ -20,7 +20,7 @@ [//// ["[0]" version (.only Version)]]) -(type: .public Signature +(type .public Signature (Record [#name Symbol #version Version])) diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive/unit.lux b/stdlib/source/library/lux/tool/compiler/meta/archive/unit.lux index 175dda1d4..82d29c16b 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/archive/unit.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/archive/unit.lux @@ -17,7 +17,7 @@ ["[0]" module] ["[0]" artifact]]) -(type: .public ID +(type .public ID (Record [#module module.ID #artifact artifact.ID])) diff --git a/stdlib/source/library/lux/tool/compiler/meta/cache/dependency/module.lux b/stdlib/source/library/lux/tool/compiler/meta/cache/dependency/module.lux index 8b3dbdcfc..0a9b6028f 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/cache/dependency/module.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/cache/dependency/module.lux @@ -23,14 +23,14 @@ ["[0]" descriptor (.only Descriptor)] ["[0]" document (.only Document)]]]]) -(type: .public Ancestry +(type .public Ancestry (Set descriptor.Module)) (def fresh Ancestry (set.empty text.hash)) -(type: .public Graph +(type .public Graph (Dictionary descriptor.Module Ancestry)) (def empty @@ -41,7 +41,7 @@ (-> Graph (List descriptor.Module)) dictionary.keys) -(type: .public Dependency +(type .public Dependency (Record [#module descriptor.Module #imports Ancestry])) @@ -81,7 +81,7 @@ (maybe.else ..fresh))] (set.member? target_ancestry source))) -(type: .public (Order a) +(type .public (Order a) (List [descriptor.Module [module.ID (archive.Entry a)]])) (def .public (load_order key archive) diff --git a/stdlib/source/library/lux/tool/compiler/meta/cache/purge.lux b/stdlib/source/library/lux/tool/compiler/meta/cache/purge.lux index afa78e37d..885a3f5d4 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/cache/purge.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/cache/purge.lux @@ -31,10 +31,10 @@ ["[0]" module (.only) ["[0]" descriptor (.only Descriptor)]]]]]) -(type: .public Cache +(type .public Cache [Bit descriptor.Module module.ID (module.Module Any) Registry]) -(type: .public Purge +(type .public Purge (Dictionary descriptor.Module module.ID)) ... TODO: Make the monad parameterizable. diff --git a/stdlib/source/library/lux/tool/compiler/meta/cli.lux b/stdlib/source/library/lux/tool/compiler/meta/cli.lux index 3c502b3c7..685467d32 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/cli.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/cli.lux @@ -33,22 +33,22 @@ ["[0]" / ["[1][0]" compiler (.only Compiler)]]) -(type: .public Host_Dependency +(type .public Host_Dependency Path) -(type: .public Library +(type .public Library Path) -(type: .public Source +(type .public Source Path) -(type: .public Target +(type .public Target Path) -(type: .public Module +(type .public Module descriptor.Module) -(type: .public Compilation +(type .public Compilation (Record [#host_dependencies (List Host_Dependency) #libraries (List Library) @@ -58,13 +58,13 @@ #module Module #configuration Configuration])) -(type: .public Interpretation +(type .public Interpretation ..Compilation) -(type: .public Export +(type .public Export [(List Source) Target]) -(type: .public Service +(type .public Service (Variant {#Compilation Compilation} {#Interpretation Interpretation} diff --git a/stdlib/source/library/lux/tool/compiler/meta/cli/compiler.lux b/stdlib/source/library/lux/tool/compiler/meta/cli/compiler.lux index 7e3a4a569..3f29a43a4 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/cli/compiler.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/cli/compiler.lux @@ -18,7 +18,7 @@ [meta ["[0]" symbol]]]]) -(type: .public Compiler +(type .public Compiler (Record [#definition Symbol #parameters (List Text)])) diff --git a/stdlib/source/library/lux/tool/compiler/meta/context.lux b/stdlib/source/library/lux/tool/compiler/meta/context.lux index 17258fa87..126533891 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/context.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/context.lux @@ -5,10 +5,10 @@ [world [file (.only Path)]]]]) -(type: .public Extension +(type .public Extension Text) -(type: .public Context +(type .public Context (Record [#host Target #host_module_extension Extension diff --git a/stdlib/source/library/lux/tool/compiler/meta/import.lux b/stdlib/source/library/lux/tool/compiler/meta/import.lux index 562904334..b18de6f44 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/import.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/import.lux @@ -27,7 +27,7 @@ ["[0]" file]]]]) (def Action - (type (All (_ a) (Async (Try a))))) + (type_literal (All (_ a) (Async (Try a))))) (exception: .public useless_tar_entry) @@ -37,7 +37,7 @@ "Module" (%.text module) "Library" (%.text library))) -(type: .public Import +(type .public Import (Dictionary file.Path Binary)) (def (import_library system library import) diff --git a/stdlib/source/library/lux/tool/compiler/meta/io.lux b/stdlib/source/library/lux/tool/compiler/meta/io.lux index 9274c9c1c..a7eb7545b 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/io.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/io.lux @@ -6,10 +6,10 @@ [world [file (.only Path System)]]]]) -(type: .public Context +(type .public Context Path) -(type: .public Code +(type .public Code Text) (def .public (safe system) diff --git a/stdlib/source/library/lux/tool/compiler/meta/io/archive.lux b/stdlib/source/library/lux/tool/compiler/meta/io/archive.lux index 2ee82990e..2c7b14da6 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/io/archive.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/io/archive.lux @@ -89,13 +89,13 @@ (archive.archived archive)))] (in (has .#modules modules (fresh_analysis_state host configuration))))) -(type: Definitions (Dictionary Text Any)) -(type: Analysers (Dictionary Text analysis.Handler)) -(type: Synthesizers (Dictionary Text synthesis.Handler)) -(type: Generators (Dictionary Text generation.Handler)) -(type: Directives (Dictionary Text directive.Handler)) +(type Definitions (Dictionary Text Any)) +(type Analysers (Dictionary Text analysis.Handler)) +(type Synthesizers (Dictionary Text synthesis.Handler)) +(type Generators (Dictionary Text generation.Handler)) +(type Directives (Dictionary Text directive.Handler)) -(type: Bundles +(type Bundles [Analysers Synthesizers Generators diff --git a/stdlib/source/library/lux/tool/compiler/meta/io/context.lux b/stdlib/source/library/lux/tool/compiler/meta/io/context.lux index 9909f8a5d..83cec862d 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/io/context.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/io/context.lux @@ -40,7 +40,7 @@ (exception.report "Module" (%.text module))) -(type: .public Extension +(type .public Extension Text) (def .public lux_extension @@ -137,7 +137,7 @@ {try.#Failure _} (async#in (exception.except ..cannot_read_module [module]))))) -(type: .public Enumeration +(type .public Enumeration (Dictionary file.Path Binary)) (def (context_listing fs context directory enumeration) @@ -159,7 +159,7 @@ (at ! conjoint)))) (def Action - (type (All (_ a) (Async (Try a))))) + (type_literal (All (_ a) (Async (Try a))))) (def (canonical fs context) (-> (file.System Async) Context (Action Context)) diff --git a/stdlib/source/library/lux/tool/compiler/meta/packager.lux b/stdlib/source/library/lux/tool/compiler/meta/packager.lux index 59d28df77..a7e8a095c 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/packager.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/packager.lux @@ -23,14 +23,14 @@ ["[0]" module (.only) ["[0]" descriptor]]]]) -(type: .public Packager +(type .public Packager (-> (Dictionary file.Path Binary) Archive (Maybe unit.ID) (Try (Either Binary (List [Text Binary]))))) -(type: .public Order +(type .public Order (List [module.ID (List artifact.ID)])) (def .public order diff --git a/stdlib/source/library/lux/tool/compiler/meta/packager/scheme.lux b/stdlib/source/library/lux/tool/compiler/meta/packager/scheme.lux index a574aab07..48ba3ea69 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/packager/scheme.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/packager/scheme.lux @@ -45,7 +45,7 @@ [generation (.only Context)]]]]]]) ... TODO: Delete ASAP -(type: (Action ! a) +(type (Action ! a) (! (Try a))) (def (then pre post) diff --git a/stdlib/source/library/lux/tool/compiler/phase.lux b/stdlib/source/library/lux/tool/compiler/phase.lux index f27b3a5e3..a0b4df481 100644 --- a/stdlib/source/library/lux/tool/compiler/phase.lux +++ b/stdlib/source/library/lux/tool/compiler/phase.lux @@ -20,7 +20,7 @@ [meta [archive (.only Archive)]]]) -(type: .public (Operation s o) +(type .public (Operation s o) (state.+State Try s o)) (def .public functor @@ -53,10 +53,10 @@ {try.#Failure error} {try.#Failure error}))))) -(type: .public (Phase s i o) +(type .public (Phase s i o) (-> Archive i (Operation s o))) -(type: .public Wrapper +(type .public Wrapper (All (_ s i o) (-> (Phase s i o) Any))) (def .public (result' state operation) diff --git a/stdlib/source/library/lux/tool/compiler/reference.lux b/stdlib/source/library/lux/tool/compiler/reference.lux index 116d4bf62..9f4b502c8 100644 --- a/stdlib/source/library/lux/tool/compiler/reference.lux +++ b/stdlib/source/library/lux/tool/compiler/reference.lux @@ -19,10 +19,10 @@ ["[0]" / ["[1][0]" variable (.only Variable)]]) -(type: .public Constant +(type .public Constant Symbol) -(type: .public Reference +(type .public Reference (Variant {#Variable Variable} {#Constant Constant})) diff --git a/stdlib/source/library/lux/tool/compiler/reference/variable.lux b/stdlib/source/library/lux/tool/compiler/reference/variable.lux index bb93abe4b..30f7b449d 100644 --- a/stdlib/source/library/lux/tool/compiler/reference/variable.lux +++ b/stdlib/source/library/lux/tool/compiler/reference/variable.lux @@ -16,10 +16,10 @@ ["n" nat] ["i" int]]]]]) -(type: .public Register +(type .public Register Nat) -(type: .public Variable +(type .public Variable (Variant {#Local Register} {#Foreign Register})) diff --git a/stdlib/source/library/lux/tool/compiler/version.lux b/stdlib/source/library/lux/tool/compiler/version.lux index 2fd579803..fa67df166 100644 --- a/stdlib/source/library/lux/tool/compiler/version.lux +++ b/stdlib/source/library/lux/tool/compiler/version.lux @@ -8,7 +8,7 @@ [number ["n" nat]]]]]) -(type: .public Version +(type .public Version Nat) (def range diff --git a/stdlib/source/library/lux/tool/interpreter.lux b/stdlib/source/library/lux/tool/interpreter.lux index ffad15a59..3b08f9ac2 100644 --- a/stdlib/source/library/lux/tool/interpreter.lux +++ b/stdlib/source/library/lux/tool/interpreter.lux @@ -161,7 +161,7 @@ codeT codeV)))) -(type: (Context anchor expression directive) +(type (Context anchor expression directive) (Record [#configuration Configuration #state (State+ anchor expression directive) diff --git a/stdlib/source/library/lux/tool/mediator.lux b/stdlib/source/library/lux/tool/mediator.lux index 2d41358ad..a397a4396 100644 --- a/stdlib/source/library/lux/tool/mediator.lux +++ b/stdlib/source/library/lux/tool/mediator.lux @@ -10,11 +10,11 @@ ["[0]" archive (.only Archive) [descriptor (.only Module)]]]]]) -(type: .public Source +(type .public Source Path) -(type: .public (Mediator !) +(type .public (Mediator !) (-> Archive Module (! Archive))) -(type: .public (Instancer ! d o) +(type .public (Instancer ! d o) (-> (file.System !) (List Source) (Compiler d o) (Mediator !))) diff --git a/stdlib/source/library/lux/type.lux b/stdlib/source/library/lux/type.lux index 5fd9c1cc7..256029a84 100644 --- a/stdlib/source/library/lux/type.lux +++ b/stdlib/source/library/lux/type.lux @@ -437,7 +437,7 @@ {.#Some value} (in (list (` ((~ casterC) (~ value)))))))))) -(type: Typed +(type Typed (Record [#type Code #expression Code])) diff --git a/stdlib/source/library/lux/type/check.lux b/stdlib/source/library/lux/type/check.lux index 0c91e0c24..09e496cec 100644 --- a/stdlib/source/library/lux/type/check.lux +++ b/stdlib/source/library/lux/type/check.lux @@ -59,19 +59,19 @@ "Expected" (//.format expected) "Actual" (//.format actual))) -(type: .public Var +(type .public Var Nat) -(type: Assumption +(type Assumption [Type Type]) -(type: .public (Check a) +(type .public (Check a) (-> Type_Context (Try [Type_Context a]))) -(type: (Checker a) +(type (Checker a) (-> (List Assumption) a a (Check (List Assumption)))) -(type: Type_Vars +(type Type_Vars (List [Var (Maybe Type)])) (def .public functor diff --git a/stdlib/source/library/lux/type/dynamic.lux b/stdlib/source/library/lux/type/dynamic.lux index 9c41cffff..0ae433481 100644 --- a/stdlib/source/library/lux/type/dynamic.lux +++ b/stdlib/source/library/lux/type/dynamic.lux @@ -45,9 +45,9 @@ (in (list (` (.let [[(~ g!type) (~ g!value)] ((~! ..representation) (~ value))] (.is ((~! try.Try) (~ type)) (.if (.at (~! type.equivalence) (~' =) - (.type (~ type)) (~ g!type)) + (.type_literal (~ type)) (~ g!type)) {try.#Success (.as (~ type) (~ g!value))} - ((~! exception.except) ..wrong_type [(.type (~ type)) (~ g!type)])))))))))) + ((~! exception.except) ..wrong_type [(.type_literal (~ type)) (~ g!type)])))))))))) (def .public (format value) (-> Dynamic (Try Text)) diff --git a/stdlib/source/library/lux/type/implicit.lux b/stdlib/source/library/lux/type/implicit.lux index 733760bf5..3b330f2c1 100644 --- a/stdlib/source/library/lux/type/implicit.lux +++ b/stdlib/source/library/lux/type/implicit.lux @@ -219,7 +219,7 @@ [actual_output (monad.mix check.monad ..on_argument member_type input_types)] (check.check expected_output actual_output))) -(type: Instance +(type Instance (Rec Instance (Record [#constructor Symbol diff --git a/stdlib/source/library/lux/type/primitive.lux b/stdlib/source/library/lux/type/primitive.lux index 0bddb9c84..4ab0e4e3d 100644 --- a/stdlib/source/library/lux/type/primitive.lux +++ b/stdlib/source/library/lux/type/primitive.lux @@ -22,7 +22,7 @@ ["[0]" symbol (.use "[1]#[0]" codec)]]]] ["[0]" //]) -(type: .public Frame +(type .public Frame (Record [#name Text #type_vars (List Code) @@ -87,10 +87,10 @@ abstraction_declaration (` ((~ (code.local name)) (~+ type_varsC))) representation_declaration (` ((~ g!Representation) (~+ type_varsC)))]] (..declaration [name type_varsC abstraction_declaration representation_declaration] - (` (.these (type: (~ export_policy) (~ abstraction_declaration) + (` (.these (type (~ export_policy) (~ abstraction_declaration) (Primitive (~ (code.text (symbol#encoded [current_module name]))) [(~+ type_varsC)])) - (type: (~ representation_declaration) + (type (~ representation_declaration) (~ representation_type)) (~+ primitives))))))) diff --git a/stdlib/source/library/lux/type/quotient.lux b/stdlib/source/library/lux/type/quotient.lux index bec09aeeb..8e96bfd3b 100644 --- a/stdlib/source/library/lux/type/quotient.lux +++ b/stdlib/source/library/lux/type/quotient.lux @@ -53,7 +53,7 @@ ] (.case (.type_of (~ class)) {.#Apply (~ g!%) {.#Apply (~ g!c) {.#Apply (~ g!t) (~ g!:quotient:)}}} - (.type (..Quotient (~ g!t) (~ g!c) (~ g!%))) + (.type_literal (..Quotient (~ g!t) (~ g!c) (~ g!%))) (~ g!_) (.undefined)))) diff --git a/stdlib/source/library/lux/type/refinement.lux b/stdlib/source/library/lux/type/refinement.lux index 4292f771c..a4054407c 100644 --- a/stdlib/source/library/lux/type/refinement.lux +++ b/stdlib/source/library/lux/type/refinement.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except type only) + [lux (.except only type) [abstract [predicate (.only Predicate)]] [control @@ -16,7 +16,7 @@ [#value t #predicate (Predicate t)]) - (type: .public (Refiner t %) + (.type .public (Refiner t %) (-> t (Maybe (Refined t %)))) (def .public (refiner predicate) @@ -94,7 +94,7 @@ ] (.case (.type_of (~ refiner)) {.#Apply (~ g!%) {.#Apply (~ g!t) (~ g!:refiner:)}} - (.type (..Refined (~ g!t) (~ g!%))) + (.type_literal (..Refined (~ g!t) (~ g!%))) (~ g!_) (.undefined)))) diff --git a/stdlib/source/library/lux/type/resource.lux b/stdlib/source/library/lux/type/resource.lux index dd1421e6a..0cc8df8bc 100644 --- a/stdlib/source/library/lux/type/resource.lux +++ b/stdlib/source/library/lux/type/resource.lux @@ -25,18 +25,18 @@ [type [primitive (.except)]]]]) -(type: .public (Procedure monad input output value) +(type .public (Procedure monad input output value) (-> input (monad [output value]))) -(type: .public (Linear monad value) +(type .public (Linear monad value) (All (_ keys) (Procedure monad keys keys value))) -(type: .public (Affine monad permissions value) +(type .public (Affine monad permissions value) (All (_ keys) (Procedure monad keys [permissions keys] value))) -(type: .public (Relevant monad permissions value) +(type .public (Relevant monad permissions value) (All (_ keys) (Procedure monad [permissions keys] keys value))) diff --git a/stdlib/source/library/lux/type/unit.lux b/stdlib/source/library/lux/type/unit.lux index 1b63245bf..bcc8f672c 100644 --- a/stdlib/source/library/lux/type/unit.lux +++ b/stdlib/source/library/lux/type/unit.lux @@ -68,7 +68,7 @@ [/ i./ p [p s] s] ) - (type: .public (Unit a) + (.type .public (Unit a) (Interface (is (-> Int (Qty Any a)) in) @@ -94,7 +94,7 @@ [(def .public (..unit [])) - (type: .public + (.type .public (~ (..type )))] [gram Gram] diff --git a/stdlib/source/library/lux/type/unit/scale.lux b/stdlib/source/library/lux/type/unit/scale.lux index c4aa8cbba..9eacbb81b 100644 --- a/stdlib/source/library/lux/type/unit/scale.lux +++ b/stdlib/source/library/lux/type/unit/scale.lux @@ -13,7 +13,7 @@ ["[0]" // (.only) ["/[1]" //]]) -(type: .public (Scale s) +(.type .public (Scale s) (Interface (is (All (_ u) (-> (//.Qty Any u) (//.Qty s u))) up) @@ -62,14 +62,14 @@ (scale [ratio.#numerator ratio.#denominator 1])) - (type: .public + (.type .public (~ (..type ))) (def .public (scale [ratio.#numerator 1 ratio.#denominator ])) - (type: .public + (.type .public (~ (..type )))] [ 1,000 kilo Kilo milli Milli] diff --git a/stdlib/source/library/lux/type/variance.lux b/stdlib/source/library/lux/type/variance.lux index 68c9b4af3..ac7e120d4 100644 --- a/stdlib/source/library/lux/type/variance.lux +++ b/stdlib/source/library/lux/type/variance.lux @@ -4,16 +4,16 @@ [meta ["[0]" symbol]]]]) -(type: .public (Co it) +(type .public (Co it) (-> Any it)) -(type: .public (Contra it) +(type .public (Contra it) (-> it Any)) -(type: .public (In it) +(type .public (In it) (-> it it)) -(type: .public (Mutable r w) +(type .public (Mutable r w) (Primitive "#Mutable" [(-> w r)])) (with_template [ ] @@ -27,10 +27,10 @@ [write (.-> w (..Mutable r w))] ) -(type: .public (Read_Only a) +(type .public (Read_Only a) (Mutable a Nothing)) -(type: .public (Write_Only a) +(type .public (Write_Only a) (Mutable Any a)) (with_template [ ] diff --git a/stdlib/source/library/lux/world/console.lux b/stdlib/source/library/lux/world/console.lux index 3017f0ba0..5c6285bd3 100644 --- a/stdlib/source/library/lux/world/console.lux +++ b/stdlib/source/library/lux/world/console.lux @@ -17,7 +17,7 @@ ["[0]" text (.only Char) ["%" \\format (.only format)]]]]]) -(type: .public (Console !) +(type .public (Console !) (Interface (is (-> [] (! (Try Char))) read) @@ -169,7 +169,7 @@ (All (_ !) (-> Text (Console !) (! (Try Any)))) (at console write (format message text.new_line))) -(type: .public (Mock s) +(type .public (Mock s) (Interface (is (-> s (Try [s Char])) on_read) diff --git a/stdlib/source/library/lux/world/db/jdbc.lux b/stdlib/source/library/lux/world/db/jdbc.lux index dca7d1581..1577e7104 100644 --- a/stdlib/source/library/lux/world/db/jdbc.lux +++ b/stdlib/source/library/lux/world/db/jdbc.lux @@ -50,16 +50,16 @@ (import java/sql/DriverManager ("static" getConnection [java/lang/String java/lang/String java/lang/String] "io" "try" java/sql/Connection)) -(type: .public Credentials +(type .public Credentials (Record [#url URL #user Text #password Text])) -(type: .public ID +(type .public ID Int) -(type: .public (Statement input) +(type .public (Statement input) (Record [#sql sql.Statement #input (Input input) @@ -79,7 +79,7 @@ (capability: .public (Can_Close !) (can_close Any (! (Try Any)))) -(type: .public (DB !) +(type .public (DB !) (Interface (is (Can_Execute !) execute) diff --git a/stdlib/source/library/lux/world/db/jdbc/input.lux b/stdlib/source/library/lux/world/db/jdbc/input.lux index d691dd330..47cc12b51 100644 --- a/stdlib/source/library/lux/world/db/jdbc/input.lux +++ b/stdlib/source/library/lux/world/db/jdbc/input.lux @@ -43,7 +43,7 @@ [setTimestamp java/sql/Timestamp] )))) -(type: .public (Input a) +(type .public (Input a) (-> a [Nat java/sql/PreparedStatement] (Try [Nat java/sql/PreparedStatement]))) diff --git a/stdlib/source/library/lux/world/db/jdbc/output.lux b/stdlib/source/library/lux/world/db/jdbc/output.lux index 1cfd859e2..92f52b003 100644 --- a/stdlib/source/library/lux/world/db/jdbc/output.lux +++ b/stdlib/source/library/lux/world/db/jdbc/output.lux @@ -47,7 +47,7 @@ (next [] "try" boolean) (close [] "io" "try" void))) -(type: .public (Output a) +(type .public (Output a) (-> [Nat java/sql/ResultSet] (Try [Nat a]))) (def .public functor diff --git a/stdlib/source/library/lux/world/db/sql.lux b/stdlib/source/library/lux/world/db/sql.lux index 90b27d4e6..a41ccf85b 100644 --- a/stdlib/source/library/lux/world/db/sql.lux +++ b/stdlib/source/library/lux/world/db/sql.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Source Definition function and or not type int) + [lux (.except Source Definition function and or not int) [control [monad (.only do)]] [data @@ -57,7 +57,7 @@ [(Statement' kind)] ) -(type: .public Alias +(type .public Alias Text) (def .public no_alias Alias "") @@ -67,7 +67,7 @@ ... SQL (with_template [ ] - [(type: .public + [(type .public (SQL ))] [Literal (Value' Literal')] @@ -97,8 +97,8 @@ [Statement (Statement' Any)] ) - (def Base_Query (.type (Query No_Where No_Having No_Order No_Group No_Limit No_Offset))) - (def Any_Query (.type (Query Any Any Any Any Any Any))) + (def Base_Query (.type_literal (Query No_Where No_Having No_Order No_Group No_Limit No_Offset))) + (def Any_Query (.type_literal (Query Any Any Any Any Any Any))) ... Only use this function for debugging purposes. ... Do not use this function to actually execute SQL code. diff --git a/stdlib/source/library/lux/world/file.lux b/stdlib/source/library/lux/world/file.lux index f67b82bc7..cbaeb56a0 100644 --- a/stdlib/source/library/lux/world/file.lux +++ b/stdlib/source/library/lux/world/file.lux @@ -38,10 +38,10 @@ ["[0]" instant (.only Instant)] ["[0]" duration]]]]))) -(type: .public Path +(type .public Path Text) -(`` (type: .public (System !) +(`` (type .public (System !) (Interface (is Text separator) @@ -510,7 +510,7 @@ node_fs)))))))))) @.python - (these (type: (Tuple/2 left right) + (these (type (Tuple/2 left right) (Primitive "python_tuple[2]" [left right])) (ffi.import PyFile @@ -967,13 +967,13 @@ (in verdict) (at fs directory? path)))) -(type: Mock_File +(type Mock_File (Record [#mock_last_modified Instant #mock_can_execute Bit #mock_content Binary])) -(type: Mock +(type Mock (Rec Mock (Dictionary Text (Either Mock_File Mock)))) diff --git a/stdlib/source/library/lux/world/file/watch.lux b/stdlib/source/library/lux/world/file/watch.lux index 0b2ae94fe..a5279d324 100644 --- a/stdlib/source/library/lux/world/file/watch.lux +++ b/stdlib/source/library/lux/world/file/watch.lux @@ -81,7 +81,7 @@ )) ) -(type: .public (Watcher !) +(type .public (Watcher !) (Interface (is (-> Concern //.Path (! (Try Any))) start) @@ -101,10 +101,10 @@ [cannot_poll_a_non_existent_directory] ) -(type: File_Tracker +(type File_Tracker (Dictionary //.Path Instant)) -(type: Directory_Tracker +(type Directory_Tracker (Dictionary //.Path [Concern File_Tracker])) (def (update_watch! new_concern path tracker) @@ -357,7 +357,7 @@ (new [java/lang/String]) (toPath [] java/nio/file/Path)) - (type: Watch_Event + (type Watch_Event (java/nio/file/WatchEvent$Kind java/lang/Object)) (def (default_start watch_events watcher path) diff --git a/stdlib/source/library/lux/world/input/keyboard.lux b/stdlib/source/library/lux/world/input/keyboard.lux index 8adc006d5..0d9ec97d6 100644 --- a/stdlib/source/library/lux/world/input/keyboard.lux +++ b/stdlib/source/library/lux/world/input/keyboard.lux @@ -2,7 +2,7 @@ [library [lux (.except left right)]]) -(type: .public Key +(type .public Key Nat) (with_template [ ] @@ -97,7 +97,7 @@ [61451 f24] ) -(type: .public Press +(type .public Press (Record [#pressed? Bit #input Key])) diff --git a/stdlib/source/library/lux/world/net.lux b/stdlib/source/library/lux/world/net.lux index 2daa67ac6..93716afa9 100644 --- a/stdlib/source/library/lux/world/net.lux +++ b/stdlib/source/library/lux/world/net.lux @@ -2,16 +2,16 @@ [library [lux (.except Location)]]) -(type: .public Address +(type .public Address Text) -(type: .public Port +(type .public Port Nat) -(type: .public URL +(type .public URL Text) -(type: .public Location +(type .public Location (Record [#address Address #port Port])) diff --git a/stdlib/source/library/lux/world/net/http.lux b/stdlib/source/library/lux/world/net/http.lux index 8bb920891..d98151768 100644 --- a/stdlib/source/library/lux/world/net/http.lux +++ b/stdlib/source/library/lux/world/net/http.lux @@ -12,10 +12,10 @@ [// (.only URL) [uri (.only URI)]]) -(type: .public Version +(type .public Version Text) -(type: .public Method +(type .public Method (Variant {#Post} {#Get} @@ -27,60 +27,60 @@ {#Options} {#Trace})) -(type: .public Port +(type .public Port Nat) -(type: .public Status +(type .public Status Nat) -(type: .public Headers +(type .public Headers Environment) (def .public empty Headers environment.empty) -(type: .public Header +(type .public Header (-> Headers Headers)) -(type: .public (Body !) +(type .public (Body !) (-> (Maybe Nat) (! (Try [Nat Binary])))) -(type: .public Scheme +(type .public Scheme (Variant {#HTTP} {#HTTPS})) -(type: .public Address +(type .public Address (Record [#port Port #host Text])) -(type: .public Identification +(type .public Identification (Record [#local Address #remote Address])) -(type: .public Protocol +(type .public Protocol (Record [#version Version #scheme Scheme])) -(type: .public Resource +(type .public Resource (Record [#method Method #uri URI])) -(type: .public (Message !) +(type .public (Message !) (Record [#headers Headers #body (Body !)])) -(type: .public (Request !) +(type .public (Request !) [Identification Protocol Resource (Message !)]) -(type: .public (Response !) +(type .public (Response !) [Status (Message !)]) -(type: .public (Server !) +(type .public (Server !) (-> (Request !) (! (Response !)))) diff --git a/stdlib/source/library/lux/world/net/http/client.lux b/stdlib/source/library/lux/world/net/http/client.lux index 333e4ed5a..832ff6f23 100644 --- a/stdlib/source/library/lux/world/net/http/client.lux +++ b/stdlib/source/library/lux/world/net/http/client.lux @@ -30,7 +30,7 @@ ["[0]" // (.only) [// (.only URL)]]) -(type: .public (Client !) +(type .public (Client !) (Interface (is (-> //.Method URL //.Headers (Maybe Binary) (! (Try (//.Response !)))) diff --git a/stdlib/source/library/lux/world/net/http/cookie.lux b/stdlib/source/library/lux/world/net/http/cookie.lux index c73ffb833..ffad57e2c 100644 --- a/stdlib/source/library/lux/world/net/http/cookie.lux +++ b/stdlib/source/library/lux/world/net/http/cookie.lux @@ -20,7 +20,7 @@ ["[0]" // (.only Header) ["[0]" header]]) -(type: .public Directive +(type .public Directive (-> Text Text)) (def (directive extension) @@ -57,7 +57,7 @@ [http_only "HttpOnly"] ) -(type: .public CSRF_Policy +(type .public CSRF_Policy (Variant {#Strict} {#Lax})) diff --git a/stdlib/source/library/lux/world/net/uri.lux b/stdlib/source/library/lux/world/net/uri.lux index ad7b61677..0fb3ff834 100644 --- a/stdlib/source/library/lux/world/net/uri.lux +++ b/stdlib/source/library/lux/world/net/uri.lux @@ -3,7 +3,7 @@ [lux (.except)]]) ... https://en.wikipedia.org/wiki/Uniform_Resource_Identifier -(type: .public URI +(type .public URI Text) (def .public separator diff --git a/stdlib/source/library/lux/world/output/video/resolution.lux b/stdlib/source/library/lux/world/output/video/resolution.lux index 1e2f58ced..51cf3cb93 100644 --- a/stdlib/source/library/lux/world/output/video/resolution.lux +++ b/stdlib/source/library/lux/world/output/video/resolution.lux @@ -10,7 +10,7 @@ [number ["[0]" nat]]]]]) -(type: .public Resolution +(type .public Resolution (Record [#width Nat #height Nat])) diff --git a/stdlib/source/library/lux/world/program.lux b/stdlib/source/library/lux/world/program.lux index 3ac117ce2..84b6eaf15 100644 --- a/stdlib/source/library/lux/world/program.lux +++ b/stdlib/source/library/lux/world/program.lux @@ -40,7 +40,7 @@ (exception.report "Name" (%.text name))) -(type: .public (Program !) +(type .public (Program !) (Interface (is (-> Any (! (List Text))) available_variables) diff --git a/stdlib/source/library/lux/world/shell.lux b/stdlib/source/library/lux/world/shell.lux index 57f622a46..a2eaccadc 100644 --- a/stdlib/source/library/lux/world/shell.lux +++ b/stdlib/source/library/lux/world/shell.lux @@ -33,7 +33,7 @@ [// [file (.only Path)]]) -(type: .public Exit +(type .public Exit Int) (with_template [ ] @@ -45,7 +45,7 @@ [+1 error] ) -(type: .public (Process !) +(type .public (Process !) (Interface (is (-> [] (! (Try Text))) read) @@ -73,13 +73,13 @@ [await] ))))) -(type: .public Command +(type .public Command Text) -(type: .public Argument +(type .public Argument Text) -(type: .public (Shell !) +(type .public (Shell !) (Interface (is (-> [Environment Path Command (List Argument)] (! (Try (Process !)))) execute))) @@ -94,7 +94,7 @@ (in (..async_process process))))))) ... https://en.wikipedia.org/wiki/Code_injection#Shell_injection -(type: (Policy ?) +(type (Policy ?) (Interface (is (-> Command (Safe Command ?)) command) @@ -103,10 +103,10 @@ (is (All (_ a) (-> (Safe a ?) a)) value))) -(type: (Sanitizer a) +(type (Sanitizer a) (-> a a)) -(type: Replacer +(type Replacer (-> Text Text)) (def (replaced bad replacer) @@ -311,7 +311,7 @@ @.jvm (these ) (these))) -(type: .public (Mock s) +(type .public (Mock s) (Interface (is (-> s (Try [s Text])) on_read) diff --git a/stdlib/source/parser/lux/data/binary.lux b/stdlib/source/parser/lux/data/binary.lux index 61256d42a..3539323c5 100644 --- a/stdlib/source/parser/lux/data/binary.lux +++ b/stdlib/source/parser/lux/data/binary.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except and or nat int rev list type symbol) + [lux (.except and or nat int rev list symbol type) [ffi (.only)] [type (.only sharing)] [abstract @@ -31,10 +31,10 @@ ["n" nat] ["[0]" frac]]]]]) -(type: .public Offset +(.type .public Offset Nat) -(type: .public Parser +(.type .public Parser (//.Parser [Offset Binary])) (exception: .public (binary_was_not_fully_read [binary_length Nat @@ -80,7 +80,7 @@ (function (_ (^.let input [offset data])) {try.#Success [input (n#- offset (/.size data))]})) -(type: .public Size +(.type .public Size Nat) (def .public size_8 Size 1) diff --git a/stdlib/source/parser/lux/data/format/json.lux b/stdlib/source/parser/lux/data/format/json.lux index 5d1c757bc..d579b9060 100644 --- a/stdlib/source/parser/lux/data/format/json.lux +++ b/stdlib/source/parser/lux/data/format/json.lux @@ -22,7 +22,7 @@ [\\library ["[0]" / (.only JSON)]]) -(type: .public (Parser a) +(type .public (Parser a) (//.Parser (List JSON) a)) (exception: .public (unconsumed_input [input (List JSON)]) diff --git a/stdlib/source/parser/lux/data/format/xml.lux b/stdlib/source/parser/lux/data/format/xml.lux index c71f3d20f..44cfa8fdd 100644 --- a/stdlib/source/parser/lux/data/format/xml.lux +++ b/stdlib/source/parser/lux/data/format/xml.lux @@ -18,7 +18,7 @@ [\\library ["[0]" / (.only Attribute Attrs Tag XML)]]) -(type: .public (Parser a) +(type .public (Parser a) (//.Parser [Attrs (List XML)] a)) (exception: .public empty_input) diff --git a/stdlib/source/parser/lux/data/text.lux b/stdlib/source/parser/lux/data/text.lux index d18a01d6b..3cc4dd8da 100644 --- a/stdlib/source/parser/lux/data/text.lux +++ b/stdlib/source/parser/lux/data/text.lux @@ -21,7 +21,7 @@ [number ["n" nat (.use "[1]#[0]" decimal)]]]]]) -(type: .public Offset +(type .public Offset Nat) (def beginning @@ -31,10 +31,10 @@ (exception: .public cannot_parse) (exception: .public cannot_slice) -(type: .public Parser +(type .public Parser (//.Parser [Offset Text])) -(type: .public Slice +(type .public Slice (Record [#basis Offset #distance Offset])) diff --git a/stdlib/source/parser/lux/tool/compiler/language/lux/analysis.lux b/stdlib/source/parser/lux/tool/compiler/language/lux/analysis.lux index a8c00087d..99a2f3e8e 100644 --- a/stdlib/source/parser/lux/tool/compiler/language/lux/analysis.lux +++ b/stdlib/source/parser/lux/tool/compiler/language/lux/analysis.lux @@ -46,7 +46,7 @@ (exception.report "Input" (exception.listing /.format input))) -(type: .public Parser +(type .public Parser (//.Parser (List Analysis))) (def .public (result parser input) diff --git a/stdlib/source/parser/lux/tool/compiler/language/lux/synthesis.lux b/stdlib/source/parser/lux/tool/compiler/language/lux/synthesis.lux index fa2a7a3af..c5f44f784 100644 --- a/stdlib/source/parser/lux/tool/compiler/language/lux/synthesis.lux +++ b/stdlib/source/parser/lux/tool/compiler/language/lux/synthesis.lux @@ -51,7 +51,7 @@ (exception: .public empty_input) -(type: .public Parser +(type .public Parser (//.Parser (List Synthesis))) (def .public (result parser input) diff --git a/stdlib/source/program/aedifex/action.lux b/stdlib/source/program/aedifex/action.lux index d1f388cca..cd0ef7459 100644 --- a/stdlib/source/program/aedifex/action.lux +++ b/stdlib/source/program/aedifex/action.lux @@ -8,7 +8,7 @@ [concurrency ["[0]" async (.only Async)]]]]]) -(type: .public (Action a) +(type .public (Action a) (Async (Try a))) (def .public monad diff --git a/stdlib/source/program/aedifex/artifact.lux b/stdlib/source/program/aedifex/artifact.lux index 3b57b0734..92c8629bc 100644 --- a/stdlib/source/program/aedifex/artifact.lux +++ b/stdlib/source/program/aedifex/artifact.lux @@ -16,16 +16,16 @@ [net ["[0]" uri (.only URI)]]]]]) -(type: .public Group +(type .public Group Text) -(type: .public Name +(type .public Name Text) -(type: .public Version +(type .public Version Text) -(type: .public Artifact +(type .public Artifact (Record [#group Group #name Name diff --git a/stdlib/source/program/aedifex/artifact/extension.lux b/stdlib/source/program/aedifex/artifact/extension.lux index e4e8e8a71..08fb2d4b7 100644 --- a/stdlib/source/program/aedifex/artifact/extension.lux +++ b/stdlib/source/program/aedifex/artifact/extension.lux @@ -9,7 +9,7 @@ ["[0]" // ["[1]" type]]) -(type: .public Extension +(.type .public Extension Text) (def separator diff --git a/stdlib/source/program/aedifex/artifact/snapshot.lux b/stdlib/source/program/aedifex/artifact/snapshot.lux index 23eb701e8..6b6e97124 100644 --- a/stdlib/source/program/aedifex/artifact/snapshot.lux +++ b/stdlib/source/program/aedifex/artifact/snapshot.lux @@ -16,7 +16,7 @@ ["[0]" / ["[1][0]" stamp (.only Stamp)]]) -(type: .public Snapshot +(type .public Snapshot (Variant {#Local} {#Remote Stamp})) diff --git a/stdlib/source/program/aedifex/artifact/snapshot/build.lux b/stdlib/source/program/aedifex/artifact/snapshot/build.lux index 0ff1d45d9..2cd339f9b 100644 --- a/stdlib/source/program/aedifex/artifact/snapshot/build.lux +++ b/stdlib/source/program/aedifex/artifact/snapshot/build.lux @@ -17,7 +17,7 @@ [number ["[0]" nat]]]]]) -(type: .public Build +(type .public Build Nat) (def .public equivalence diff --git a/stdlib/source/program/aedifex/artifact/snapshot/stamp.lux b/stdlib/source/program/aedifex/artifact/snapshot/stamp.lux index 7ebb79ac6..6fbeb5b07 100644 --- a/stdlib/source/program/aedifex/artifact/snapshot/stamp.lux +++ b/stdlib/source/program/aedifex/artifact/snapshot/stamp.lux @@ -17,7 +17,7 @@ ["[1][0]" time (.only Time)] ["[1][0]" build (.only Build)]]) -(type: .public Stamp +(type .public Stamp (Record [#time Time #build Build])) diff --git a/stdlib/source/program/aedifex/artifact/snapshot/time.lux b/stdlib/source/program/aedifex/artifact/snapshot/time.lux index 87d9c89c7..b039dd2e2 100644 --- a/stdlib/source/program/aedifex/artifact/snapshot/time.lux +++ b/stdlib/source/program/aedifex/artifact/snapshot/time.lux @@ -21,7 +21,7 @@ ["[1]/[0]" date] ["[1]/[0]" time]]]) -(type: .public Time +(type .public Time ///time.Time) (def .public equivalence diff --git a/stdlib/source/program/aedifex/artifact/snapshot/version.lux b/stdlib/source/program/aedifex/artifact/snapshot/version.lux index fdd97a517..3ab65cab4 100644 --- a/stdlib/source/program/aedifex/artifact/snapshot/version.lux +++ b/stdlib/source/program/aedifex/artifact/snapshot/version.lux @@ -17,7 +17,7 @@ ["[1][0]" type (.only Type)] ["[1][0]" time (.only Time)]]) -(type: .public Version +(type .public Version (Record [#extension Type #value Text diff --git a/stdlib/source/program/aedifex/artifact/snapshot/version/value.lux b/stdlib/source/program/aedifex/artifact/snapshot/version/value.lux index 0dd217a27..534283b7f 100644 --- a/stdlib/source/program/aedifex/artifact/snapshot/version/value.lux +++ b/stdlib/source/program/aedifex/artifact/snapshot/version/value.lux @@ -11,7 +11,7 @@ ["[1][0]" time] ["[1][0]" stamp]]) -(type: .public Value +(type .public Value (Record [#version Text #snapshot Snapshot])) diff --git a/stdlib/source/program/aedifex/artifact/time.lux b/stdlib/source/program/aedifex/artifact/time.lux index b4cf0dc02..61b2e8667 100644 --- a/stdlib/source/program/aedifex/artifact/time.lux +++ b/stdlib/source/program/aedifex/artifact/time.lux @@ -19,7 +19,7 @@ ["[1][0]" date] ["[1][0]" time]]) -(type: .public Time +(type .public Time [/date.Date /time.Time]) (def .public epoch diff --git a/stdlib/source/program/aedifex/artifact/time/time.lux b/stdlib/source/program/aedifex/artifact/time/time.lux index 5349a295f..01e2c85cb 100644 --- a/stdlib/source/program/aedifex/artifact/time/time.lux +++ b/stdlib/source/program/aedifex/artifact/time/time.lux @@ -16,7 +16,7 @@ ["[0]" // ["[1]" date]]) -(type: .public Time +(type .public Time time.Time) (def .public (format value) diff --git a/stdlib/source/program/aedifex/artifact/type.lux b/stdlib/source/program/aedifex/artifact/type.lux index cba533fdd..3fad47295 100644 --- a/stdlib/source/program/aedifex/artifact/type.lux +++ b/stdlib/source/program/aedifex/artifact/type.lux @@ -3,7 +3,7 @@ [lux (.except Type)]]) ... https://maven.apache.org/ref/3.6.3/maven-core/artifact-handlers.html -(type: .public Type +(type .public Type Text) (with_template [ ] diff --git a/stdlib/source/program/aedifex/artifact/versioning.lux b/stdlib/source/program/aedifex/artifact/versioning.lux index e85833e70..82dffcd61 100644 --- a/stdlib/source/program/aedifex/artifact/versioning.lux +++ b/stdlib/source/program/aedifex/artifact/versioning.lux @@ -29,7 +29,7 @@ ["[1][0]" snapshot (.only Snapshot) ["[1]/[0]" version (.only Version)]]]) -(type: .public Versioning +(type .public Versioning (Record [#snapshot Snapshot #last_updated //time.Time diff --git a/stdlib/source/program/aedifex/cli.lux b/stdlib/source/program/aedifex/cli.lux index 8f7185db5..26a1fd325 100644 --- a/stdlib/source/program/aedifex/cli.lux +++ b/stdlib/source/program/aedifex/cli.lux @@ -16,7 +16,7 @@ [identity (.only Identity)]] ["/" profile (.only Name)]]) -(type: .public Compilation +(type .public Compilation (Variant {#Build} {#Test})) @@ -37,7 +37,7 @@ (<>.or (cli.this "build") (cli.this "test"))) -(type: .public Command +(type .public Command (Variant {#Version} {#Clean} diff --git a/stdlib/source/program/aedifex/command.lux b/stdlib/source/program/aedifex/command.lux index fc287b4f1..a48bd31a3 100644 --- a/stdlib/source/program/aedifex/command.lux +++ b/stdlib/source/program/aedifex/command.lux @@ -5,5 +5,5 @@ ["[1]" profile] ["[1][0]" action (.only Action)]]) -(type: .public (Command a) +(type .public (Command a) (-> //.Profile (Action a))) diff --git a/stdlib/source/program/aedifex/command/build.lux b/stdlib/source/program/aedifex/command/build.lux index 83be613e3..2f1931c0e 100644 --- a/stdlib/source/program/aedifex/command/build.lux +++ b/stdlib/source/program/aedifex/command/build.lux @@ -53,7 +53,7 @@ ["[1][0]" artifact (.only Group Name Version Artifact) ["[1]/[0]" type]]]) -(type: Finder +(type Finder (-> Resolution (Maybe Dependency))) (def (dependency_finder group name) @@ -84,7 +84,7 @@ (exception: .public no_available_lux) (exception: .public no_specified_program) -(type: .public Lux +(type .public Lux (Variant {#JVM Dependency} {#JS Dependency} diff --git a/stdlib/source/program/aedifex/dependency.lux b/stdlib/source/program/aedifex/dependency.lux index b5d251167..a83073467 100644 --- a/stdlib/source/program/aedifex/dependency.lux +++ b/stdlib/source/program/aedifex/dependency.lux @@ -13,7 +13,7 @@ ["[1]" artifact (.only Artifact) (.use "[1]#[0]" order) [type (.only Type)]]]) -(type: .public Dependency +(type .public Dependency (Record [#artifact Artifact #type Type])) diff --git a/stdlib/source/program/aedifex/dependency/resolution.lux b/stdlib/source/program/aedifex/dependency/resolution.lux index 7145a1ffe..d8c46d98c 100644 --- a/stdlib/source/program/aedifex/dependency/resolution.lux +++ b/stdlib/source/program/aedifex/dependency/resolution.lux @@ -143,7 +143,7 @@ ///package.#library library_&_status ///package.#pom [pom pom_data pom_status]])))))) -(type: .public Resolution +(type .public Resolution (Dictionary Dependency Package)) (def .public empty diff --git a/stdlib/source/program/aedifex/dependency/status.lux b/stdlib/source/program/aedifex/dependency/status.lux index f3355b418..2ce288eec 100644 --- a/stdlib/source/program/aedifex/dependency/status.lux +++ b/stdlib/source/program/aedifex/dependency/status.lux @@ -10,7 +10,7 @@ ["[0]" /// ["[1][0]" hash (.only Hash SHA-1 MD5)]]) -(type: .public Status +(type .public Status (Variant {#Unverified} {#Partial (Either (Hash SHA-1) diff --git a/stdlib/source/program/aedifex/format.lux b/stdlib/source/program/aedifex/format.lux index ac1cf8916..7be3a1752 100644 --- a/stdlib/source/program/aedifex/format.lux +++ b/stdlib/source/program/aedifex/format.lux @@ -23,7 +23,7 @@ ["[1][0]" artifact (.only Artifact) ["[1]/[0]" type]]]) -(type: .public (Format a) +(type .public (Format a) (-> a Code)) (def (license [name url type]) @@ -58,7 +58,7 @@ (Format /.Contributor) ..developer) -(type: Aggregate +(type Aggregate (Dictionary Text Code)) (def aggregate diff --git a/stdlib/source/program/aedifex/metadata/artifact.lux b/stdlib/source/program/aedifex/metadata/artifact.lux index ddc9e3200..a8840bab7 100644 --- a/stdlib/source/program/aedifex/metadata/artifact.lux +++ b/stdlib/source/program/aedifex/metadata/artifact.lux @@ -38,7 +38,7 @@ [repository (.only Repository)] ["[1][0]" artifact (.only Group Name Version Artifact)]]]) -(type: .public Metadata +(type .public Metadata (Record [#group Group #name Name diff --git a/stdlib/source/program/aedifex/metadata/snapshot.lux b/stdlib/source/program/aedifex/metadata/snapshot.lux index b5cbeb2a7..8898385f7 100644 --- a/stdlib/source/program/aedifex/metadata/snapshot.lux +++ b/stdlib/source/program/aedifex/metadata/snapshot.lux @@ -45,7 +45,7 @@ ["[1]/[0]" version] ["[1]/[0]" stamp]]]]]) -(type: .public Metadata +(type .public Metadata (Record [#artifact Artifact #versioning Versioning])) diff --git a/stdlib/source/program/aedifex/package.lux b/stdlib/source/program/aedifex/package.lux index 6484c5e3e..cf4aa1e49 100644 --- a/stdlib/source/program/aedifex/package.lux +++ b/stdlib/source/program/aedifex/package.lux @@ -27,7 +27,7 @@ [remote (.only Address)] ["[1][0]" origin (.only Origin)]]]) -(type: .public Package +(type .public Package (Record [#origin Origin #library [Binary Status] diff --git a/stdlib/source/program/aedifex/parser.lux b/stdlib/source/program/aedifex/parser.lux index 6bedce20b..18a682362 100644 --- a/stdlib/source/program/aedifex/parser.lux +++ b/stdlib/source/program/aedifex/parser.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Module type) + [lux (.except Module) [abstract [monad (.only do)]] [control diff --git a/stdlib/source/program/aedifex/profile.lux b/stdlib/source/program/aedifex/profile.lux index 5e07a1c18..3017defcd 100644 --- a/stdlib/source/program/aedifex/profile.lux +++ b/stdlib/source/program/aedifex/profile.lux @@ -44,7 +44,7 @@ [dependency.#artifact ["com.github.luxlang" "lux-jvm" "0.6.5"] dependency.#type type.jvm_library]) -(type: .public Distribution +(type .public Distribution (Variant {#Repo} {#Manual})) @@ -63,7 +63,7 @@ _ false)))) -(type: .public License +(type .public License [Text URL Distribution]) @@ -75,10 +75,10 @@ text.equivalence ..distribution_equivalence)) -(type: .public SCM +(type .public SCM URL) -(type: .public Organization +(type .public Organization [Text URL]) @@ -88,10 +88,10 @@ text.equivalence text.equivalence)) -(type: .public Email +(type .public Email Text) -(type: .public Developer +(type .public Developer [Text Email (Maybe Organization)]) @@ -103,10 +103,10 @@ text.equivalence (maybe.equivalence ..organization_equivalence))) -(type: .public Contributor +(type .public Contributor Developer) -(type: .public Info +(type .public Info (Record [#name (Maybe Text) #url (Maybe URL) @@ -140,14 +140,14 @@ #developers (list) #contributors (list)]) -(type: .public Source +(type .public Source Path) (def .public default_source Source "source") -(type: .public Target +(type .public Target Path) (def .public default_target @@ -158,14 +158,14 @@ Address "https://repo1.maven.org/maven2/") -(type: .public Name +(type .public Name Text) (def .public default Name "") -(type: .public Profile +(type .public Profile (Record [#parents (List Name) #identity (Maybe Artifact) diff --git a/stdlib/source/program/aedifex/project.lux b/stdlib/source/program/aedifex/project.lux index 2a63427cf..ae6a4acdf 100644 --- a/stdlib/source/program/aedifex/project.lux +++ b/stdlib/source/program/aedifex/project.lux @@ -21,7 +21,7 @@ (def .public file "project.lux") -(type: .public Project +(type .public Project (Dictionary Name Profile)) (def .public (project name profile) diff --git a/stdlib/source/program/aedifex/repository.lux b/stdlib/source/program/aedifex/repository.lux index 49cb01312..bd1d23d3e 100644 --- a/stdlib/source/program/aedifex/repository.lux +++ b/stdlib/source/program/aedifex/repository.lux @@ -15,7 +15,7 @@ [net [uri (.only URI)]]]]]) -(type: .public (Repository !) +(type .public (Repository !) (Interface (is Text description) @@ -36,7 +36,7 @@ (async.future (at repository upload uri content))) )) -(type: .public (Mock s) +(type .public (Mock s) (Interface (is Text the_description) diff --git a/stdlib/source/program/aedifex/repository/identity.lux b/stdlib/source/program/aedifex/repository/identity.lux index 4f5733651..348a3fc46 100644 --- a/stdlib/source/program/aedifex/repository/identity.lux +++ b/stdlib/source/program/aedifex/repository/identity.lux @@ -11,13 +11,13 @@ [encoding ["[0]" utf8]]]]]]) -(type: .public User +(type .public User Text) -(type: .public Password +(type .public Password Text) -(type: .public Identity +(type .public Identity (Record [#user User #password Password])) diff --git a/stdlib/source/program/aedifex/repository/origin.lux b/stdlib/source/program/aedifex/repository/origin.lux index 46f0822c2..e8b9c22a4 100644 --- a/stdlib/source/program/aedifex/repository/origin.lux +++ b/stdlib/source/program/aedifex/repository/origin.lux @@ -10,7 +10,7 @@ [file (.only Path)] [net (.only URL)]]]]) -(type: .public Origin +(type .public Origin (Variant {#Local Path} {#Remote URL})) diff --git a/stdlib/source/program/aedifex/repository/remote.lux b/stdlib/source/program/aedifex/repository/remote.lux index d939915d8..2414e25d8 100644 --- a/stdlib/source/program/aedifex/repository/remote.lux +++ b/stdlib/source/program/aedifex/repository/remote.lux @@ -31,7 +31,7 @@ ["[1][0]" artifact (.only Version Artifact) [extension (.only Extension)]]]]) -(type: .public Address +(type .public Address URL) (with_template [] diff --git a/stdlib/source/program/aedifex/runtime.lux b/stdlib/source/program/aedifex/runtime.lux index a105b2da9..6b0a9dbc9 100644 --- a/stdlib/source/program/aedifex/runtime.lux +++ b/stdlib/source/program/aedifex/runtime.lux @@ -15,7 +15,7 @@ [world ["[0]" file]]]]) -(type: .public Runtime +(type .public Runtime (Record [#environment (Dictionary Text Text) #program Text diff --git a/stdlib/source/specification/compositor/common.lux b/stdlib/source/specification/compositor/common.lux index 34e5aa19b..e6913e8df 100644 --- a/stdlib/source/specification/compositor/common.lux +++ b/stdlib/source/specification/compositor/common.lux @@ -19,13 +19,13 @@ [default ["[0]" platform (.only Platform)]]]]]) -(type: .public Runner +(type .public Runner (-> Text Synthesis (Try Any))) -(type: .public Definer +(type .public Definer (-> Symbol Synthesis (Try Any))) -(type: .public (Instancer what) +(type .public (Instancer what) (All (_ anchor expression directive) (-> (Platform IO anchor expression directive) (generation.State+ anchor expression directive) diff --git a/stdlib/source/specification/lux/abstract/functor.lux b/stdlib/source/specification/lux/abstract/functor.lux index 935c37f98..e1be8eba2 100644 --- a/stdlib/source/specification/lux/abstract/functor.lux +++ b/stdlib/source/specification/lux/abstract/functor.lux @@ -14,10 +14,10 @@ [\\library ["[0]" / (.only Functor)]]) -(type: .public (Injection f) +(type .public (Injection f) (All (_ a) (-> a (f a)))) -(type: .public (Comparison f) +(type .public (Comparison f) (All (_ a) (-> (Equivalence a) (Equivalence (f a))))) diff --git a/stdlib/source/test/aedifex/cache.lux b/stdlib/source/test/aedifex/cache.lux index 4d3a64634..515ca42b7 100644 --- a/stdlib/source/test/aedifex/cache.lux +++ b/stdlib/source/test/aedifex/cache.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Type type) + [lux (.except Type) ["_" test (.only Test)] [abstract ["[0]" monad (.only do)]] diff --git a/stdlib/source/test/aedifex/dependency/deployment.lux b/stdlib/source/test/aedifex/dependency/deployment.lux index 181e6b5b7..fee8caf9d 100644 --- a/stdlib/source/test/aedifex/dependency/deployment.lux +++ b/stdlib/source/test/aedifex/dependency/deployment.lux @@ -58,7 +58,7 @@ {try.#Success} io.io))]]) -(type: Cache +(type Cache (Atom (Dictionary URL Binary))) (def (http cache) diff --git a/stdlib/source/test/aedifex/repository.lux b/stdlib/source/test/aedifex/repository.lux index 024752e67..1602fab49 100644 --- a/stdlib/source/test/aedifex/repository.lux +++ b/stdlib/source/test/aedifex/repository.lux @@ -50,7 +50,7 @@ (exception.report "URI" (%.text uri))) -(type: Store +(type Store (Dictionary URI Binary)) (def .public empty diff --git a/stdlib/source/test/lux.lux b/stdlib/source/test/lux.lux index 14bb1ec55..35ba915da 100644 --- a/stdlib/source/test/lux.lux +++ b/stdlib/source/test/lux.lux @@ -185,7 +185,7 @@ false)) ))) -(type: (Returner a) +(type (Returner a) (/.Interface (is (-> Any a) return))) @@ -508,18 +508,18 @@ )))))) )))))) -(/.type: for_type/variant +(/.type for_type/variant (Variant {#Case/0} {#Case/1 Nat} {#Case/2 Int Text})) -(/.type: for_type/record +(/.type for_type/record (Record [#slot/0 Bit #slot/1 Rev])) -(/.type: (for_type/all parameter) +(/.type (for_type/all parameter) [parameter parameter]) (def for_type @@ -560,36 +560,36 @@ _ false)) - (_.coverage [/.type] - (and (case (/.type [expected/0 expected/1]) + (_.coverage [/.type_literal] + (and (case (/.type_literal [expected/0 expected/1]) {.#Product actual/0 actual/1} (and (same? expected/0 actual/0) (same? expected/1 actual/1)) _ false) - (case (/.type (/.Or expected/0 expected/1)) + (case (/.type_literal (/.Or expected/0 expected/1)) {.#Sum actual/0 actual/1} (and (same? expected/0 actual/0) (same? expected/1 actual/1)) _ false) - (case (/.type (-> expected/0 expected/1)) + (case (/.type_literal (-> expected/0 expected/1)) {.#Function actual/0 actual/1} (and (same? expected/0 actual/0) (same? expected/1 actual/1)) _ false) - (case (/.type (expected/0 expected/1)) + (case (/.type_literal (expected/0 expected/1)) {.#Apply actual/1 actual/0} (and (same? expected/0 actual/0) (same? expected/1 actual/1)) _ false))) - (_.coverage [/.type:] + (_.coverage [/.type] (exec (is /.Type ..for_type/variant) (is /.Type ..for_type/record) @@ -694,12 +694,12 @@ (text#= static_char))) ))) -(type: Small +(type Small (Record [#small_left Nat #small_right Text])) -(type: Big +(type Big (Record [#big_left Nat #big_right Small])) @@ -932,7 +932,7 @@ false))) ))) -(type: (Pair l r) +(type (Pair l r) (Record [#left l #right r])) diff --git a/stdlib/source/test/lux/abstract/equivalence.lux b/stdlib/source/test/lux/abstract/equivalence.lux index 2518cdf8c..96a7b3863 100644 --- a/stdlib/source/test/lux/abstract/equivalence.lux +++ b/stdlib/source/test/lux/abstract/equivalence.lux @@ -25,19 +25,19 @@ [\\library ["[0]" / (.only Equivalence)]]) -(type: Variant +(type Variant (.Variant {#Case0 Bit} {#Case1 Int} {#Case2 Frac})) -(type: Recursive +(type Recursive (Rec Recursive (.Variant {#Number Frac} {#Addition Frac Recursive}))) -(type: Record +(type Record (.Record [#bit Bit #int Int diff --git a/stdlib/source/test/lux/control/parser/type.lux b/stdlib/source/test/lux/control/parser/type.lux index 7109f9b76..11f7b7796 100644 --- a/stdlib/source/test/lux/control/parser/type.lux +++ b/stdlib/source/test/lux/control/parser/type.lux @@ -214,17 +214,17 @@ [expected ..primitive] (all _.and (_.coverage [/.recursive] - (|> (.type (Rec @ expected)) + (|> (.type_literal (Rec @ expected)) (/.result (/.recursive /.any)) (!expect (^.multi {try.#Success [@self actual]} (type#= expected actual))))) (_.coverage [/.recursive_self] - (|> (.type (Rec @ @)) + (|> (.type_literal (Rec @ @)) (/.result (/.recursive /.recursive_self)) (!expect (^.multi {try.#Success [@expected @actual]} (same? @expected @actual))))) (_.coverage [/.recursive_call] - (|> (.type (All (self input) (self input))) + (|> (.type_literal (All (self input) (self input))) (/.result (/.polymorphic /.recursive_call)) (!expect {try.#Success [@self inputs ???]}))) (_.coverage [/.not_recursive] diff --git a/stdlib/source/test/lux/control/security/policy.lux b/stdlib/source/test/lux/control/security/policy.lux index 5a403c049..1cfbf5c9e 100644 --- a/stdlib/source/test/lux/control/security/policy.lux +++ b/stdlib/source/test/lux/control/security/policy.lux @@ -32,10 +32,10 @@ (== (can_reveal left) (can_reveal right)))) -(type: Password +(type Password (Private Text)) -(type: (Policy %) +(type (Policy %) (Interface (is (Hash (Password %)) &hash) diff --git a/stdlib/source/test/lux/data/format/json.lux b/stdlib/source/test/lux/data/format/json.lux index 4dd656edd..8116043d2 100644 --- a/stdlib/source/test/lux/data/format/json.lux +++ b/stdlib/source/test/lux/data/format/json.lux @@ -186,19 +186,19 @@ (at (dictionary.equivalence text.equivalence) = expected actual)))))) )))) -(type: Variant +(type Variant (.Variant {#Bit Bit} {#Text Text} {#Frac Frac})) -(type: Recursive +(type Recursive (Rec Recursive (.Variant {#Number Frac} {#Addition Frac Recursive}))) -(type: Record +(type Record (.Record [#bit Bit #frac Frac diff --git a/stdlib/source/test/lux/debug.lux b/stdlib/source/test/lux/debug.lux index 77c56d59f..a789cdaf6 100644 --- a/stdlib/source/test/lux/debug.lux +++ b/stdlib/source/test/lux/debug.lux @@ -76,7 +76,7 @@ [sample_bit random.bit sample_int random.int sample_frac random.frac] - (in (`` (and (case (/.representation (type [Bit Int Frac]) + (in (`` (and (case (/.representation (type_literal [Bit Int Frac]) [sample_bit sample_int sample_frac]) {try.#Success actual} (text#= (format "[" (%.bit sample_bit) @@ -89,7 +89,7 @@ false) ... TODO: Uncomment after switching from the old (tag+last?) to the new (lefts+right?) representation for variants ... (~~ (with_template [ ] - ... [(|> (/.representation (type (Or Bit Int Frac)) + ... [(|> (/.representation (type_literal (Or Bit Int Frac)) ... (is (Or Bit Int Frac) ... ( ))) ... (try#each (text#= (format "(" (%.nat ) @@ -171,11 +171,11 @@ (|> (/.representation .Any sample_frac) (try#each (text#= "[]")) (try.else false)) - (|> (/.representation (type (List Nat)) (is (List Nat) (list sample_nat))) + (|> (/.representation (type_literal (List Nat)) (is (List Nat) (list sample_nat))) (try#each (text#= (%.list %.nat (list sample_nat)))) (try.else false)) (~~ (with_template [] - [(|> (/.representation (type (Maybe Nat)) (is (Maybe Nat) )) + [(|> (/.representation (type_literal (Maybe Nat)) (is (Maybe Nat) )) (try#each (text#= (%.maybe %.nat ))) (try.else false))] @@ -226,7 +226,7 @@ {try.#Success _} {try.#Failure "OOPS!"})))) -(type: My_Text +(type My_Text Text) (def .public test diff --git a/stdlib/source/test/lux/locale/language.lux b/stdlib/source/test/lux/locale/language.lux index feb665622..12603ae23 100644 --- a/stdlib/source/test/lux/locale/language.lux +++ b/stdlib/source/test/lux/locale/language.lux @@ -23,7 +23,7 @@ [\\library ["[0]" /]]) -(type: Bundle +(type Bundle (Record [#amount Nat #names (Set Text) diff --git a/stdlib/source/test/lux/locale/territory.lux b/stdlib/source/test/lux/locale/territory.lux index 5791c88d0..16483d620 100644 --- a/stdlib/source/test/lux/locale/territory.lux +++ b/stdlib/source/test/lux/locale/territory.lux @@ -23,7 +23,7 @@ [\\library ["[0]" /]]) -(type: Bundle +(type Bundle (Record [#amount Nat #names (Set Text) diff --git a/stdlib/source/test/lux/macro/pattern.lux b/stdlib/source/test/lux/macro/pattern.lux index 2f28518bd..8ebdf71db 100644 --- a/stdlib/source/test/lux/macro/pattern.lux +++ b/stdlib/source/test/lux/macro/pattern.lux @@ -17,7 +17,7 @@ [\\library ["[0]" /]]) -(type: (Pair l r) +(type (Pair l r) (Record [#left l #right r])) diff --git a/stdlib/source/test/lux/target/jvm.lux b/stdlib/source/test/lux/target/jvm.lux index b3cd98618..c282c2250 100644 --- a/stdlib/source/test/lux/target/jvm.lux +++ b/stdlib/source/test/lux/target/jvm.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except Type Primitive Label type int) + [lux (.except Type Primitive Label int) ["[0]" ffi (.only import)] ["@" target] [abstract @@ -150,7 +150,7 @@ {try.#Failure error} false)))) -(type: (Primitive a) +(type (Primitive a) (Record [#unboxed (Type category.Return) #boxed (Type category.Class) diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/analysis/inference.lux b/stdlib/source/test/lux/tool/compiler/language/lux/analysis/inference.lux index 88a527b3e..d862aaf5e 100644 --- a/stdlib/source/test/lux/tool/compiler/language/lux/analysis/inference.lux +++ b/stdlib/source/test/lux/tool/compiler/language/lux/analysis/inference.lux @@ -130,7 +130,7 @@ analysis/*)))) (try.else false)) (|> (/.general archive.empty ..analysis - (type (-> type/0 expected)) + (type_literal (-> type/0 expected)) (list term/0)) (//type.expecting expected) (//module.with 0 (product.left name)) @@ -139,7 +139,7 @@ (try#each (|>> product.left (type#= expected))) (try.else false)) (|> (/.general archive.empty ..analysis - (type {.#Named name (-> type/0 expected)}) + (type_literal {.#Named name (-> type/0 expected)}) (list term/0)) (//type.expecting expected) (//module.with 0 (product.left name)) @@ -148,7 +148,7 @@ (try#each (|>> product.left (type#= expected))) (try.else false)) (|> (/.general archive.empty ..analysis - (type (All (_ a) (-> a a))) + (type_literal (All (_ a) (-> a a))) (list term/0)) (//type.expecting type/0) (//module.with 0 (product.left name)) @@ -159,7 +159,7 @@ (try#each (type#= type/0)) (try.else false)) (|> (/.general archive.empty ..analysis - (type ((All (_ a) (-> a a)) type/0)) + (type_literal ((All (_ a) (-> a a)) type/0)) (list term/0)) (//type.expecting type/0) (//module.with 0 (product.left name)) @@ -169,7 +169,7 @@ (try.else false)) (|> (do /phase.monad [[@var varT] (//type.check check.var) - _ (//type.check (check.check varT (type (-> type/0 expected))))] + _ (//type.check (check.check varT (type_literal (-> type/0 expected))))] (/.general archive.empty ..analysis varT (list term/0))) (//type.expecting expected) (//module.with 0 (product.left name)) @@ -180,7 +180,7 @@ (try#each (type#= expected)) (try.else false)) (|> (/.general archive.empty ..analysis - (type (Ex (_ a) (-> a a))) + (type_literal (Ex (_ a) (-> a a))) (list (` ("lux io error" "")))) //type.inferring (//module.with 0 (product.left name)) @@ -203,7 +203,7 @@ (..fails? /.cannot_infer)))) (_.coverage [/.cannot_infer_argument] (|> (/.general archive.empty ..analysis - (type (-> expected expected)) + (type_literal (-> expected expected)) (list term/0)) (//type.expecting expected) (//module.with 0 (product.left name)) @@ -263,11 +263,11 @@ (variant? {.#Named name variantT} lefts right? tagC) cases_independent_of_parameters_conform_to_anything! - (variant? (type (Maybe type/0)) 0 #0 (' [])) + (variant? (type_literal (Maybe type/0)) 0 #0 (' [])) cases_dependent_on_parameters_are_tettered_to_those_parameters! - (and (variant? (type (Maybe type/0)) 0 #1 term/0) - (not (variant? (type (Maybe type/0)) 0 #1 term/1))) + (and (variant? (type_literal (Maybe type/0)) 0 #1 term/0) + (not (variant? (type_literal (Maybe type/0)) 0 #1 term/1))) only_bottom_conforms_to_tags_outside_of_range! (`` (and (~~ (with_template [ ] @@ -277,24 +277,24 @@ [#1 (` ("lux io error" ""))])))) can_handle_universal_quantification! - (and (variant?' (type (All (_ a) (Maybe a))) + (and (variant?' (type_literal (All (_ a) (Maybe a))) {.#Some Maybe} 0 #0 (' [])) - (variant?' (type (All (_ a) (Maybe a))) - {.#Some (type (Maybe type/0))} + (variant?' (type_literal (All (_ a) (Maybe a))) + {.#Some (type_literal (Maybe type/0))} 0 #1 term/0) - (not (variant?' (type (All (_ a) (Maybe a))) + (not (variant?' (type_literal (All (_ a) (Maybe a))) {.#Some Maybe} 0 #1 term/0))) existential_types_do_not_affect_independent_cases! - (variant?' (type (Ex (_ a) (Maybe a))) + (variant?' (type_literal (Ex (_ a) (Maybe a))) {.#None} 0 #0 (' [])) existential_types_affect_dependent_cases! (`` (and (~~ (with_template [ ] - [(bit#= (variant?' (type (Ex (_ a) (Maybe a))) {.#None} 0 #1 ))] + [(bit#= (variant?' (type_literal (Ex (_ a) (Maybe a))) {.#None} 0 #1 ))] [#0 term/0] [#1 (` ("lux io error" ""))]))))] @@ -411,13 +411,13 @@ ..test|variant ..test|record (_.coverage [/.invalid_type_application] - (and (|> (/.general archive.empty ..analysis (type (type/0 type/1)) (list term/0)) + (and (|> (/.general archive.empty ..analysis (type_literal (type/0 type/1)) (list term/0)) (/phase.result state) (..fails? /.invalid_type_application)) - (|> (/.variant lefts right? (type (type/0 type/1))) + (|> (/.variant lefts right? (type_literal (type/0 type/1))) (/phase.result state) (..fails? /.invalid_type_application)) - (|> (/.record lefts (type (type/0 type/1))) + (|> (/.record lefts (type_literal (type/0 type/1))) (/phase.result state) (..fails? /.invalid_type_application)))) )))) diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis.lux b/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis.lux index 894713848..8e4113010 100644 --- a/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis.lux +++ b/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis.lux @@ -227,10 +227,10 @@ (let [state [extension.#bundle (extension/analysis.bundle ..eval) extension.#state lux] :record: {.#Named [module/0 @text] - (type [.Any .Bit .Nat .Int .Rev .Frac .Text])} + (type_literal [.Any .Bit .Nat .Int .Rev .Frac .Text])} slots/* (list @any @bit @nat @int @rev @frac @text) :variant: {.#Named [module/0 @text] - (type (Or .Any .Bit .Nat .Int .Rev .Frac .Text))} + (type_literal (Or .Any .Bit .Nat .Int .Rev .Frac .Text))} tags/* (list @any @bit @nat @int @rev @frac @text) can_analyse_unary! @@ -284,7 +284,7 @@ (|> (do phase.monad [_ (//module.declare_labels true slots/* false :record:) .let [:either: {.#Named [module/0 module/0] - (type (Or .Any :record:))}] + (type_literal (Or .Any :record:))}] _ (//module.declare_labels false (list @left @right) false :either:) [:it: it] (|> (code.variant (list (code.local @left))) (/.phase ..expander archive.empty) @@ -307,7 +307,7 @@ (|> (do phase.monad [_ (//module.declare_labels true slots/* false :record:) .let [:either: {.#Named [module/0 module/0] - (type (Or .Any :record:))}] + (type_literal (Or .Any :record:))}] _ (//module.declare_labels false (list @left @right) false :either:) [:it: it] (|> (code.variant (list (code.local @right) (` []) @@ -361,7 +361,7 @@ (code.text text/0))) (/.phase ..expander archive.empty) //type.inferring)] - (in (and (type#= (type [.Any .Bit .Nat .Int .Rev .Frac .Text]) + (in (and (type#= (type_literal [.Any .Bit .Nat .Int .Rev .Frac .Text]) :it:) (case it (pattern (//.tuple (list (//.unit) @@ -391,7 +391,7 @@ (let [state [extension.#bundle (extension/analysis.bundle ..eval) extension.#state lux] :record: {.#Named [module/0 @text] - (type [.Any .Bit .Nat .Int .Rev .Frac .Text])} + (type_literal [.Any .Bit .Nat .Int .Rev .Frac .Text])} slots/* (list @any @bit @nat @int @rev @frac @text)] (|> (do phase.monad [_ (//module.declare_labels true slots/* false :record:) @@ -660,11 +660,11 @@ extension.#state lux] :variant: {.#Named [module/0 module/0] - (type (Or .Any .Bit .Nat .Int .Rev .Frac .Text))} + (type_literal (Or .Any .Bit .Nat .Int .Rev .Frac .Text))} tags/* (list @any @bit @nat @int @rev @frac @text) :record: {.#Named [module/0 module/0] - (type (And .Any .Bit .Nat .Int .Rev .Frac .Text))} + (type_literal (And .Any .Bit .Nat .Int .Rev .Frac .Text))} slots/* (list @any @bit @nat @int @rev @frac @text) simple! diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/case.lux b/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/case.lux index 0564c82db..8f58207b2 100644 --- a/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/case.lux +++ b/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/case.lux @@ -92,12 +92,12 @@ (Tuple (All (_ a b c) input/0) (All (_ a b c) input/1) (All (_ a b c) input/2))) - (tuple? (type ((All (_ a b c) (Tuple a b c)) input/0 input/1 input/2)) + (tuple? (type_literal ((All (_ a b c) (Tuple a b c)) input/0 input/1 input/2)) (Tuple input/0 input/1 input/2)) (|> (do check.monad [[@var :var:] check.var _ (check.bind (All (_ a b c) (Tuple a b c)) @var)] - (/.tuple (type (:var: input/0 input/1 input/2)))) + (/.tuple (type_literal (:var: input/0 input/1 input/2)))) (check.result check.fresh_context) (try#each (|>> product.right (type#= (Tuple input/0 input/1 input/2)))) (try.else false)) @@ -122,19 +122,19 @@ (exception.otherwise (text.contains? (the exception.#label /.non_tuple)))) (|> (do check.monad [[@var :var:] check.var - _ (/.tuple (type (:var: input/0 input/1 input/2)))] + _ (/.tuple (type_literal (:var: input/0 input/1 input/2)))] (in false)) (check.result check.fresh_context) (exception.otherwise (text.contains? (the exception.#label /.non_tuple)))) (|> (do check.monad - [_ (/.tuple (type (input/0 input/1 input/2)))] + [_ (/.tuple (type_literal (input/0 input/1 input/2)))] (in false)) (check.result check.fresh_context) (exception.otherwise (text.contains? (the exception.#label /.non_tuple)))) (|> (do check.monad [[@var :var:] check.var _ (check.bind input/0 @var) - _ (/.tuple (type (:var: input/1 input/2)))] + _ (/.tuple (type_literal (:var: input/1 input/2)))] (in false)) (check.result check.fresh_context) (exception.otherwise (text.contains? (the exception.#label /.non_tuple)))))) diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/complex.lux b/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/complex.lux index 0e3b6130b..0454ecfb0 100644 --- a/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/complex.lux +++ b/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/complex.lux @@ -180,12 +180,12 @@ (//phase#each product.right) (//phase.result state) (try.else false)) - (and (sum? (type (Maybe tagT)) 0 #0 (` [])) - (sum? (type (Maybe tagT)) 0 #1 tagC)) - (and (sum? (type (All (_ a) (Maybe a))) 0 #0 (` [])) - (not (sum? (type (All (_ a) (Maybe a))) 0 #1 tagC))) - (and (sum? (type (Ex (_ a) (Maybe a))) 0 #0 (` [])) - (sum? (type (Ex (_ a) (Maybe a))) 0 #1 tagC))))) + (and (sum? (type_literal (Maybe tagT)) 0 #0 (` [])) + (sum? (type_literal (Maybe tagT)) 0 #1 tagC)) + (and (sum? (type_literal (All (_ a) (Maybe a))) 0 #0 (` [])) + (not (sum? (type_literal (All (_ a) (Maybe a))) 0 #1 tagC))) + (and (sum? (type_literal (Ex (_ a) (Maybe a))) 0 #0 (` [])) + (sum? (type_literal (Ex (_ a) (Maybe a))) 0 #1 tagC))))) (_.for [/.cannot_analyse_variant] (let [failure? (is (All (_ a) (-> (Exception a) (//analysis.Operation Any) Bit)) (function (_ exception analysis) @@ -200,7 +200,7 @@ (|> (do //phase.monad [[@var varT] (//type.check check.var)] (|> (/.sum ..analysis lefts right? archive.empty tagC) - (//type.expecting (type (varT tagT))))) + (//type.expecting (type_literal (varT tagT))))) (failure? /.invalid_variant_type)))) (_.coverage [/.cannot_infer_sum] (|> (do //phase.monad @@ -281,7 +281,7 @@ ))) ))) -(type: (Triple a) +(type (Triple a) [a a a]) (def test|product @@ -322,9 +322,9 @@ (try.else false))))] (and (product? productT expected) (product? {.#Named name productT} expected) - (product? (type (Ex (_ a) [a a])) (list term/0 term/0)) - (not (product? (type (All (_ a) [a a])) (list term/0 term/0))) - (product? (type (Triple type/0)) (list term/0 term/0 term/0)) + (product? (type_literal (Ex (_ a) [a a])) (list term/0 term/0)) + (not (product? (type_literal (All (_ a) [a a])) (list term/0 term/0))) + (product? (type_literal (Triple type/0)) (list term/0 term/0 term/0)) (|> (do //phase.monad [[@var varT] (//type.check check.var) _ (//type.check (check.check varT productT)) @@ -424,7 +424,7 @@ [[@var varT] (//type.check check.var)] (|> expected (/.product ..analysis archive.empty) - (//type.expecting (type (varT type/0))))) + (//type.expecting (type_literal (varT type/0))))) (failure? /.invalid_tuple_type)))))) ))) @@ -647,13 +647,13 @@ ..test|record (_.coverage [/.not_a_quantified_type] (and (|> (/.sum ..analysis lefts right? archive.empty term/0) - (//type.expecting (type (type/0 type/1))) + (//type.expecting (type_literal (type/0 type/1))) (//phase.result state) (..failure? /.not_a_quantified_type)) (|> types/*,terms/* (list#each product.right) (/.product ..analysis archive.empty) - (//type.expecting (type (type/0 type/1))) + (//type.expecting (type_literal (type/0 type/1))) (//phase.result state) (..failure? /.not_a_quantified_type)))) )))) diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/function.lux b/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/function.lux index bae25b39f..16b3e1b60 100644 --- a/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/function.lux +++ b/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/function.lux @@ -128,11 +128,11 @@ (function? (Ex (_ a) (-> a a)) term/0) (function? (Rec self (-> input/0 self)) $function/0) - (function? (type ((All (_ a) (-> a a)) output/0)) term/0) - (not (function? (type ((All (_ a) (-> a a)) output/1)) term/0)) + (function? (type_literal ((All (_ a) (-> a a)) output/0)) term/0) + (not (function? (type_literal ((All (_ a) (-> a a)) output/1)) term/0)) - (function? (type ((Ex (_ a) (-> a a)) output/0)) term/0) - (not (function? (type ((Ex (_ a) (-> a a)) output/1)) term/0)) + (function? (type_literal ((Ex (_ a) (-> a a)) output/0)) term/0) + (not (function? (type_literal ((Ex (_ a) (-> a a)) output/1)) term/0)) (function?' (-> input/0 input/1 input/0) (` ([(~ $function/1) (~ $argument/1)] (~ $argument/0))) (function (_ [outer body]) diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux b/stdlib/source/test/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux index 2fbfdc967..19d27a9b6 100644 --- a/stdlib/source/test/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux +++ b/stdlib/source/test/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux @@ -69,7 +69,7 @@ (_.property "Can 'try' risky IO computations." (check_success+ "lux try" (list (` ("lux io error" "YOLO"))) - (type (Either Text primT)))) + (type_literal (Either Text primT)))) ))) (def i64 @@ -151,7 +151,7 @@ (_.property "Can convert frac number to text." (check_success+ "lux f64 encode" (list subjectC) Text)) (_.property "Can convert text to frac number." - (check_success+ "lux f64 decode" (list encodedC) (type (Maybe Frac)))) + (check_success+ "lux f64 decode" (list encodedC) (type_literal (Maybe Frac)))) ))) (def text @@ -170,7 +170,7 @@ (_.property "Can concatenate one text to another." (check_success+ "lux text concat" (list subjectC paramC) Text)) (_.property "Can find the index of a piece of text inside a larger one that (may) contain it." - (check_success+ "lux text index" (list fromC paramC subjectC) (type (Maybe Nat)))) + (check_success+ "lux text index" (list fromC paramC subjectC) (type_literal (Maybe Nat)))) (_.property "Can query the size/length of a text." (check_success+ "lux text size" (list subjectC) Nat)) (_.property "Can obtain the character code of a text at a given index." diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/function.lux b/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/function.lux index 44f51ced1..e4631f5ad 100644 --- a/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/function.lux +++ b/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/function.lux @@ -72,13 +72,13 @@ _ false))) -(type: Circumstance +(type Circumstance (Record [#loop? Bit #expectation Synthesis #reality Analysis])) -(type: Scenario +(type Scenario (-> Bit (Random Circumstance))) (def (random_unit output?) diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/loop.lux b/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/loop.lux index 860312b0b..83fc7eee2 100644 --- a/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/loop.lux +++ b/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/loop.lux @@ -23,7 +23,7 @@ ["[0]" reference (.only Constant) ["[0]" variable (.only Register Variable)]]]]]]) -(type: (Scenario a) +(type (Scenario a) (-> Register Arity Register (Random [Register [a a]]))) (def (primitive offset arity next) diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/variable.lux b/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/variable.lux index 6db68f4c9..11b308c86 100644 --- a/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/variable.lux +++ b/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/variable.lux @@ -36,11 +36,11 @@ _ false))) -(type: Context +(type Context [#redundants Nat #necessary (Dictionary Nat Nat)]) -(type: (Scenario a) +(type (Scenario a) (-> Context (Random [a a]))) (with_template [ ] diff --git a/stdlib/source/test/lux/type.lux b/stdlib/source/test/lux/type.lux index d2c1ba0b1..436dc4e85 100644 --- a/stdlib/source/test/lux/type.lux +++ b/stdlib/source/test/lux/type.lux @@ -197,7 +197,7 @@ (_.coverage [/.by_example] (let [example (is (Maybe Nat) {.#None})] - (/#= (.type (List Nat)) + (/#= (.type_literal (List Nat)) (/.by_example [a] (is (Maybe a) example) diff --git a/stdlib/source/test/lux/type/check.lux b/stdlib/source/test/lux/type/check.lux index 194692533..3c45d4db4 100644 --- a/stdlib/source/test/lux/type/check.lux +++ b/stdlib/source/test/lux/type/check.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except type symbol) + [lux (.except symbol type) ["_" test (.only Test)] ["[0]" type (.use "[1]#[0]" equivalence)] [abstract @@ -390,10 +390,10 @@ right (random.only (|>> (= left) not) random)] (in [left right]))) -(type: Super +(.type Super (Ex (_ sub) [Text sub])) -(type: Sub +(.type Sub (Super Bit)) (def (handles_nominal_types! name/0 name/1 parameter/0 parameter/1) @@ -576,28 +576,28 @@ (def (handles_quantification! nominal) (-> Type Bit) (let [universals_satisfy_themselves! - (..succeeds? (/.check (.type (All (_ a) (Maybe a))) - (.type (All (_ a) (Maybe a))))) + (..succeeds? (/.check (.type_literal (All (_ a) (Maybe a))) + (.type_literal (All (_ a) (Maybe a))))) existentials_satisfy_themselves! - (..succeeds? (/.check (.type (Ex (_ a) (Maybe a))) - (.type (Ex (_ a) (Maybe a))))) + (..succeeds? (/.check (.type_literal (Ex (_ a) (Maybe a))) + (.type_literal (Ex (_ a) (Maybe a))))) universals_satisfy_particulars! - (..succeeds? (/.check (.type (Maybe nominal)) - (.type (All (_ a) (Maybe a))))) + (..succeeds? (/.check (.type_literal (Maybe nominal)) + (.type_literal (All (_ a) (Maybe a))))) particulars_do_not_satisfy_universals! - (..fails? (/.check (.type (All (_ a) (Maybe a))) - (.type (Maybe nominal)))) + (..fails? (/.check (.type_literal (All (_ a) (Maybe a))) + (.type_literal (Maybe nominal)))) particulars_satisfy_existentials! - (..succeeds? (/.check (.type (Ex (_ a) (Maybe a))) - (.type (Maybe nominal)))) + (..succeeds? (/.check (.type_literal (Ex (_ a) (Maybe a))) + (.type_literal (Maybe nominal)))) existentials_do_not_satisfy_particulars! - (..fails? (/.check (.type (Maybe nominal)) - (.type (Ex (_ a) (Maybe a)))))] + (..fails? (/.check (.type_literal (Maybe nominal)) + (.type_literal (Ex (_ a) (Maybe a)))))] (and universals_satisfy_themselves! existentials_satisfy_themselves! @@ -635,26 +635,26 @@ (def (handles_application! nominal/0 nominal/1) (-> Type Type Bit) (let [types_flow_through! - (and (..succeeds? (/.check (.type ((All (_ a) a) nominal/0)) + (and (..succeeds? (/.check (.type_literal ((All (_ a) a) nominal/0)) nominal/0)) (..succeeds? (/.check nominal/0 - (.type ((All (_ a) a) nominal/0)))) + (.type_literal ((All (_ a) a) nominal/0)))) - (..succeeds? (/.check (.type ((Ex (_ a) a) nominal/0)) + (..succeeds? (/.check (.type_literal ((Ex (_ a) a) nominal/0)) nominal/0)) (..succeeds? (/.check nominal/0 - (.type ((Ex (_ a) a) nominal/0))))) + (.type_literal ((Ex (_ a) a) nominal/0))))) multiple_parameters! - (and (..succeeds? (/.check (.type ((All (_ a b) [a b]) nominal/0 nominal/1)) - (.type [nominal/0 nominal/1]))) - (..succeeds? (/.check (.type [nominal/0 nominal/1]) - (.type ((All (_ a b) [a b]) nominal/0 nominal/1)))) + (and (..succeeds? (/.check (.type_literal ((All (_ a b) [a b]) nominal/0 nominal/1)) + (.type_literal [nominal/0 nominal/1]))) + (..succeeds? (/.check (.type_literal [nominal/0 nominal/1]) + (.type_literal ((All (_ a b) [a b]) nominal/0 nominal/1)))) - (..succeeds? (/.check (.type ((Ex (_ a b) [a b]) nominal/0 nominal/1)) - (.type [nominal/0 nominal/1]))) - (..succeeds? (/.check (.type [nominal/0 nominal/1]) - (.type ((Ex (_ a b) [a b]) nominal/0 nominal/1)))))] + (..succeeds? (/.check (.type_literal ((Ex (_ a b) [a b]) nominal/0 nominal/1)) + (.type_literal [nominal/0 nominal/1]))) + (..succeeds? (/.check (.type_literal [nominal/0 nominal/1]) + (.type_literal ((Ex (_ a b) [a b]) nominal/0 nominal/1)))))] (and types_flow_through! multiple_parameters!))) @@ -837,10 +837,10 @@ (Random Bit) (do random.monad [example ..clean_type] - (in (and (and (/.subsumes? (.type (List example)) (.type (All (_ a) (List a)))) - (not (/.subsumes? (.type (All (_ a) (List a))) (.type (List example))))) - (and (/.subsumes? (.type (Ex (_ a) (List a))) (.type (List example))) - (not (/.subsumes? (.type (List example)) (.type (Ex (_ a) (List a)))))))))) + (in (and (and (/.subsumes? (.type_literal (List example)) (.type_literal (All (_ a) (List a)))) + (not (/.subsumes? (.type_literal (All (_ a) (List a))) (.type_literal (List example))))) + (and (/.subsumes? (.type_literal (Ex (_ a) (List a))) (.type_literal (List example))) + (not (/.subsumes? (.type_literal (List example)) (.type_literal (Ex (_ a) (List a)))))))))) (def for_subsumption|named (Random Bit) diff --git a/stdlib/source/test/lux/type/variance.lux b/stdlib/source/test/lux/type/variance.lux index da2b5207c..911c68067 100644 --- a/stdlib/source/test/lux/type/variance.lux +++ b/stdlib/source/test/lux/type/variance.lux @@ -11,10 +11,10 @@ ["/[1]" // (.only) ["[1][0]" check]]]]) -(type: Super +(type Super (Ex (_ sub) [Text sub])) -(type: Sub +(type Sub (Super Bit)) (def .public test @@ -22,14 +22,14 @@ (<| (_.covering /._) (all _.and (_.coverage [/.Co] - (and (//check.subsumes? (type (/.Co Super)) (type (/.Co Sub))) - (not (//check.subsumes? (type (/.Co Sub)) (type (/.Co Super)))))) + (and (//check.subsumes? (type_literal (/.Co Super)) (type_literal (/.Co Sub))) + (not (//check.subsumes? (type_literal (/.Co Sub)) (type_literal (/.Co Super)))))) (_.coverage [/.Contra] - (and (//check.subsumes? (type (/.Contra Sub)) (type (/.Contra Super))) - (not (//check.subsumes? (type (/.Contra Super)) (type (/.Contra Sub)))))) + (and (//check.subsumes? (type_literal (/.Contra Sub)) (type_literal (/.Contra Super))) + (not (//check.subsumes? (type_literal (/.Contra Super)) (type_literal (/.Contra Sub)))))) (_.coverage [/.In] - (and (//check.subsumes? (type (/.In Super)) (type (/.In Super))) - (//check.subsumes? (type (/.In Sub)) (type (/.In Sub))) - (not (//check.subsumes? (type (/.In Sub)) (type (/.In Super)))) - (not (//check.subsumes? (type (/.In Super)) (type (/.In Sub)))))) + (and (//check.subsumes? (type_literal (/.In Super)) (type_literal (/.In Super))) + (//check.subsumes? (type_literal (/.In Sub)) (type_literal (/.In Sub))) + (not (//check.subsumes? (type_literal (/.In Sub)) (type_literal (/.In Super)))) + (not (//check.subsumes? (type_literal (/.In Super)) (type_literal (/.In Sub)))))) ))) diff --git a/stdlib/source/test/lux/world/file.lux b/stdlib/source/test/lux/world/file.lux index f287e0652..5fd673e83 100644 --- a/stdlib/source/test/lux/world/file.lux +++ b/stdlib/source/test/lux/world/file.lux @@ -30,7 +30,7 @@ [\\specification ["$[0]" /]]) -(type: Disk +(type Disk (Dictionary /.Path (Either [Instant Binary] (List Text)))) (def (file? disk @) diff --git a/stdlib/source/unsafe/lux/data/binary.lux b/stdlib/source/unsafe/lux/data/binary.lux index c5774734c..aff596957 100644 --- a/stdlib/source/unsafe/lux/data/binary.lux +++ b/stdlib/source/unsafe/lux/data/binary.lux @@ -14,7 +14,7 @@ [number (.only hex) ["[0]" i64]]]]]) -(with_expansions [ (these (type: .public Binary +(with_expansions [ (these (type .public Binary (ffi.type [byte])) (ffi.import java/lang/Object @@ -37,15 +37,15 @@ (ffi.import Uint8Array "[1]::[0]") - (type: .public Binary + (type .public Binary Uint8Array)) @.python - (type: .public Binary + (type .public Binary (Primitive "bytearray")) @.scheme - (these (type: .public Binary + (these (type .public Binary (Primitive "bytevector")) (ffi.import (make-bytevector [Nat] Binary)) @@ -54,7 +54,7 @@ (ffi.import (bytevector-length [Binary] Nat))) ... Default - (type: .public Binary + (type .public Binary (array.Array (I64 Any))))) (`` (with_expansions [ (.is .Nat size) diff --git a/stdlib/source/unsafe/lux/data/collection/array.lux b/stdlib/source/unsafe/lux/data/collection/array.lux index b0c56e886..f7d7aebfb 100644 --- a/stdlib/source/unsafe/lux/data/collection/array.lux +++ b/stdlib/source/unsafe/lux/data/collection/array.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except type list) + [lux (.except list type) ["@" target] [abstract ["[0]" functor]] @@ -14,7 +14,7 @@ "#Array") (with_template [ ] - [(type: .public + [(.type .public {.#Primitive ..type {.#Item {.#End}}})] [(variance.Mutable r w) (Array' r w)] -- cgit v1.2.3