Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: new functional operator
Replies: 27   Last Post: Jun 3, 2012 5:05 AM

 Messages: [ Previous | Next ]
 roby.nowak@gmail.com Posts: 87 Registered: 5/8/07
Re: new functional operator
Posted: Mar 8, 2012 4:37 AM

On 4 Mrz., 10:37, noqsiaerosp...@gmail.com wrote:
> On Saturday, March 3, 2012 8:52:46 PM UTC+9, roby wrote:
> > Dear Group and Mathematica staff.
>
> > In the functional programming spirit I am missing a postfix notation
> > forMap[ ].

>
>
> RightVector[a_,f_]:=Map[f, a]
> RightVector[a_,more__]:=RightVector[Map[{more}[[1]],a],Sequence@@Drop[{more },1]]
>
> Then:
>
> {1,2,3}\[RightVector](#^2&)\[RightVector]g
>
> yields:
>
> {g[1],g[4],g[9]}
>
> (it looks nicer in a notebook)

Yes,

THIS IS IT

surprisingly easy, surprisingly not yet standard in Mathematica

can even be prettyfied a little bit:

RightVector[a_,f_]:=f/@a
RightVector[a_,more__]:=RightVector[First@{more}/
@a,Sequence@@Rest@{more}]

or we can use LeftTee[ ] which in contrast to RightArrow[ ] already
implements the neccesary left-assocciativitiy such that:

LeftTee[a_, f_] := f /@ a

is all we need.

{1,2,3}\[LeftTee]Sin\[LeftTee]Sqrt
(looks nicer in a notebook)

Robert

Date Subject Author
3/3/12 roby.nowak@gmail.com
3/4/12 Noqsi
3/8/12 roby.nowak@gmail.com
3/8/12 roby.nowak@gmail.com
3/8/12 roby.nowak@gmail.com
3/9/12 roby.nowak@gmail.com
3/10/12 Murray Eisenberg
3/22/12 Bill Rowe
3/10/12 Barrie Stokes
3/10/12 Barrie Stokes
3/13/12 roby.nowak@gmail.com
3/8/12 branton.campbell
3/10/12 Bill Rowe
3/14/12 roby.nowak@gmail.com
3/18/12 Noqsi
3/20/12 roby.nowak@gmail.com
3/21/12 Noqsi
3/21/12 DrMajorBob
3/22/12 roby.nowak@gmail.com
3/22/12 Barrie Stokes
3/23/12 roby.nowak@gmail.com
3/24/12 DrMajorBob
3/25/12 Ray Koopman
3/26/12 Barrie Stokes
3/28/12 roby.nowak@gmail.com
6/3/12 Rui
6/3/12 Rui