Merge: loader accept qualified names
authorJean Privat <jean@pryen.org>
Fri, 24 Jun 2016 19:19:01 +0000 (15:19 -0400)
committerJean Privat <jean@pryen.org>
Fri, 24 Jun 2016 19:19:01 +0000 (15:19 -0400)
Tools understand qualified names `foo::bar` to designate a module in a package.
Basically all this was to allow `-m foo::bar` when compiling.

The specification of the loader is now a little more complex but should be more expressive and POLA.

* `nitc foo.nit` compile the file `./foo.nit`
* `nitc foo` compile a module `foo` that ca be: `./foo/foo.nit` or else `nitlib/foo.nit` or `nitlib/foo/foo.nit`
* `nitc ./foo` or `nitc foo/` or `nitc foo/foo.nit` compile the module `./foo/foo.nit`
* `nitc foo::bar` compile the module `bar` of the package `foo`. foo can be a local directory (`./foo/`) or a sub-directory of the nitpath (`nitlib/foo`). This in fact should work like `import foo::bar` in source code.

Pull-Request: #2185
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>


Trivial merge