|
[Date Index]
[Thread Index]
[Author Index]
Re: Dt@x@1
- To: mathgroup at smc.vnet.net
- Subject: [mg119394] Re: Dt@x@1
- From: "Nasser M. Abbasi" <nma at 12000.org>
- Date: Wed, 1 Jun 2011 06:57:25 -0400 (EDT)
- References: <is4tgc$b3t$1@smc.vnet.net>
- Reply-to: nma at 12000.org
On 6/1/2011 1:33 AM, Chris Chiasson wrote:
> Why does Dt@x@1 return zero?
Dt[ x[1] ]
The last evaluation of x[1] in the call gave 1, and this is
what is left and is passed to Dt and then Dt[1] returns zero.
You can see that by
-----------------------
In[65]:= Remove["Global`*"]
TracePrint@Dt [ x[1] ]
During evaluation of In[65]:= Dt[x[1]]
During evaluation of In[65]:= Dt
During evaluation of In[65]:= x[1]
During evaluation of In[65]:= x
During evaluation of In[65]:= 1
During evaluation of In[65]:= 0
Out[66]= 0
------------------------------
But what I do not know, is why when typing
In[84]:= x[1]
one gets back
Out[84]= x[1]
and so, now it did not 'evaluate' to 1 like it seems to have
done inside Dt call above.
I can see that x[1] should return x[1], but I am not sure
why x[1] ended 1 inside the Dt call as shown by the trace above
and not when typing it on the top level.
This is for the experts to explain, something to do with how
different evaluation rules works in different contexts I suppose.
--Nasser
Prev by Date:
Appending to Dispatch[] tables
Next by Date:
Re: Mapping to Create Nested Loops
Previous by thread:
Dt@x@1
Next by thread:
Re: Dt@x@1
|