Re: List to Expression
- To: mathgroup at smc.vnet.net
- Subject: [mg106088] Re: [mg106055] List to Expression
- From: Adriano Pascoletti <adriano.pascoletti at dimi.uniud.it>
- Date: Fri, 1 Jan 2010 05:34:29 -0500 (EST)
- References: <200912310817.DAA24881@smc.vnet.net>
A solution using ReplaceAll (/.): In[1]:= l = {a, {b, {c, d}}}; l /. {x_, y_} :> x[y] % /. {x_, y_} :> x[y] % /. List -> Sequence Out[1]= a[{b, {c, d}}] Out[2]= a[b[{c, d}]] Out[3]= a[b[c, d]] In[4]:= l /. {x_, y_} :> x[y] /. {x_, y_} :> x[y] /. List -> Sequence Out[4]= a[b[c, d]] Adriano Pascoletti 2009/12/31 Spell <l_sharonj at hotmail.com> > Hellp, > > I am having trouble converting a list into an "expression". For example > suppose I have the following list expression. > l = {a, {b, {c, d}}} > > When I evaluate the FullForm version, I get an output with List as the > Head. > List[a,List[b,List[c,d]]] > > But, I would like the following output instead: a[b[c,d]], wondering how > this would be accomplised. > > PS: > Essentially, I have a FunctionSet with various functions in it. And would > like to generate a tree of functions, from the FunctionSet. So, say I have > functions from a to d in the set. Then, I can generate something like: > d[a[b], c[d[a[b]]]. > > Thank you. > >