# Shared and stacked environments

**URL:** <https://discourse.julialang.org/t/shared-and-stacked-environments/119874>\
**Category:** General Usage\
**Tags:** workflow, shared-environments, stacked-environments\
**Created:** [September 25, 2024, 2:42pm UTC](https://discourse.julialang.org/t/shared-and-stacked-environments/119874 "2024-09-25T14:42:41Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![Eben60](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/eben60/32/13475_2.png) [@Eben60](https://discourse.julialang.org/u/Eben60)\
**Post date:** [October 13, 2024, 6:58pm UTC](https://discourse.julialang.org/t/shared-and-stacked-environments/119874/4 "2024-10-13T18:58:55Z")

</div>

For my [just announced](https://discourse.julialang.org/t/ann-shareadd-jl-making-easy-to-import-packages-from-multiple-environments/121261) package ShareAdd.jl I am thinking of adding there another macro `@usingtemp`, with the usage like

```julia
@usingtemp Pk1, Pk2

```

which would

1. If the current environment is a temporary one, then install package `Pk1` and `Pk2` there, and import them by `using Pk1, Pk2` .
2. If the current environment is a package under development, then switch to a temporary environment, dev there your package, `goto 1`.

However actually I do not see any advantage of using temporary environments over the workflow currently envisioned in ShareAdd.jl .

Also, for BasicAutoloads.jl - I didn’t try it, but I think it can be made to work with ShareAdd.jl like

```julia
 ["@benchmark"] => :(@usingany BenchmarkTools)

```

What do you think?

---

_[View the full topic](https://discourse.julialang.org/t/shared-and-stacked-environments/119874)._
