Re: List to infix
- To: mathgroup at smc.vnet.net
- Subject: [mg113057] Re: List to infix
- From: "Sjoerd C. de Vries" <sjoerd.c.devries at gmail.com>
- Date: Tue, 12 Oct 2010 04:27:17 -0400 (EDT)
- References: <i8ukkl$oc7$1@smc.vnet.net>
My brute force approach would be: ToExpression[StringReplace[ToString[mylist], ", " -> "~"]] Cheers -- Sjoerd On Oct 11, 11:16 am, Hugo Touchette <hugo.touche... at googlemail.com> wrote: > Hi, > > A problem about infix notation. In simple terms, I want to transform > the list > > {1, Plus, 3, Times, 5, Plus, 5} > > into the infix form > > 1~Plus~3~Times~5~Plus~5 > > to get a numerical result (here 25). Is there an easy way to do this? > The lists I'm working with are actually much longer, so I want > something efficient. > > I've tried using Infix[mylist,"~"], but the ~ there is a string, not > the infix operator. In the end, I simply wrote > > ListOperation2[l_] := Module[{res, i}, > res = l[[1]]; > Do[ > res = res~l[[i]]~l[[i + 1]] > , {i, 2, Length[l], 2}]; > res > ] > > This works, but I thought there might be a more efficient way to do > things. > > Thanks in advance for any help. > > oguh