[erlang-questions] Why we need a -module() attribute?
Tue Feb 23 22:20:04 CET 2016
On 02/23/2016 08:53 PM, Kenneth Lakin wrote:
> On 02/23/2016 10:12 AM, Judson Lester wrote:
>> I'd really like to be able to put that in src/myapp/part/subpart.erl -
>> maybe this is a misapprehension turned superstition, but I was under the
>> impression that I'd need to have a whole separate build step to copy the
>> latter into the former before handing it to erlc. Is that not the case?
> It doesn't seem to be the case. This works just fine for me with Erlang 18:
> $ ls
> $ mkdir -p dir/with/parents
> $ echo "-module (test).
>> -compile (export_all).
>> run() -> ok." > dir/with/parents/test.erl
> $ erlc dir/with/parents/test.erl
> $ ls
> dir test.beam
Interestingly, if -module was optional, this would open the way to tools
being able to create the dir_with_parents_test.beam by concatenating the
path segments. Erlang.mk has an option to do this with ErlyDTL templates
already, it could be interesting to see this for Erlang source files.
Author of The Erlanger Playbook,
A book about software development using Erlang
More information about the erlang-questions