Prefix frontend modules with Curry.Frontend
In order to make the frontend more usable as a library (e.g. for the language server), this PR moves all of the modules that were previously not in curry-base
under Curry.Frontend
. The reason for keeping the curry-base
modules separate is that they were already scoped under Curry
and generally have no dependencies on the frontend modules.
Having the modules under a common namespace, in this case Curry.Frontend
, makes them both more robust against name clashes in library consumers (e.g. Base.Types
is a rather generic name, its replacement Curry.Frontend.Base.Types
is more descriptive).
In short, this PR proposes to migrate
.
├── Base
├── Checks
├── Checks
├── CompilerEnv
├── CompilerOpts
├── CondCompile
├── Curry
│ ├── AbstractCurry
│ ├── Base
│ ├── CondCompile
│ ├── Files
│ ├── FlatCurry
│ └── Syntax
├── CurryBuilder
├── CurryDeps
├── Env
├── Exports
├── Files
├── Generators
├── Html
├── IL
├── Imports
├── Interfaces
├── Modules
├── TokenStream
└── Transformations
to
.
└── Curry
├── AbstractCurry
├── Base
├── CondCompile
├── Files
├── FlatCurry
├── Frontend
│ ├── Base
│ ├── Checks
│ ├── CompilerEnv
│ ├── CompilerOpts
│ ├── CondCompile
│ ├── CurryBuilder
│ ├── CurryDeps
│ ├── Env
│ ├── Exports
│ ├── Files
│ ├── Generators
│ ├── Html
│ ├── IL
│ ├── Imports
│ ├── Interfaces
│ ├── Modules
│ ├── TokenStream
│ └── Transformations
└── Syntax
Thoughts?
Edited by Fredrik Wieczerkowski