# Solve the problem in ghci : attempting to use module ... which is not loaded

# Problem

I am reading Learn you a Haskell for great Good and I faced the problem of "attempting to use module ... which is not loaded" when I am at the end of chapter module, finally I got the solution on it

# Steps of Solution

- Load the source code
- Set the module to Prelude
- Import the modules

# Load the source code

Compile the source code into the GHCI

```
*Geometry.Cuboid> :l Geometry/Cube.hs Geometry/Sphere.hs
[1 of 3] Compiling Geometry.Cuboid ( Geometry/Cuboid.hs, interpreted )
[2 of 3] Compiling Geometry.Cube ( Geometry/Cube.hs, interpreted )
[3 of 3] Compiling Geometry.Sphere ( Geometry/Sphere.hs, interpreted )
Ok, modules loaded: Geometry.Sphere, Geometry.Cuboid, Geometry.Cube.
```

# Set the module to Prelude

Change back the current module in the GHCI to Prelude, by default the last module loaded becomes the current module.

`*Geometry.Cube> :module Prelude`

# Import the modules

Import the modules we just loaded in the GHCI, and you can see the qualified name of the module will be append into the namespace.

```
Prelude> import qualified Geometry.Sphere as Sphere
Prelude Sphere> import qualified Geometry.Cuboid as Cuboid
Prelude Sphere Cuboid> import qualified Geometry.Cube as Cube
Prelude Sphere Cuboid Cube>
```