mirror of
https://github.com/enso-org/enso.git
synced 2024-11-24 08:41:40 +03:00
a3de3c6128
Use an `ArraySlice` to slice `Vector`. Avoids memory copying for the slice function. # Important Notes | Test | Ref | New | | --- | --- | --- | | New Vector | 71.9 | 71.0 | | Append Single | 26.0 | 27.7 | | Append Large | 15.1 | 14.9 | | Sum | 156.4 | 165.8 | | Drop First 20 and Sum | 171.2 | 165.3 | | Drop Last 20 and Sum | 170.7 | 163.0 | | Filter | 76.9 | 76.9 | | Filter With Index | 166.3 | 168.3 | | Partition | 278.5 | 273.8 | | Partition With Index | 392.0 | 393.7 | | Each | 101.9 | 102.7 | - Note: the performance of New and Append has got slower from previous tests. |
||
---|---|---|
.. | ||
language-server | ||
launcher/src | ||
polyglot-api/src | ||
runner | ||
runner-native/src | ||
runtime | ||
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-language-epb/src/main/java/org/enso/interpreter/epb | ||
runtime-with-instruments/src/test | ||
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.