enso/engine
Dmitry Bushev 74220f243a
Dependency tracking between nodes is too coarse grained (#11428)
close #11237

Changelog:
- update: implement special case for a line removal when calculating the changeset

# Important Notes
Note that the graph is still re-calculated when the node is re-added (by pressing `ctrl-z`). The reason is that the engine processes edits on the textual level and there is not enough information to do similar workarounds. The issue becomes irrelevant when we switch to the direct tree manipulation in Ydoc.

https://github.com/user-attachments/assets/c85afde8-6386-44df-82b5-6fb0cca5205b
2024-10-29 15:33:53 +00:00
..
common/src Reload insight script on file change (#11415) 2024-10-28 09:17:53 +00:00
interpreter-dsl-test/src/test/java/org/enso/interpreter/dsl/test WithWarnings uses EnsoHashMap to speed things up (#10555) 2024-08-07 15:29:57 +00:00
language-server Use enso.dev.insight property to turn Insight on (#11385) 2024-10-24 13:56:28 +02:00
launcher/src Improve CI feedback when directory is missing (#10608) 2024-10-09 16:58:42 +02:00
polyglot-api/src Run node in a different execution environment (#11173) 2024-10-09 12:09:45 +00:00
polyglot-api-macros/src/main engine-runner and language-server are separate JPMS modules (#10823) 2024-09-25 21:33:13 +02:00
runner Make sure unrecognized CLI command message is printed (#11357) 2024-10-18 17:13:02 +02:00
runner-common/src/main engine-runner and language-server are separate JPMS modules (#10823) 2024-09-25 21:33:13 +02:00
runtime Skeletal PanicExceptionTest and more logging when AssertionError happens (#11393) 2024-10-29 15:47:12 +01:00
runtime-benchmarks/src/main Removing useless GraphOccurrence.Global & some encapsulation (#11419) 2024-10-29 10:23:22 +00:00
runtime-compiler/src Removing useless GraphOccurrence.Global & some encapsulation (#11419) 2024-10-29 10:23:22 +00:00
runtime-instrument-common/src Dependency tracking between nodes is too coarse grained (#11428) 2024-10-29 15:33:53 +00:00
runtime-instrument-id-execution/src/main/java Run node in a different execution environment (#11173) 2024-10-09 12:09:45 +00:00
runtime-instrument-repl-debugger/src/main/java engine-runner and language-server are separate JPMS modules (#10823) 2024-09-25 21:33:13 +02:00
runtime-instrument-runtime-server/src/main/java engine-runner and language-server are separate JPMS modules (#10823) 2024-09-25 21:33:13 +02:00
runtime-integration-tests/src/test Skeletal PanicExceptionTest and more logging when AssertionError happens (#11393) 2024-10-29 15:47:12 +01:00
runtime-language-arrow/src Avoid dependency on org.graalvm.collections (#11107) 2024-09-17 11:25:18 +00:00
runtime-language-epb/src Use enso.dev.insight property to turn Insight on (#11385) 2024-10-24 13:56:28 +02:00
runtime-parser/src Move annotations into fields of Function and ConstructorDefinition (#11374) 2024-10-23 20:35:06 +00:00
runtime-suggestions/src/main Eliminate scala.Some allocations (#11259) 2024-10-09 08:54:37 +00:00
runtime-test-instruments/src/main/java Ensure wrapper projects are listed in aggregates (#11323) 2024-10-14 20:46:08 +02:00
README.md Add a markdown style guide (#1022) 2020-07-21 13:59:40 +01:00

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.