# An off-topic question: Why is it \`add\`/\`import\` a package, but \`using\` instead of \`use\` it?

**URL:** https://discourse.julialang.org/t/an-off-topic-question-why-is-it-add-import-a-package-but-using-instead-of-use-it/112948
**Category:** Internals & Design
**Tags:** question, package
**Created:** [April 15, 2024, 5:44am UTC](https://discourse.julialang.org/t/an-off-topic-question-why-is-it-add-import-a-package-but-using-instead-of-use-it/112948 "2024-04-15T05:44:52Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![WuSiren](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/wusiren/32/42529_2.png) [@WuSiren](https://discourse.julialang.org/u/WuSiren)
#### Post date: [April 15, 2024, 5:44am UTC](https://discourse.julialang.org/t/an-off-topic-question-why-is-it-add-import-a-package-but-using-instead-of-use-it/112948/1 "2024-04-15T05:44:52Z")

</div>

An off-topic question: Why is it `add`/`import` a package, but `using` instead of `use` it?

---

<div class="post-metadata">

### Author: ![jar1](https://avatars.discourse-cdn.com/v4/letter/j/c0e974/32.png) [@jar1](https://discourse.julialang.org/u/jar1)
#### Post date: [April 15, 2024, 5:47am UTC](https://discourse.julialang.org/t/an-off-topic-question-why-is-it-add-import-a-package-but-using-instead-of-use-it/112948/2 "2024-04-15T05:47:40Z")

</div>

> <https://github.com/JuliaLang/julia/issues/39235>
>
> I would very much like to have just one import keyword in Julia 2.0. I don't muc…h care if it's \`import\` or \`using\` but since we talk about it as "importing" things, that may be more natural. With https://github.com/JuliaLang/julia/issues/39187 and some requirement for explicitly requesting extension of external generic functions, this would be possible.
> 
> | current form | new form | comment |
> |---|---|---|
> | \`import Foo\` | \`import Foo\` | just imports \`Foo\` |
> | \`import Foo: Foo, bar\` | \`import Foo: bar\` | in 2.0 \`import Foo: bar\` imports \`Foo\` also |
> | \`import Foo: bar\` | \`import Foo as \_: bar\` | use \`Foo as \_\` to discard that name |
> | \`using Foo\` | \`import Foo...\` | |
> | \`using Foo\` | \`import Foo: ...\` | longer version of the previous one |
> | \`using Foo; using Foo: bar\` | \`import Foo: bar, ...\` | implicit and explicit imports on one line |
> | \`using Foo as \_\` | \`import Foo as \_: ...\` | use \`Foo as \_\` to discard that name |
> 
> In 2.0 I think we should eliminate the distinction between the "soft binding" that \`using\` creates and the hard binding that \`import\` creates and just make all explicit bindings hard and all implicit bindings soft: if you asked for it by name, it's a hard binding, if you didn't, it's a soft binding. When someone wants to extend an implicitly imported generic function, they have to fully qualify it.

---

<div class="post-metadata">

### Author: ![mkitti](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkitti/32/12459_2.png) [@mkitti](https://discourse.julialang.org/u/mkitti)
#### Post date: [April 16, 2024, 1:25am UTC](https://discourse.julialang.org/t/an-off-topic-question-why-is-it-add-import-a-package-but-using-instead-of-use-it/112948/3 "2024-04-16T01:25:29Z")

</div>

`using` as a keyword has some precedence in C# and C++ usually having to do with namespaces.

> **[Using Keyword in C++ STL - GeeksforGeeks](https://www.geeksforgeeks.org/using-keyword-in-cpp-stl/)**
>
> A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.

> **[using keyword - C# reference - C#](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/using)**
>
> using keyword - C# reference

---

<div class="post-metadata">

### Author: ![jar1](https://avatars.discourse-cdn.com/v4/letter/j/c0e974/32.png) [@jar1](https://discourse.julialang.org/u/jar1)
#### Post date: [April 16, 2024, 1:28am UTC](https://discourse.julialang.org/t/an-off-topic-question-why-is-it-add-import-a-package-but-using-instead-of-use-it/112948/4 "2024-04-16T01:28:45Z")

</div>

It’s a fair point, though: `using`/`importing` or `use`/`import` are better pairings.
