Re: The Mathematica equivalent of Cons (as in Lisp)?
- To: mathgroup at smc.vnet.net
- Subject: [mg73932] Re: The Mathematica equivalent of Cons (as in Lisp)?
- From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
- Date: Sat, 3 Mar 2007 01:08:37 -0500 (EST)
- Organization: The Open University, Milton Keynes, UK
- References: <es90f4$2gc$1@smc.vnet.net>
wooks wrote: > For the benefit of someone with a Scheme background. > > Would it be Prepend. Are there any pitfalls to be wary of? My Scheme is a little bit rusty, but I hope that the following comments will help you. Prepend must be the closest equivalent expression to cons. Note that the order of augments is the inverse of a cons. (Also, I am not sure what might be the Mathematica equivalent of a List/Scheme dotted pair.) Mathematica built-in functions First and Rest are the equivalent of car and cdr, respectively. (Also, you might be interested in Most and Last.) In Scheme: ========== (cons '1 '(2 3 4)) --> (1 2 3 4) (cons '(1 3 3) '(4 4 5)) --> ((1 3 3) 4 4 5) In Mathematica: =============== In[1]:= Prepend[{2, 3, 4}, 1] Out[1]= {1, 2, 3, 4} In[2]:= Prepend[{4, 4, 5}, {1, 2, 2}] Out[2]= {{1, 2, 2}, 4, 4, 5} Regards, Jean-Marc