Dimitry Golubovsky wrote:

I'd suggest the following sub-definition for "available" (other name
could be "transient"):

A package which is "available" is not "installed" at (immediately
known to) a particular developer's system, as opposed to "exposed" and
"hidden" which are "installed".

When a package/program is being built that requires a package which is
not installed, three options are available:

 - a package is located (on the Internet, using Cabal-get or
Cabalfind, or manual search), downloaded, and installed (i. e. becomes
known to the developer's system), and gets into "exposed" or "hidden"
category

 - a package is located, downloaded temporarily (i. e. cached) on the
developer's system*, used for a particular package that requires it
and discarded afterwards (or lives for some time in the cache).**

 - package cannot be found (Internet search fails)

This stuff is completely separate, I think. Automatic downloading and installation of packages is handled by the Cabal tools; the compiler is not involved, and the present discussion is just about language and compiler support.

Cheers,
        Simon
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to