enso/engine
Jaroslav Tulach efe904cd9f
Introducing @BuiltinMethod.needsFrame and InlineableNode (#6442)
Fixes #6416 by introducing `InlineableNode`. It runs fast even on GraalVM CE, fixes ([forever broken](https://github.com/enso-org/enso/pull/6442#discussion_r1178782635)) `Debug.eval` with `<|` and [removes discouraged subclassing](https://github.com/enso-org/enso/pull/6442#discussion_r1178778968) of `DirectCallNode`. Introduces `@BuiltinMethod.needsFrame` - something that was requested by #6293. Just in this PR the attribute is optional - its implicit value continues to be derived from `VirtualFrame` presence/absence in the builtin method argument list. A lot of methods had to be modified to pass the `VirtualFrame` parameter along to propagate it where needed.
2023-04-28 15:32:13 +00:00
..
interpreter-dsl-test/src/test/java/org/enso/interpreter/dsl/test Introducing @BuiltinMethod.needsFrame and InlineableNode (#6442) 2023-04-28 15:32:13 +00:00
language-server Don't attempt to resolve hostname for git init (#6463) 2023-04-28 14:29:30 +00:00
launcher/src Don't log installed engines and runtimes in prod (#5900) 2023-03-16 10:36:55 +00:00
polyglot-api/src sort handles incomparable values (#5998) 2023-04-16 16:40:12 +02:00
runner Replace IOContexts with execution env and contexts (#6171) 2023-04-06 15:47:40 +00:00
runtime Introducing @BuiltinMethod.needsFrame and InlineableNode (#6442) 2023-04-28 15:32:13 +00:00
runtime-instrument-id-execution/src/main/java/org/enso/interpreter/instrument Ensure new and wrapper nodes inherit UUID (#6067) 2023-03-27 17:49:20 +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 Register instruments/language in their own compilation units to fix the sbt build issues (#3509) 2022-06-13 14:09:08 +00:00
runtime-language-epb/src/main/java/org/enso/interpreter/epb Schedule initialization of JS context in a separate thread (#5680) 2023-02-17 15:54:36 +00:00
runtime-with-instruments/src/test Table Visualization and display text changes. (#6382) 2023-04-26 18:15:48 +00:00
runtime-with-polyglot/src/test Invoke instance methods for Any overrides (#6441) 2023-04-28 07:18:37 +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.