enso/docs
somebody1234 cd54e1b47d
Add TypeScript style guide (#6226)
Adds TypeScript style guide.

# Important Notes
This is more or less a straight port from Rust; I think the goal should be to make this a sort of living document which changes as the TypeScript parts of the codebase become more mature.

Several sections have been removed as they do not apply to the TypeScript codebase. Of note is the section about vertically aligning type annotations, local variable declarations and match arms.
2023-04-15 08:28:12 +00:00
..
debugger IGV can jump to JMH sources & more (#4008) 2022-12-30 05:30:32 +00:00
distribution Convert Any.== to a builtin (#3956) 2022-12-29 21:20:00 +00:00
infrastructure Update GraalVM to 22.3.1 (#5602) 2023-02-14 15:51:17 +00:00
language-server Language Server support for execution environments (#6217) 2023-04-11 15:12:27 +00:00
libraries Update Simple Library Server (#1952) 2021-08-18 10:01:28 +02:00
parser Preparation for more parser work (#1363) 2020-12-18 14:25:30 +00:00
polyglot Remove references to dependent types (#3217) 2022-01-10 19:51:51 +03:00
profiler Rendering improvement/debugging support (#6019) 2023-03-21 06:34:24 +00:00
rfcs Add a markdown style guide (#1022) 2020-07-21 13:59:40 +01:00
runtime Remove SQL versions repo (#6242) 2023-04-11 19:22:30 +00:00
security EnsoGL context abstraction (#3293) 2022-03-04 15:13:23 +01:00
semantics Refactor methods of Managed_Resource (#3460) 2022-05-18 17:27:42 +00:00
style-guide Add TypeScript style guide (#6226) 2023-04-15 08:28:12 +00:00
syntax Update 'naming' docs (#3858) 2022-11-24 12:55:42 +00:00
types Add type system documentation (#3376) 2022-08-15 18:36:03 +03:00
CODE_OF_CONDUCT.md Update CODE_OF_CONDUCT.md 2023-02-13 23:10:51 +01:00
CONTRIBUTING.md Use .node-version for pinning Node.js version (#6057) 2023-03-23 12:00:08 +00:00
enso-philosophy.md Remove references to dependent types (#3217) 2022-01-10 19:51:51 +03:00
getting-enso.md Bump the development version number (#1389) 2021-01-06 08:57:02 +00:00
graalvm-m1-mac.md Fix typos in graalmv-m1-mac.md (#3253) 2022-02-09 09:30:41 +01:00
README.md Update some documentation for clarity (#2005) 2021-10-01 14:13:20 +01:00
runtime-guide.md IGV can jump to JMH sources & more (#4008) 2022-12-30 05:30:32 +00:00
runtime-roadmap.md Move Builtin Types and Methods to stdlib (#3363) 2022-05-05 20:18:06 +02:00
SECURITY.md Add a markdown style guide (#1022) 2020-07-21 13:59:40 +01:00

layout title category tags order
docs-index Enso Engine Developer Documentation summary
summary
readme
0

Enso Engine Developer Documentation

This folder contains the documentation for the implementation of the Enso programming language. The documentation is broken up by subject, within the below-listed categories, and each subject combines information about the design, specification, and implementation of the feature to which it pertains.

We provide a number of useful resources for getting a quick understanding of the Enso project:

  • The Enso Philosophy: Information on the design philosophy behind Enso, and why we build things in the way we do.
  • Contributing Guidelines: Information for people wanting to contribute to Enso (in many different ways).
  • Community Code of Conduct: The code of conduct for members of our community, developers and users alike.
  • Security Guidelines: Security guidelines for the Enso project, including supported versions and our vulnerability reporting process.
  • Getting Enso: Instructions for how to get and run a copy of Enso.
  • Runtime Roadmap: An analysis of the pressing changes that should be made to the runtime.
  • Runtime Guide: A tour of the runtime, and some pointers as to useful resources.

It is broken up into categories as follows:

  • Distribution: Information on how we distribute Enso to our users, and how Enso packages themselves work.
  • Language Server: Information on the Enso language server, its protocol, and how it integrates with the runtime.
  • Polyglot: Information on Enso's polyglot functionality, and how it is integrated into the surface Enso language.
  • RFCs: RFCs for Enso's development and evolution.
  • Runtime: Specification and documentation of the way that the Enso runtime is designed and implemented.
  • Semantics: A specification of Enso's semantics.
  • Style Guides: Style guides for the code written as part of the Enso project.
  • Syntax: A specification of Enso's syntax.
  • Types: A specification of Enso's type system and type theory.
  • Debugger: A specification of Enso's debugger.
  • Parser: Design and specification of the Enso parser.
  • Infrastructure: Description of the infrastructure for building Enso.
  • Libraries: Description of Enso's Library Ecosystem.