Mam dokładnie taki sam problem jak opisany w pytaniu Re-export qualified?Zakwalifikowany reeksport - jak rozwiązać to rozwiązanie?
module Foo.A where foo = 42
i
module Foo.B where foo = 12
i chcesz napisać super moduł
module Foo ( module Foo.A , module Foo.B ) where import Foo.A import Foo.B
który re-eksportu w tych modułach, zderzysz się z nazwą.
Zapytano mnie 5 lat temu, przypuszczam, że od tamtej pory mogło dojść do pewnych zmian. Czy były jakieś? Jeśli nie, nadal nie ma na to rozwiązania?
Ja robię nie za obiektyw do rozwiązania.
UPDATE:
Nie może być wiele funkcji foo
w każdym module (foo1, foo2, etc) i chcę użyć je z obu modułów. W każdym module mogą być również dostępne nazwy z tymi samymi nazwami członków.
Ukrywanie nie jest rozwiązaniem.
> W każdym module może być wiele funkcji (foo1, foo2, itp.) I chcę używać ich z obu modułów. W każdym module mogą być również dane z tymi samymi nazwami członków. Jeśli tak jest naprawdę i nie chcesz niczego ukrywać. Jedynym rozwiązaniem jest zaimportowanie obu zakwalifikowanych modułów, a nie próba utworzenia modułu AB eksportującego zarówno – mb14
@ mb14, co dokładnie masz na myśli? –
FWIW, wydaje mi się, że bardziej odpowiednie byłoby dodanie do starych pytań "aktualnych odpowiedzi są nieaktualne", niż zadawanie nowego pytania. – icktoofay