mirror of
https://github.com/enso-org/enso.git
synced 2024-11-26 08:52:58 +03:00
a65383a47b
* Reduce amount of IR copying This PR ensures that we only perform IR copying when actually needed, i.e. when one of the fields has changed. Most of the changes should not be controversial except for equality change in MetadataStorage. Without it, an empty pass metadata would be treated as equal, therefore preventing duplication from happening. * fmt * missed a few spots * Optimizations to copying Avoid expensive computations for static methods. * Avoid unnecessary unapply calls |
||
---|---|---|
.. | ||
common/src/main/java/org/enso/common | ||
interpreter-dsl-test/src/test/java/org/enso/interpreter/dsl/test | ||
language-server | ||
launcher/src | ||
polyglot-api/src | ||
polyglot-api-macros/src/main/scala/org/enso/polyglot/macros | ||
runner | ||
runner-common/src/main | ||
runtime | ||
runtime-benchmarks/src/main | ||
runtime-compiler/src | ||
runtime-fat-jar/src/main/java | ||
runtime-instrument-common/src | ||
runtime-instrument-id-execution/src/main/java/org/enso/interpreter/instrument | ||
runtime-instrument-repl-debugger/src/main/java/org/enso/interpreter/instrument | ||
runtime-instrument-runtime-server/src/main/java/org/enso/interpreter/instrument | ||
runtime-integration-tests/src/test | ||
runtime-language-arrow/src | ||
runtime-language-epb/src | ||
runtime-parser/src | ||
runtime-suggestions/src/main/scala/org/enso/compiler/suggestions | ||
runtime-test-instruments/src/main/java | ||
README.md |
The Enso Engine
The Enso engine is the codebase responsible for compiling and executing Enso code, as well as providing language server functionality to users of the language. It is subdivided into two major components:
- Language Server: The Enso language service.
- Polyglot API: The truffle-boundary safe API for communication between the language server and the runtime.
- Runner: The command-line interface for Enso.
- Runtime: The compiler and interpreter for Enso.