You see the result of Print
, which is Null
.
In[37]:= Print["Mary had a little lamb."]
During evaluation of In[37]:= Mary had a little lamb.
In[39]:= %37 === Null
Out[39]= True
To see something, one has to give it after printing
In[30]:= Clear[calculate3]
calculate3[a_] := (Print[a]; a) /; AssociationQ[a]
calculate3[a_] := a /; ! AssociationQ[a]
In[33]:= calculate3 //@ c
During evaluation of In[33]:= <|r->2,m->3|>
During evaluation of In[33]:= <|w->1,t-><|r->2,m->3|>|>
Out[33]= <|w -> 1, t -> <|r -> 2, m -> 3|>|>
Now you see that your function calculate
is highly questionable. One gets the keys of an association with Keys
and the values with Values
, usually. Print
ing as well as InputForm
are very bad data handling ideas, because they are wrappers: with other words, you can not continue working on their results.