enso/engine
Dmitry Bushev 2b9ed57a95
Deliver full intersection type of a value to the IDE (#11583)
close #11481

Changelog:
- update: handle `MultiTypeValue` results in the execution instrument
- update: language server protocol supports multi-type values
- update: GUI uses only the first type of a multi-type value when

# Important Notes
GUI uses only the first type of the intersection. See the difference between `Integer&Text` and `Text&Integer`:

https://github.com/user-attachments/assets/29efc89b-c223-4043-8dff-9cdae1987f0c
2024-11-22 16:41:31 +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 Deliver full intersection type of a value to the IDE (#11583) 2024-11-22 16:41:31 +00:00
launcher/src --jvm tries to find Java executable system-wide. (#11500) 2024-11-18 22:44:54 +00:00
polyglot-api/src Deliver full intersection type of a value to the IDE (#11583) 2024-11-22 16:41:31 +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 --jvm tries to find Java executable system-wide. (#11500) 2024-11-18 22:44:54 +00:00
runner-common/src/main engine-runner and language-server are separate JPMS modules (#10823) 2024-09-25 21:33:13 +02:00
runtime Deliver full intersection type of a value to the IDE (#11583) 2024-11-22 16:41:31 +00:00
runtime-benchmarks/src/main Convert Array_Like_Helpers.map to a builtin to reduce stack size (#11363) 2024-11-06 11:14:48 +00:00
runtime-compiler/src Allow (42 : Text & Integer) at the end of function (#11588) 2024-11-20 08:14:38 +00:00
runtime-instrument-common/src Deliver full intersection type of a value to the IDE (#11583) 2024-11-22 16:41:31 +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 Invoke Warning.getValue().to_text and use it from ReplDebuggerInstrument (#11591) 2024-11-20 17:31:33 +00: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 Deliver full intersection type of a value to the IDE (#11583) 2024-11-22 16:41:31 +00: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 Rename unqualified method calls (#11556) 2024-11-15 13:10:57 +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.