Określanie ścieżki wyszukiwania dla operacji „ładowania” w ghci

WŁadowanie plików źródłowych stwierdza, że ​​ścieżka wyszukiwania plików źródłowych jest określona za pomocą opcji -i:

ghci -idir1:...:dirn

Czy to oznacza, że ​​gdy ktoś wykonuje:

:load test.hs

następnie ghci szuka w powyższych katalogach test.hs? Widziałem odpowiedź naProblem Określanie katalogu źródłowego do GHC ale wciąż nie jestem tego pewien.

Na przykład w systemie Windows XP umieściłem test.hs w:

C:\Documents and Settings\winuser\My Documents

a następnie pobiegł:

ghci -iC:\Documents and Settings\winuser\My Documents

Jednak po zrobieniu:load test.hs, ghci skarżył się, że nie może znaleźć pliku.

[EDIT 1]

Chcę uniknąć używania:cd ponieważ rozładowuje wszystkie załadowane moduły, co uniemożliwia ładowanie plików z wielu lokalizacji

[EDIT 2: odpowiedź na jozefg]

--C:\A\A.hs
module A where
myaddA::Int->Int->Int
myaddA x y = x+y

--C:\B\B.hs
module B where
myaddB::Int->Int->Int
myaddB x y = x+y

Następnie mogę wykonać następujące czynności:

Prelude> :cd C:\A
Prelude> :load A
[1 of 1] Compiling A                ( A.hs, interpreted )
Ok, modules loaded: A.
*A> myaddA 2 3
5
*A> :cd C:\B
Warning: changing directory causes all loaded modules to be unloaded,
because the search path has changed.
Prelude> :load B
[1 of 1] Compiling B                ( B.hs, interpreted )
Ok, modules loaded: B.
*B> myaddB 3 4
7

Jednak nie znalazłem sposobu na jednoczesne udostępnienie modułów A i B, gdy moduły są przechowywane w plikach w różnych lokalizacjach

[EDIT 3: odpowiedź na jozefg]

>ls
temp  temp2
>more temp/A.hs
module A where
addA = (+)
>more temp2/B.hs
module B where
addB = (+)
>cd temp
>ghci -i../temp2
GHCi, version 7.6.3: http://www.haskell.org/ghc/  :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Prelude> import A B

<interactive>:1:10: parse error on input `B'

[EDIT 4: odpowiedź na Jozefga]

>ls
temp  temp2
>more temp/A.hs
module A where
addA = (+)
>more temp2/B.hs
module B where
addB = (+)
>cd temp
>ghci -i../temp2
GHCi, version 7.6.3: http://www.haskell.org/ghc/  :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Prelude> import A

<no location info>:
    Could not find module `A'
    It is not a module in the current program, or in any known package.
Prelude> import B

<no location info>:
    Could not find module `B'
    It is not a module in the current program, or in any known package.

questionAnswers(2)

yourAnswerToTheQuestion