enso/engine
Hubert Plociniczak 6c777834e4
Don't instrument function bodies (#7097)
Function bodies cannot be instrumented even if the function is right
inside a binding. Consider a scenario when a function is assigned to a
variable and then applied to a `map` method of a really large vector.
The instrumentation will render execution extremely slow.

Alternatively we would still support instrumenting function bodies in
this limited case but take into account the number of times function is
actually called.
2023-06-23 19:16:25 +02:00
..
interpreter-dsl-test/src/test/java/org/enso/interpreter/dsl/test Update sbt-java-formatter plugin (#7011) 2023-06-12 14:18:48 +00:00
language-server AI Completions (#5910) 2023-06-18 23:54:06 +02:00
launcher/src Don't log installed engines and runtimes in prod (#5900) 2023-03-16 10:36:55 +00:00
polyglot-api/src Improvements that significantly reduce the chances of request timeouts (#7042) 2023-06-16 17:57:16 +00:00
runner Empty input in REPL does not throw NPE (#7111) 2023-06-23 12:05:44 +00:00
runtime Don't instrument function bodies (#7097) 2023-06-23 19:16:25 +02:00
runtime-instrument-common/src Fix defect where constructor fields not show for Value constructors. (#7080) 2023-06-20 12:47:16 +00:00
runtime-instrument-id-execution/src/main/java/org/enso/interpreter/instrument Separating instrument related files into runtime-instrument-common project (#6992) 2023-06-08 16:51:50 +02:00
runtime-instrument-repl-debugger/src/main/java/org/enso/interpreter/instrument Improve undefined method error message on builtin types (#3907) 2022-11-30 13:37:17 +01:00
runtime-instrument-runtime-server/src/main/java/org/enso/interpreter/instrument Improvements that significantly reduce the chances of request timeouts (#7042) 2023-06-16 17:57:16 +00:00
runtime-language-epb/src/main/java/org/enso/interpreter/epb Update sbt-java-formatter plugin (#7011) 2023-06-12 14:18:48 +00:00
runtime-with-instruments/src/test Don't instrument function bodies (#7097) 2023-06-23 19:16:25 +02:00
runtime-with-polyglot/src/test Never return null from InteropLibrary calls (#7044) 2023-06-17 04:30:03 +00: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.