enso/docs
Adam Obuchowicz 2e7d71d459
Refactor widgets to handle dynamic config in input (#8624)
* Merged ArgumentAst and ArgumentPlaceholder into single class.
* Created `AnyWidget` input being a "general use" widget input. Most wigets try to match with it; the `Argument` input is now solely for WidgetArgument(Name) or those handling arguments in a specific way (like selector which want to show on arg name click).
* dynamic config is now part of widget input, and is properly propagated through vector editor/function widgets.

# Important Notes
The widgets still does not work perfectly:
* The chosen options often don't have argument placeholders - that's because we don't display them for constructors. Needs to be added on our side, or engine should send us methodCall info for constructors.
* There are issues with engine's messages sent to us. This makes widgets does not set up (so there is no drop-down, or vector adds `_` instead of default). I'm investigating them and going to fill issues.
2024-01-03 13:37:52 +00:00
..
debugger Unifying debugging information (#8370) 2023-11-27 09:37:51 +01:00
distribution Upgrade enso to GraalVM for jdk 21 (#7991) 2023-11-17 18:02:36 +00:00
infrastructure Filter for test/Benchmarks (#8391) 2023-11-27 15:27:12 +00:00
language-server Refactor widgets to handle dynamic config in input (#8624) 2024-01-03 13:37:52 +00:00
libraries Change layout of local library search path in order to be able to move Round_Spec.enso back to Tests (#7634) 2023-09-01 20:20:04 +00:00
parser Preparation for more parser work (#1363) 2020-12-18 14:25:30 +00:00
polyglot Add graalpy packages to the component directory (#8351) 2023-12-04 11:50:59 +00:00
profiler Always create events log when profiling (#8337) 2023-11-20 16:01:25 +00:00
rfcs Add a markdown style guide (#1022) 2020-07-21 13:59:40 +01:00
runtime Speeding up "hello world" example by 16% 2023-11-19 16:38:31 +01:00
security EnsoGL context abstraction (#3293) 2022-03-04 15:13:23 +01:00
semantics Submodules can be private (#8581) 2023-12-19 19:13:44 +01:00
style-guide Add TypeScript style guide (#6226) 2023-04-15 08:28:12 +00:00
syntax Runtime checking of ascribed expression types (#7796) 2023-09-14 14:09:41 +02:00
types DataflowError.withoutTrace shall not store a trace (#8608) 2023-12-24 11:07:32 +01:00
CODE_OF_CONDUCT.md Update CODE_OF_CONDUCT.md 2023-02-13 23:10:51 +01:00
CONTRIBUTING.md Make sure that runtime/benchmarks are dry-run in CI tests (#8330) 2023-11-20 12:35:43 +00:00
enso-philosophy.md Consistent naming of visualization (#7124) 2023-06-26 17:04:35 +00: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 Consistent naming of visualization (#7124) 2023-06-26 17:04:35 +00: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.