2015-08-30 10 views

Odpowiedz

20

Tak i nie. Pierwsza definicja automatycznie określa alias na podstawie nazwy modułu:

defmodule Utilities do 
    defmodule StringUtils do 
    end 

    # Can access the module as StringUtils 
end 

Podczas gdy druga:

defmodule Utilities.StringUtils do 
    # Cannot access the module as StringUtils 
end 

inny niż ten kod i moduł określony przez oba są dokładnie takie same.

3

Tak, oba są tłumaczone dokładnie symbolu (w Erlang do modułu odwołuje się jego symbol):

:"Elixir.Utilities.StringUtils"

W Erlangu nie ma naprawdę zagnieżdżonych modułów, to tylko symulacja Elixir.

+3

Dzięki za odpowiedź - Myślę, że chodziło o 'Atom', kiedy odnosiłeś się do' Symbole' –

Powiązane problemy