Skip to content

Consider implicit Base #1522

@pao

Description

@pao

I believe we've briefly gone over this before, but since it's the Month of Chaos I'd like it to be made as an explicit decision.

Lots of Julia is implemented as pure Julia in the Base module. This means that lots of the useful bits of the language are only accessible in a module that has a using Base statement, such that nearly every module will end up needing a using Base.

Given:

  1. Julia will need to be usable by technical non-programmers,
  2. Much of what we would consider the core Julia language is in Base,
  3. The Main module already implicitly loads Base

I would suggest that all modules should implicitly open with using Base, unless some escape mechanism (TBD, but cf. GHC's NoImplicitPrelude) is used to prevent that from occurring.

If nearly every module needs it anyways, it seems like the sort of thing that will just annoy the heck out of people for no good reason.

Metadata

Metadata

Assignees

Labels

needs decisionA decision on this change is needed

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions