enso/engine
Hubert Plociniczak 20c22f2422
from/all import must not include module in name resolution (#3931)
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
2022-11-30 16:28:57 +00:00
..
language-server Use a custom directory for VCS repo metadata (#3921) 2022-11-29 14:40:36 +00:00
launcher/src Update Scala to 2.13.8 (#3631) 2022-08-08 19:32:55 +00:00
polyglot-api/src Check that type names are resolved (#3895) 2022-11-21 22:33:36 +00:00
runner Upgrade to GraalVM 22.3.0 (#3663) 2022-11-23 14:30:48 +00:00
runtime from/all import must not include module in name resolution (#3931) 2022-11-30 16:28:57 +00:00
runtime-instrument-id-execution/src/main/java/org/enso/interpreter/instrument State rework & IO Contexts (#3828) 2022-10-26 16:22:08 +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 Upgrade to GraalVM 22.3.0 (#3663) 2022-11-23 14:30:48 +00:00
runtime-with-instruments/src/test from/all import must not include module in name resolution (#3931) 2022-11-30 16:28:57 +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.