cicada-plct
Cicada Language (PLCT little team)
File Explorer
Download Latest Version (.zip)- node.js.yml
- cic.js
- 2023-03-21-cicada-monologues.md
- 2023-03-22-cicada-lang-manual.md
- xia.jpg
- HOME.md
- 01.md
- 02.md
- 03.md
- 04.md
- 05.md
- 06.md
- 07.md
- 08.error.cic
- 08.md
- 09.md
- 10.md
- 11.md
- 12.md
- 13.md
- 14.md
- 15.error.cic
- 15.md
- 16.md
- 99-appendix-b.md
- book.json
- 2021-10-19-integer-as-quotient-type.md
- 2021-10-31-inductive-datatype.md
- 2021-11-11-overloading-function-application-syntax-for-fulfilling-class.md
- 2022-11-02-error-message-design.md
- 2022-11-03-solved-problems.md
- 2022-11-07-class-and-self-type.md
- 2022-11-07-the-use-of-freshen-during-unify-classes.md
- 2022-11-16-solving-implicit-arguments-in-the-place-of-application.md
- 2022-11-18-would-programming-by-rewriting-easier.md
- 2022-11-19-using-readback-during-elaboration.md
- 2022-11-20-maybe-should-not-allow-literal-fulfilled-class.md
- 2022-11-20-overloading-object-dot-syntax-for-data-constructor.md
- 2023-04-16-the-implementation-feels-hard-to-understand.md
- 2023-04-22-different-forms-of-judgments.md
- 2024-03-21-using-js-style-import-and-export.md
- 2024-03-22-interface-vs-class.md
- Exp.cic
- index.cic
- doAp.cic
- index.cic
- lookup.cic
- reduce.cic
- substitute.cic
- Check.cic
- Closure.cic
- Exp.cic
- fill.cic
- Neutral.cic
- Normal.cic
- Telescope.cic
- Value.cic
- planner.md
- check-functional.cic
- Check.cic
- Check.test.cic
- Exp.cic
- infer-functional.cic
- Ty.cic
- check-functional.cic
- Check.cic
- Closure.cic
- Exp.cic
- infer-functional.cic
- Neutral.cic
- Normal.cic
- Value.cic
- built-in-types.md
- built-in-types.md.out
- class-and-object.md
- class-and-object.md.out
- fulfilling-type.md
- fulfilling-type.md.out
- inheritance.md
- inheritance.md.out
- mathematical-structure-as-class.md
- boolean.md
- boolean.md.out
- either.md
- either.md.out
- fin.md
- fin.md.out
- less-than.md
- less-than.md.out
- list.md
- list.md.out
- nat.md
- nat.md.out
- proving-theorems-about-nat.md
- proving-theorems-about-nat.md.out
- vector.md
- vector.md.out
- implicit-arguments.md
- implicit-arguments.md.out
- vague-arguments.md
- vague-arguments.md.out
- basic.cic
- import.md
- import.md.out
- list-append.md
- list-length.md
- list-length.md.out
- univalent-axiom.md
- univalent-axiom.md.out
- installation.md
- installation.md.out
- introduction.md
- introduction.md.out
- application-patterns.md
- hurkens-paradox.md
- implicit-arguments.md
- naming-conversions.md
- one-of-euler-s-conjecture.md
- semantics-architecture.md
- simulating-the-sigma-type-by-hand.md
- statements-vs-expressions.md
- syntax-design.md
- telescope.md
- traditional-semantics-vs-algebraic-semantics.md
- let.cic
- let.cic.out
- fn-syntax.md
- fn-syntax.md.out
- cons-is-not-type.error.cic
- cons-is-not-type.error.cic.err
- pair-can-only-take-type.error.cic
- pair-can-only-take-type.error.cic.err
- my-name.cic
- my-name.cic.out
- the.cic
- the.cic.out
- todo.cic
- todo.cic.out
- sole.cic
- sole.cic.out
- type-in-type.cic
- type-in-type.cic.out
- abc-fulfilling.cic
- abc-fulfilling.cic.out
- abc-pre-filled.cic
- abc-pre-filled.cic.out
- abc-pre-filled.error.cic
- abc-pre-filled.error.cic.err
- cls-scope.cic
- cls-scope.cic.out
- natural-transformation.cic
- natural-transformation.cic.out
- abc-extends.cic
- abc-extends.cic.out
- order--inlined.cic
- order--inlined.cic.out
- order.cic
- abc-extra-fields.cic
- abc-extra-fields.cic.out
- abc-nested.cic
- abc-nested.cic.out
- abc-shorthand.cic
- abc-shorthand.cic.out
- abc-spread.cic
- abc-spread.cic.out
- abc.md
- abc.md.out
- category-with-a-typo.error.cic
- category-with-a-typo.error.cic.err
- category.cic
- category.cic.out
- duplicated-class-field-names.error.cic
- duplicated-class-field-names.error.cic.err
- duplicated-object-field-names.error.cic
- duplicated-object-field-names.error.cic.err
- functor-with-a-typo.error.cic
- functor-with-a-typo.error.cic.err
- functor.cic
- functor.cic.out
- not-the-same-function.error.cic
- not-the-same-function.error.cic.err
- not-the-same-pair.error.cic
- not-the-same-pair.error.cic.err
- not-the-same-string.error.cic
- not-the-same-string.error.cic.err
- same-as-chart.cic
- same-as-chart.cic.out
- same-as-chart.error.cic
- same-as-chart.error.cic.err
- same-elab-to-refl.cic
- same-elab-to-refl.cic.out
- the-same.cic
- the-same.cic.out
- implicit-ap.md
- implicit-ap.md.out
- implicit-fn.error.cic
- implicit-fn.error.cic.err
- implicit-fn.md
- implicit-fn.md.out
- implicit-pi.md
- implicit-pi.md.out
- vague-fn.md
- vague-fn.md.out
- vague-pi.md
- vague-pi.md.out
- a.cic
- a.cic.out
- b.cic
- b.cic.out
- c.cic
- c.cic.out
- circular-import.error.cic
- circular-import.error.cic.err
- Either.cic
- Map.cic
- MapFind.cic
- Pair.cic
- Vector.cic
- absorb.cic
- associative.todo.cic
- booleanDomain.cic
- BooleanLattice.cic
- bound.cic
- dual.cic
- dualInvolutive.cic
- idempotent.cic
- order.cic
- uniqueId.cic
- Category.cic
- Epimorphism.cic
- Functor.cic
- index.cic
- Initial.cic
- Isomorphism.cic
- Monomorphism.cic
- NaturalTransformation.cic
- Terminal.cic
- terminalIsoUnique.cic
- terminalIsoWithoutFulfillingClass.cic
- terminalIsoWithoutFulfillingClass.cic.out
- trivialCategory.cic
- index.cic
- utils.cic
- Group.cic
- groupCategory.todo.cic
- GroupHomomorphism.cic
- GroupHomomorphism.test.cic
- GroupHomomorphism.test.cic.out
- index.cic
- Monoid.cic
- Semigroup.cic
- SemigroupIntrinsicAssociative.todo.md
- trivialGroup.cic
- trivialGroup.cic.out
- trivialSemigroup.cic
- trivialSemigroup.cic.out
- Groupoid.cic
- GroupoidLexicalScopeTest.cic
- trivialGroupoid.cic
- trivialGroupoid.cic.out
- Order.todo.md
- StrictOrder.todo.md
- Set.cic
- equivalent.cic
- equivalent.cic.out
- let.cic
- let.cic.out
- the.cic
- the.cic.out
- abc-extends.cic
- abc-extends.cic.out
- order-inlined.cic
- order-inlined.cic.out
- order.cic
- a.cic
- a.cic.out
- b.cic
- b.cic.out
- c.cic
- c.cic.out
- circular-import.error.cic
- circular-import.error.cic.err
- markdown-script.md
- markdown-script.md.out
- author.json
- TODO.md
- App.ts
- AppHome.ts
- AppReplEventHandler.ts
- index.ts
- Default.ts
- index.ts
- Repl.ts
- Run.ts
- index.ts
- Runner.ts
- doAp.ts
- doApImplicit.ts
- doCar.ts
- doCdr.ts
- doDot.ts
- doReplace.ts
- index.ts
- check.ts
- checkByInfer.ts
- checkClazz.ts
- checkProperties.ts
- checkType.ts
- index.ts
- Closure.ts
- closureApply.ts
- index.ts
- assertClazz.ts
- clazzAppend.ts
- Core.ts
- formatCore.ts
- freeNames.ts
- freeOccurred.ts
- index.ts
- unfoldFormatAp.ts
- unfoldFormatClazz.ts
- unfoldFormatFn.ts
- unfoldFormatPi.ts
- unfoldFormatSigma.ts
- Ctx.ts
- ctxDeleteFirst.ts
- ctxLookupType.ts
- ctxLookupValue.ts
- ctxNames.ts
- ctxToEnv.ts
- index.ts
- Env.ts
- envDeleteFirst.ts
- envLookupValue.ts
- envNames.ts
- index.ts
- equivalent.ts
- equivalentByType.ts
- equivalentByValue.ts
- equivalentClazz.ts
- equivalentNeutral.ts
- equivalentProperties.ts
- equivalentType.ts
- index.ts
- AssertionError.ts
- ElaborationError.ts
- EquivalenceError.ts
- ErrorReport.ts
- EvaluationError.ts
- InclusionError.ts
- index.ts
- InternalError.ts
- LangError.ts
- ReadbackError.ts
- UnificationError.ts
- evaluate.ts
- index.ts
- Exp.ts
- foldAp.ts
- foldClazz.ts
- foldFn.ts
- foldFnWithRetType.ts
- foldPi.ts
- foldSequence.ts
- foldSigma.ts
- freeNames.ts
- index.ts
- prepareProperties.ts
- substitute.ts
- unfoldAp.ts
- GlobalStore.ts
- index.ts
- useGlobals.ts
- include.ts
- includeClazz.ts
- index.ts
- index.ts
- infer.ts
- inferExtraProperties.ts
- inferFulfillingClazz.ts
- inferNewArgs.ts
- inferOrUndefined.ts
- inferProperties.ts
- index.ts
- insertDuringCheck.ts
- insertDuringInfer.ts
- Insertion.ts
- insertionApply.ts
- solveByArgs.ts
- solveByRetType.ts
- index.ts
- Macro.ts
- Equivalent.ts
- index.ts
- index.ts
- Mod.ts
- index.ts
- Neutral.ts
- index.ts
- readback.ts
- readbackByType.ts
- readbackByValue.ts
- readbackClazz.ts
- readbackNeutral.ts
- readbackProperties.ts
- readbackType.ts
- formatSolution.ts
- index.ts
- Solution.ts
- solutionAdvanceValue.ts
- solutionBind.ts
- solutionCleanup.ts
- solutionLookupValue.ts
- solutionNames.ts
- solutionWalk.ts
- index.ts
- index.ts
- Stmt.ts
- index.ts
- Let.ts
- LetThe.ts
- Clazz.ts
- ClazzExtends.ts
- index.ts
- defineBinding.ts
- Import.ts
- ImportBinding.ts
- index.ts
- undoBinding.ts
- Equation.ts
- index.ts
- Solve.ts
- SolveBinding.ts
- unifyEquation.ts
- Check.ts
- Compute.ts
- Include.ts
- index.ts
- index.ts
- arg.ts
- clazz_binding.ts
- equation.ts
- equivalent_entry.ts
- exp.ts
- fn_binding.ts
- import_binding.ts
- index.ts
- key.ts
- name.ts
- pi_binding.ts
- property.ts
- sequence.ts
- sigma_binding.ts
- solve_binding.ts
- stmt.ts
- arg_matcher.ts
- clazz_binding_matcher.ts
- equation_matcher.ts
- equivalent_entry_matcher.ts
- exp_matcher.ts
- fn_binding_matcher.ts
- import_binding_matcher.ts
- index.ts
- key_matcher.ts
- pi_binding_matcher.ts
- property_matcher.ts
- sequence_matcher.ts
- sigma_binding_matcher.ts
- solve_binding_matcher.ts
- stmt_matcher.ts
- utils.ts
- ap-implicit.test.ts
- ap.test.ts
- clazz-json.test.ts
- clazz.test.ts
- dot-json.test.ts
- dot.test.ts
- fn-annotated.test.ts
- fn-implicit.test.ts
- fn-with-return-type.test.ts
- fn.test.ts
- objekt-json.test.ts
- objekt-spread.test.ts
- objekt.test.ts
- pi-implicit.test.ts
- pi.test.ts
- quote.test.ts
- sequence.test.ts
- sigma.test.ts
- var.test.ts
- check.test.ts
- clazz.test.ts
- function-with-implicit.test.ts
- function-with-return-type.test.ts
- function.test.ts
- import.test.ts
- inclusion.test.ts
- let.test.ts
- solve.test.ts
- utils.ts
- index.ts
- check-ap-implicit-insertion.test.ts
- check-ap.test.ts
- check-car.test.ts
- check-cdr.test.ts
- check-clazz-fulfilling.test.ts
- check-clazz.test.ts
- check-cons.test.ts
- check-dot.test.ts
- check-fn-annotated.test.ts
- check-fn-implicit-insertion.test.ts
- check-fn-implicit.test.ts
- check-fn.test.ts
- check-new-ap.test.ts
- check-new.test.ts
- check-objekt-spread.test.ts
- check-objekt.test.ts
- check-pair.test.ts
- check-pi-implicit.test.ts
- check-pi.test.ts
- check-quote.test.ts
- check-refl.test.ts
- check-same.test.ts
- check-sequence-no-enrich.test.ts
- check-sequence.test.ts
- check-sigma.test.ts
- check-sole.test.ts
- check-string.test.ts
- check-the.test.ts
- check-trivial.test.ts
- check-type.test.ts
- check-var.test.ts
- compute-ap-implicit-insertion.test.ts.snap
- compute-ap-implicit.test.ts.snap
- compute-ap.test.ts.snap
- compute-car.test.ts.snap
- compute-cdr.test.ts.snap
- compute-clazz-json.test.ts.snap
- compute-clazz.test.ts.snap
- compute-cons.test.ts.snap
- compute-dot-json.test.ts.snap
- compute-dot.test.ts.snap
- compute-equal.test.ts.snap
- compute-fn-annotated.test.ts.snap
- compute-fn-implicit.test.ts.snap
- compute-fn-with-return-type.test.ts.snap
- compute-fn.test.ts.snap
- compute-new.test.ts.snap
- compute-objekt-json.test.ts.snap
- compute-objekt.test.ts.snap
- compute-pair.test.ts.snap
- compute-pi-implicit.test.ts.snap
- compute-pi.test.ts.snap
- compute-quote.test.ts.snap
- compute-refl.test.ts.snap
- compute-replace.test.ts.snap
- compute-same.test.ts.snap
- compute-sequence.test.ts.snap
- compute-sigma.test.ts.snap
- compute-sole.test.ts.snap
- compute-string.test.ts.snap
- compute-the.test.ts.snap
- compute-trivial.test.ts.snap
- compute-type.test.ts.snap
- compute-ap-implicit-insertion-scope.test.ts
- compute-ap-implicit-insertion.test.ts
- compute-ap-implicit.test.ts
- compute-ap.test.ts
- compute-car.test.ts
- compute-cdr.test.ts
- compute-clazz-json.test.ts
- compute-clazz.test.ts
- compute-cons.test.ts
- compute-dot-json.test.ts
- compute-dot.test.ts
- compute-equal.test.ts
- compute-fn-annotated.test.ts
- compute-fn-implicit.test.ts
- compute-fn-with-return-type.test.ts
- compute-fn.test.ts
- compute-new.test.ts
- compute-objekt-json.test.ts
- compute-objekt.test.ts
- compute-pair.test.ts
- compute-pi-implicit.test.ts
- compute-pi.test.ts
- compute-quote.test.ts
- compute-refl.test.ts
- compute-replace.test.ts
- compute-same.test.ts
- compute-sequence.test.ts
- compute-sigma.test.ts
- compute-sole.test.ts
- compute-string.test.ts
- compute-the.test.ts
- compute-trivial.test.ts
- compute-type.test.ts
- equivalent-clazz-out-of-order.test.ts.snap
- equivalent-clazz.test.ts.snap
- equivalent-cons.test.ts.snap
- equivalent-fn.test.ts.snap
- equivalent-objekt-out-of-order.test.ts.snap
- equivalent-objekt.test.ts.snap
- equivalent-pi.test.ts.snap
- equivalent-quote.test.ts.snap
- equivalent-sigma.test.ts.snap
- equivalent-sole.test.ts.snap
- equivalent-string.test.ts.snap
- equivalent-trivial.test.ts.snap
- equivalent-type.test.ts.snap
- equivalent-clazz-out-of-order.test.ts
- equivalent-clazz.test.ts
- equivalent-cons.test.ts
- equivalent-fn.test.ts
- equivalent-objekt-out-of-order.test.ts
- equivalent-objekt.test.ts
- equivalent-pi.test.ts
- equivalent-quote.test.ts
- equivalent-sigma.test.ts
- equivalent-sole.test.ts
- equivalent-string.test.ts
- equivalent-trivial.test.ts
- equivalent-type.test.ts
- include-clazz-out-of-order.test.ts
- include-clazz.test.ts
- include-equal.test.ts
- include-pi.test.ts
- include-sigma.test.ts
- solve-ap-implicit.test.ts.snap
- solve-ap.test.ts.snap
- solve-box-implicit.test.ts.snap
- solve-box.test.ts.snap
- solve-car.test.ts.snap
- solve-cdr.test.ts.snap
- solve-clazz.test.ts.snap
- solve-cons.test.ts.snap
- solve-dot.test.ts.snap
- solve-fn-implicit.test.ts.snap
- solve-fn.test.ts.snap
- solve-objekt.test.ts.snap
- solve-pi-implicit.test.ts.snap
- solve-pi.test.ts.snap
- solve-quote.test.ts.snap
- solve-sigma.test.ts.snap
- solve-sole.test.ts.snap
- solve-string.test.ts.snap
- solve-trivial.test.ts.snap
- solve-type.test.ts.snap
- solve-ap-implicit.test.ts
- solve-ap.test.ts
- solve-box-implicit.test.ts
- solve-box.test.ts
- solve-car.test.ts
- solve-cdr.test.ts
- solve-clazz-out-of-order.test.ts
- solve-clazz.test.ts
- solve-cons.test.ts
- solve-dot.test.ts
- solve-fn-implicit.test.ts
- solve-fn.test.ts
- solve-objekt.test.ts
- solve-pi-implicit.test.ts
- solve-pi.test.ts
- solve-quote.test.ts
- solve-sigma.test.ts
- solve-sole.test.ts
- solve-string.test.ts
- solve-trivial.test.ts
- solve-type.test.ts
- utils.ts
- index.ts
- occur.ts
- unify.ts
- unifyByType.ts
- unifyByValue.ts
- unifyClazz.ts
- unifyNeutral.ts
- unifyPatternVar.ts
- unifyProperties.ts
- unifyType.ts
- freshen.test.ts
- freshen.ts
- isIdentifier.test.ts
- isIdentifier.ts
- assertClazzInCtx.ts
- assertTypeInCtx.ts
- assertTypesInCtx.ts
- clazzClosureApply.ts
- clazzExtendCtx.ts
- clazzFromTypedValues.ts
- clazzFulfill.ts
- clazzFulfilledPrepend.ts
- clazzLookupProperty.ts
- clazzLookupPropertyType.ts
- clazzPropertyNames.ts
- formatNeutral.ts
- formatType.ts
- formatTypedValue.ts
- formatValue.ts
- index.ts
- isClazz.ts
- TypedValue.ts
- Value.ts
- index.ts
- Loader.ts
- index.ts
- Script.ts
- createScript.ts
- DefaultScript.ts
- index.ts
- MarkdownScript.ts
- assertEqual.ts
- colors.ts
- equal.test.ts
- equal.ts
- formatDate.ts
- indent.ts
- leftPad.ts
- rightPad.ts
- index.ts
- .gitignore
- .prettierrc.json
- AUTHORS
- LICENSE
- package-lock.json
- package.json
- README.md
- STYLE-GUIDE.md
- TODO.md
- tsconfig.json
- website.json
# Installation Guide
1. Get the code
git clone https://github.com/cicada-lang/cicada-plct
Downloads the entire project code from GitHub to your computer.
cd cicada-plct
Moves into the project folder you just downloaded.
2. Node.js
Easy RecommendedPrerequisites
npm install # Install dependencies
Downloads and installs the libraries listed in package.json.
npm run build # Compile `src/` to `lib/`
Builds optimized production files.
npm run build:watch # Watch the compilation
Builds optimized production files.
npm run format # Format the code
Type this command into your terminal and run it.
npm run test # Run test
Type this command into your terminal and run it.
After running the command, open the address shown in the terminal (usually something like http://localhost:3000) in your browser.
Pulled directly from this repo's README.
// repository documentation
Was this content helpful?
(0 ratings)
