Re: Difference table via DifferenceDelta[ ]. Why do I need two Table[ ] calls?
- To: mathgroup at smc.vnet.net
- Subject: [mg121174] Re: Difference table via DifferenceDelta[ ]. Why do I need two Table[ ] calls?
- From: Christopher Young <cy56 at comcast.net>
- Date: Fri, 2 Sep 2011 03:29:37 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <j3l6l1$d81$1@smc.vnet.net> <19D39C6A71784A0E827D1B556E9B2EBF@microsof8970a2>
Thanks, I'll be wary of DifferenceDelta. Looks like Differences will
work just as well for me here.
On Sep 1, 2011, at 11:08 AM, Alexey Popkov wrote:
> Christopher,
>
> DifferenceDelta is an autoloaded function:
>
> In[1]:= ClearAttributes[DifferenceDelta, {Protected, ReadProtected}]
> Definition[DifferenceDelta]
> Out[2]= DifferenceDelta :=
> System`Dump`AutoLoad[Hold[DifferenceDelta], Hold[DifferenceDelta],
> Discrete`DifferenceDelta`] /; System`Dump`TestLoad
>
> The need for Evaluate in your code is an inconsistency: such code should
> work well without beating the HoldAll attributes of Table. And error
> messages when your code is evaluated without Evaluate clearly show very bad
> design of this function. I recommend do not rely on such functions.
>
> As for why you have to evaluate your code twice, you may be interested in
> this thread:
>
http://stackoverflow.com/questions/5649379/why-do-i-have-to-evaluate-this-twice
>
>
> Alexey
Chris Young
cy56 at comcast.net