{"_id":"@cicada-lang/cicada-instars","_rev":"1-8c324a9eb97a411b4238b05d77972e52","name":"@cicada-lang/cicada-instars","dist-tags":{"latest":"0.0.20"},"versions":{"0.0.20":{"name":"@cicada-lang/cicada-instars","version":"0.0.20","repository":{"type":"git","url":"git+https://github.com/cicada-lang/cicada-instars.git"},"main":"lib/index.js","scripts":{"build":"npx tsc","watch":"npx tsc --watch","format":"npx prettier src examples --write"},"prettier":{"semi":false,"trailingComma":"es5"},"bin":{"lang0":"bin/lang0.js","lang1":"bin/lang1.js","lang2":"bin/lang2.js","lang3":"bin/lang3.js","lang4":"bin/lang4.js","lang5":"bin/lang5.js","partech":"bin/partech.js"},"devDependencies":{"@types/assert":"^1.5.4","@types/fs-readdir-recursive":"^1.0.0","@types/js-yaml":"^4.0.0","@types/nanoid":"^2.1.0","@types/node":"^14.14.37","prettier":"^2.2.1","typescript":"^4.2.3"},"dependencies":{"@types/deep-diff":"^1.0.0","@xieyuheng/test-runner":"^0.1.18","chalk":"^4.1.0","change-case":"^4.1.2","deep-diff":"^1.0.2","fast-deep-equal":"^3.1.3","fast-glob":"^3.2.5","fs-readdir-recursive":"^1.1.0","js-yaml":"^4.0.0","nanoid":"^3.1.22","portfinder":"^1.0.28","readdirp":"^3.6.0","regexp-match-indices":"^1.0.2","strip-ansi":"^6.0.0","yargs":"^16.2.0"},"license":"GPL-3.0-or-later","contributors":[{"name":"Xie Yuheng"}],"gitHead":"12ab6a0e9378b54ef4d510bbfbe0e7624cfd9be7","description":"## Contents","bugs":{"url":"https://github.com/cicada-lang/cicada-instars/issues"},"homepage":"https://github.com/cicada-lang/cicada-instars#readme","_id":"@cicada-lang/cicada-instars@0.0.20","_nodeVersion":"14.15.3","_npmVersion":"7.11.1","dist":{"integrity":"sha512-mHDAjB+MfydMsdtqKN4upOucXoDnwabYAcTrvPv+BTpeA5fusflQTIer9Sjh4+Gog8Wtj8bFKWN+HwiF/631HA==","shasum":"05cc8e04769544f8a58dbd875688eae19f704d95","tarball":"https://registry.npmjs.org/@cicada-lang/cicada-instars/-/cicada-instars-0.0.20.tgz","fileCount":1770,"unpackedSize":1135570,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjbbeCRA9TVsSAnZWagAAOc0QAKQQYIN3W31hOl0GyGmE\nWR11MF/Q3uNd/rbywizpagrMU7d3P/IjzuoqvheGVFz/BUr29x8qH6kFTzuY\nhJHrUgGAMbBYBRDbGbnQkuLb/Y3jy9aAUCk14/SFtKrhsmgK++qwjONR2k80\nyZ8DE4pM+JVsJ30IKDDFCyniMdksfsxyRnCbOPkSoT8EyrpSUcUTM+d2rVwi\n0VAjpkirQ3ZQzR/97+0qqw2v5KYgDTGIypo/lO8Dnwp5d0m8mkc8ErfDxZut\nrdZ6MLWi1a9JR4aLLYzLJs2IiE64YT1pKRGeENMwe5KFjBSZ7fvyTC53+6Bm\nH3LM1JqwR9v5YO0cm2wITfK4S/0vfRjXdUCWS1LrZivJ52para6guKVO7EGv\nzeqK5pQmYZLeJb6g0wbjKlAFao9vOJ2B6EsPqw6twLKm2lmmTcZ6GibSYPvH\nYOyCec0Rc9YkBU1ylat8ZUKVzXOw4UfsnLj/ttxTr2duNedoEiP9Q7mLuLs0\n5GF+MpxPS9HsMDfAgn9rRZnkRLVkaCqIsRdIxsIBjYYpGhuRoEsZfvm77FPu\nTiB9jf8jEvkELjl8PZN8gSZF0KnHQRuCCvOTVGyf+5BB/eeDWPQNiuC9jM54\nkadnj7FlsUTBekhLfLmP68JrQPabFhYS65IalFjMag1HbJgftdlOVDd56PTp\nS7o7\r\n=hjZ8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDtoV9Q81CuQHMGxXlG10PT3PymhehSajICwIwDfKj07gIgRobxliJjz9KlawcO3mXQUFM6+I4p1I9i9BD0GReN/GU="}]},"_npmUser":{"name":"xieyuheng","email":"xyheme@gmail.com"},"directories":{},"maintainers":[{"name":"xieyuheng","email":"xyheme@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cicada-instars_0.0.20_1619900126061_0.15170423194934757"},"_hasShrinkwrap":false}},"time":{"created":"2021-05-01T20:15:25.843Z","0.0.20":"2021-05-01T20:15:26.250Z","modified":"2022-04-04T22:58:16.510Z"},"maintainers":[{"name":"xieyuheng","email":"xyheme@gmail.com"}],"description":"## Contents","homepage":"https://github.com/cicada-lang/cicada-instars#readme","repository":{"type":"git","url":"git+https://github.com/cicada-lang/cicada-instars.git"},"contributors":[{"name":"Xie Yuheng"}],"bugs":{"url":"https://github.com/cicada-lang/cicada-instars/issues"},"license":"GPL-3.0-or-later","readme":"# Cicada Instars\n\n## Contents\n\n- **partech**: Parsing Techniques, DSL for CFG, General CFG parsers.\n- **lang0**: Untyped lambda calculus.\n- **lang1**: Simply typed lambda calculus, Natural number, Primitve recursive combinator.\n- **lang2**: The Little Typer, Type in Type, Recursion is not an option.\n- **lang3**: Dependent type, Nominal algebraic datatype, Structural record type, Type in Type, Arbitrary recursion.\n- **lang4**: Simply typed jojo, Sequent calculus.\n- **lang5**: Untyped jojo, A theory of equivalence for untyped jojo (by placeholder value & application trace).\n\n## References\n\n- **Parsing**:\n  - CFG: https://en.wikipedia.org/wiki/Context-free_grammar\n  - Earley parser: https://en.wikipedia.org/wiki/Earley_parser\n  - IXML: https://homepages.cwi.nl/~steven/ixml\n- **Lambda calculus**:\n  - https://en.wikipedia.org/wiki/Lambda_calculus\n  - https://en.wikipedia.org/wiki/Simply_typed_lambda_calculus\n  - System T: https://en.wikipedia.org/wiki/Dialectica_interpretation\n- **Pie**:\n  - Racket implementation: https://davidchristiansen.dk/tutorials/nbe\n  - Haskell implementation: https://davidchristiansen.dk/tutorials/implementing-types-hs.pdf\n- **Foundations of mathematics**:\n  - [How I became interested in foundations of mathematics](https://inner-universe.now.sh/person/vladimir-voevodsky/how-i-became-interested-in-foundations-of-mathematics.md.html)\n    - by Vladimir Voevodsky, at the 9th Asian Science Camp, Thailand, 2015\n  - [Lecture about Univalent Foundations at the Institut Henri Poincaré](https://inner-universe.now.sh/person/vladimir-voevodsky/lecture-about-univalent-foundations-at-the-institut-henri-poincar%C3%A9.md.html)\n    - by Vladimir Voevodsky, at the Institut Henri Poincaré, 2014\n\n## Community\n\nContributions are welcome, see [current TODO list](TODO.md) for tasks. <br>\n(Please add yourself to [the AUTHORS list](AUTHORS) if you made any contributions.)\n\n- We enforce C4 as collaboration protocol.\n  - [The C4 RFC](https://rfc.zeromq.org/spec:42/C4)\n- [Style Guide](STYLE-GUIDE.md)\n  - Observe the style of existing code and respect it.\n- [Code of Conduct](CODE-OF-CONDUCT.md)\n\n## License\n\n- [GPLv3](LICENSE)\n","readmeFilename":"README.md"}