# Export functions

**URL:** <https://discourse.julialang.org/t/export-functions/109235>\
**Category:** General Usage\
**Tags:** question\
**Created:** [January 25, 2024, 4:50am UTC](https://discourse.julialang.org/t/export-functions/109235 "2024-01-25T04:50:48Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![jiang\_ming\_zhang](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jiang_ming_zhang/32/204063_2.png) [@jiang\_ming\_zhang](https://discourse.julialang.org/u/jiang_ming_zhang)\
**Post date:** [January 25, 2024, 4:50am UTC](https://discourse.julialang.org/t/export-functions/109235/1 "2024-01-25T04:50:48Z")

</div>

I am using a package witten by someone. Somes functions are defined in the module, but not exported. I cannot invoke them in the REPL.

How can I modify the original codes to make these functions visible?

---

<div class="post-metadata">

**Author:** ![nsajko](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nsajko/32/221187_2.png) [@nsajko](https://discourse.julialang.org/u/nsajko)\
**Post date:** [January 25, 2024, 5:10am UTC](https://discourse.julialang.org/t/export-functions/109235/2 "2024-01-25T05:10:22Z")

</div>

> [@jiang\_ming\_zhang](#):
>
> I am using a package witten by someone. Somes functions are defined in the module, but not exported. I cannot invoke them in the REPL.

You can, but you may need to qualify the usage. For example, if `M` is the module, and `n` is the name in the module, access `n` from outside the REPL like `M.n`. You may also want to consult the documentation and check if the name is meant to be used outside of the package.

> [@jiang\_ming\_zhang](#):
>
> How can I modify the original codes to make these functions visible?

Not sure what you mean.

---

<div class="post-metadata">

**Author:** ![jiang\_ming\_zhang](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jiang_ming_zhang/32/204063_2.png) [@jiang\_ming\_zhang](https://discourse.julialang.org/u/jiang_ming_zhang)\
**Post date:** [January 25, 2024, 5:16am UTC](https://discourse.julialang.org/t/export-functions/109235/3 "2024-01-25T05:16:03Z")

</div>

Thank you very much! I actually find that it is nested. I have to invoke the function like

```julia
M.M1.fun

```

---

<div class="post-metadata">

**Author:** ![GHTaarn](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ghtaarn/32/216007_2.png) [@GHTaarn](https://discourse.julialang.org/u/GHTaarn)\
**Post date:** [January 25, 2024, 5:31am UTC](https://discourse.julialang.org/t/export-functions/109235/4 "2024-01-25T05:31:10Z")

</div>

You can also import the name specifically:

```julia
using HTTP
get("https://julialang.org") # gives an error
import HTTP.get
get("https://julialang.org") # returns the contents of the web page

```

For names like `get` this is probably something that should be avoided, but there can be situations with rarer names where this would be okay.

Edit: a better solution might be:

```julia
using HTTP
import HTTP.get as hget
hget("https://julialang.org") # returns the contents of the web page

```
