enso/engine
Kaz Wesley e47bdd3e17
Implement full new-lambda syntax (#10756)
Implement full `ArgumentDefinition` syntax for new-lambda arguments, e.g `\a=1 (b:Integer = 23)-> a + b`; add backend support for new lambdas.

Emit an error when any syntactic operator is used outside of its associated syntax (fixes #10473).

Phase out complex arguments for old-lambdas: It is now a syntax error to specify default arguments for an old-lambda. This capability had no usage in real code; affected tests have been updated to test new lambdas. For now, old lambdas can continue to be used with simple arguments; if default arguments are desired, a new-style lambda can be used.
2024-08-06 17:02:32 +00:00
..
common/src/main/java/org/enso/common Disable linting passes for IDE and repl (#10705) 2024-07-31 08:49:45 +00:00
interpreter-dsl-test/src/test/java/org/enso/interpreter/dsl/test ContextFactory reused to initialize language-server context (#10670) 2024-07-29 09:49:14 +02:00
language-server Propagate FS errors when creating a new project (#10708) 2024-08-05 10:58:03 +00:00
launcher/src Relative paths are relative to current project locally and in Cloud (#10660) 2024-07-31 09:43:17 +00:00
polyglot-api/src ContextFactory reused to initialize language-server context (#10670) 2024-07-29 09:49:14 +02:00
polyglot-api-macros/src/main/scala/org/enso/polyglot/macros Replace Jackson serde (#10035) 2024-06-11 15:03:12 +00:00
runner Add org.enso.compiler.dumpIr system prop (#10740) 2024-08-06 12:00:27 +00:00
runner-common/src/main ContextFactory reused to initialize language-server context (#10670) 2024-07-29 09:49:14 +02:00
runtime Add org.enso.compiler.dumpIr system prop (#10740) 2024-08-06 12:00:27 +00:00
runtime-benchmarks/src/main ContextFactory reused to initialize language-server context (#10670) 2024-07-29 09:49:14 +02:00
runtime-compiler/src Add org.enso.compiler.dumpIr system prop (#10740) 2024-08-06 12:00:27 +00:00
runtime-fat-jar/src/main/java ydoc-server is a separate module (#10156) 2024-06-07 12:56:42 +02:00
runtime-instrument-common/src Don't report stacktraces for interruptions (#10698) 2024-07-28 16:41:53 +02:00
runtime-instrument-id-execution/src/main/java/org/enso/interpreter/instrument Instrumentation, visualization and autoscoped constructors (#9452) 2024-04-03 12:14:23 +00:00
runtime-instrument-repl-debugger/src/main/java/org/enso/interpreter/instrument Introducing engine/runtime-compiler project (#8197) 2023-11-01 12:42:34 +01:00
runtime-instrument-runtime-server/src/main/java/org/enso/interpreter/instrument Towards simplifying runtime-compiler dependencies (#8894) 2024-04-25 10:03:42 +02:00
runtime-integration-tests/src/test Implement full new-lambda syntax (#10756) 2024-08-06 17:02:32 +00:00
runtime-language-arrow/src Implement and benchmark ArrowOperationPlus node (#10150) 2024-06-11 12:50:59 +00:00
runtime-language-epb/src Atom constructors can be private (#9692) 2024-04-29 14:43:18 +02:00
runtime-parser/src Implement full new-lambda syntax (#10756) 2024-08-06 17:02:32 +00:00
runtime-suggestions/src/main/scala/org/enso/compiler/suggestions Extension methods can be exported by name (#10274) 2024-06-25 12:08:22 +00:00
runtime-test-instruments/src/main/java Binary operator resolution based on that value (#8779) 2024-01-27 08:38:47 +01: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.