mirror of
https://github.com/enso-org/enso.git
synced 2024-12-25 03:43:41 +03:00
20c22f2422
It appears that when were doing `from XYZ import all` the module `XYZ` was also being taken into account during name resolution. This was unfortunate and became problematic when one had a type with the same name defined in it. During pattern matching one could not simply do ``` from XYZ import all ... case ... of _ : XYZ -> ... ``` since the compiler would complain that we try to pattern match on a type but give it a module. The module is now excluded from the name resolution, when importing everything from the module. It appears that this "feature" was used in a number of our tests, so they had to be adapted. This fixes task 4 in https://www.pivotaltracker.com/story/show/183833055 |
||
---|---|---|
.. | ||
language-server | ||
launcher/src | ||
polyglot-api/src | ||
runner | ||
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.