enso/engine
Jaroslav Tulach f1c8c0b42b
Avoid using a (warnings) Library on this (#7525)
While investigating behavior of
```
sbt:std-benchmarks> withDebug benchOnly --dumpGraphs -- Vector_Operations.Max_Stat
```
in IGV I realized there is a deep chain of nodes when reading an element of `Vector` related to work with warnings. There is an invocation of `WarningsLibrary` on `this` - that's probably unnecessary as we know how it is going to resolve. This PR skips such one level of indirection by directly delegating to `this.storage`.

However I haven't seen any effect of this change on peak performance. The library overhead seems to disappear. Anyway I wanted to bring this finding to your attention and perform independent measurement on our CI server.
2023-08-14 15:09:57 +00:00
..
interpreter-dsl-test/src/test/java/org/enso/interpreter/dsl/test Builtin methods handle some exceptions (#7494) 2023-08-07 16:42:15 +02:00
language-server Renaming Variable or Function Support (#7515) 2023-08-10 21:16:33 +00:00
launcher/src Allow users to give a project other than Upper_Snake_Case name (#7397) 2023-07-28 13:44:39 +00:00
polyglot-api/src Renaming Variable or Function Support (#7515) 2023-08-10 21:16:33 +00:00
runner Respect database backend naming limitations when generating table/column names and validate user-provided names to avoid silent name clashes; process JDBC warnings reported from backends (#7428) 2023-08-03 09:44:27 +00:00
runtime Avoid using a (warnings) Library on this (#7525) 2023-08-14 15:09:57 +00:00
runtime-instrument-common/src Renaming Variable or Function Support (#7515) 2023-08-10 21:16:33 +00:00
runtime-instrument-id-execution/src/main/java/org/enso/interpreter/instrument Cache dataflow errors (#7193) 2023-07-09 14:45:22 +00: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 GraalVM to 17.0.7 (23.0.0 JDK17) (#7176) 2023-07-20 15:11:30 +00:00
runtime-parser/src Yield UnclosedTextLiteral syntax errors (#7340) 2023-07-21 11:37:30 +00:00
runtime-with-instruments/src/test Renaming Variable or Function Support (#7515) 2023-08-10 21:16:33 +00:00
runtime-with-polyglot/src/test Update GraalVM to 17.0.7 (23.0.0 JDK17) (#7176) 2023-07-20 15:11:30 +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.