mirror of
https://github.com/enso-org/enso.git
synced 2024-12-23 18:34:03 +03:00
dc6e3a7031
A quick and dirty workaround for slow processing in a similar spirit to PR #9858. Long compilation of stdlib holds a write compilation lock, while opening the file needs to set module sources and requires read compilation lock and file lock. The expectation was that setting module sources is instantaneous except not, because of locks. This PR adds soft retries. Partially closes #10231. There are still problems related to https://github.com/enso-org/enso/issues/9993 once this PR is merged. # Important Notes We need to figure out a more fine-grained lock system or, ideally, make it lock free to avoid such hacks. |
||
---|---|---|
.. | ||
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 | ||
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.