[erlang-questions] Unable to call functions that are in a module in the same location
Steve Strong
steve@REDACTED
Sun Aug 17 18:31:28 CEST 2014
The record will be initialised with the defaults as specified in the hrl. The code and stacktrace in the gist still suggest that SpecCon#constraint.morphology is ‘undefined’ - so something between the record construction below and the crash within the gist must be modifying the record.
--
Steve Strong
Sent with Sparrow (http://www.sparrowmailapp.com/?sig)
On Sunday, 17 August 2014 at 15:36, Yves S. Garret wrote:
> The record in question is "constraint". The thing is, when I call it, it looks like this with none of the values initialized:
>
> test() ->
> Specie_Id = test,
> Agent_Id = test,
> CloneAgent_Id = test_clone,
> SpecCon = #constraint{}, % <---- HERE IS WHERE THE FIRST INSTANCE IS CREATED
> F = fun() ->
> construct_Agent(Specie_Id, Agent_Id, SpecCon),
> clone_Agent(Specie_Id, CloneAgent_Id),
> print(Agent_Id),
> print(CloneAgent_Id),
> delete_Agent(Agent_Id),
> delete_Agent(CloneAgent_Id)
> end,
>
> mnesia:transaction(F).
>
> My question is thus, if I make a record with #constraint{}, does that mean that all of its values are by default set to undefined or the default values that were specified in records.hrl?
>
>
>
>
> On Sat, Aug 16, 2014 at 2:35 AM, Steve Strong <steve@REDACTED (mailto:steve@REDACTED)> wrote:
> > I'm guessing that this:
> >
> > Morphology = SpecCon#constraint.morphology,
> >
> > Is setting Morphology to 'undefined' - that's what the stack trace looks to be saying.
> >
> > Cheers,
> >
> > Steve
> >
> > Sent from my iPhone
> >
> > On 16 Aug 2014, at 04:54, "Yves S. Garret" <yoursurrogategod@REDACTED (mailto:yoursurrogategod@REDACTED)> wrote:
> >
> > > Hello,
> > >
> > > This is my code:
> > > https://gist.github.com/anonymous/5b9b2c55a7684f5386e2
> > >
> > > When I run my code inside of erlang (17.0), this is the error that I get:
> > > 7> genotype:create_test().
> > > {aborted,{undef,[{morphology,undefined,[sensors],[]},
> > > {morphology,get_InitSensors,1,
> > > [{file,"morphology.erl"},{line,8}]},
> > > {genotype,construct_Cortex,3,
> > > [{file,"genotype.erl"},{line,41}]},
> > > {genotype,construct_Agent,3,
> > > [{file,"genotype.erl"},{line,20}]},
> > > {genotype,'-create_test/0-fun-0-',0,
> > > [{file,"genotype.erl"},{line,434}]},
> > > {mnesia_tm,apply_fun,3,[{file,"mnesia_tm.erl"},{line,833}]},
> > > {mnesia_tm,execute_transaction,5,
> > > [{file,"mnesia_tm.erl"},{line,813}]},
> > > {erl_eval,do_apply,6,[{file,"erl_eval.erl"},{line,661}]}]}}
> > >
> > > genotype.erl and morphology.erl are in the directory, so why can't genotype's function call morphology's functions? Or am I missing something else entirely?
> > >
> > > Thanks.
> > > _______________________________________________
> > >
> > > erlang-questions mailing list
> > > erlang-questions@REDACTED (mailto:erlang-questions@REDACTED)
> > > http://erlang.org/mailman/listinfo/erlang-questions
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20140817/cae6fa9a/attachment.htm>
More information about the erlang-questions
mailing list