Re: Style Question: The Functional Way

• To: mathgroup at smc.vnet.net
• Subject: [mg115810] Re: Style Question: The Functional Way
• From: "Sjoerd C. de Vries" <sjoerd.c.devries at gmail.com>
• Date: Fri, 21 Jan 2011 04:32:53 -0500 (EST)
• References: <ih967m\$okt\$1@smc.vnet.net>

```It's a good start.  You could also have tried DeltaList[L_] :=
Drop[RotateLeft[L] - L, -1] and probably countless others.

Of course, Mathematica already has a function that does this,
Differences.

Cheers -- Sjoerd

On Jan 20, 12:27 pm, Just A Stranger <forpeopleidontk... at gmail.com>
wrote:
> Hello,
>
> So I'm trying to learn how to do things the functional way. As an exercise
> I'm trying to program a simple economics related table that gives revenue,
> marginal revenue, etc given a demand schedule (2 lists of numbers
> representing quantity and price respectively). A simple task in a
>
> The point is that I need a list of the differences in the given lists, from
> which I will be using to get marginal values (derivatives). I'll call it,
> say, DeltaList, and I was wondering if this would be a proper "functional"
>
> In[0]: DeltaList[L_] := Subtract @@@ Reverse /@ Partition[L, 2, 1]
>
> (DelatList: list -> list)
>
> Basically, it partitions the list into ordered pairs, reverses those ordered
> pairs to prep them for the subsequent Subtract application.
>