RE: Context headache
- To: mathgroup at smc.vnet.net
- Subject: [mg70937] RE: [mg70907] Context headache
- From: "David Park" <djmp at earthlink.net>
- Date: Thu, 2 Nov 2006 06:47:26 -0500 (EST)
Xerxes, I think that Context would be a poor tool for doing this. Why not store your different data sets as... data[1] = ... data[2] = ... and then, if you are doing a lot of calculations on each set... With[{data=data[5]}, calculations using data] or With [{n=5}, calculations using data[n]] David Park djmp at earthlink.net http://home.earthlink.net/~djmp/ From: Xerxes [mailto:Xerxes314 at gmail.com] To: mathgroup at smc.vnet.net Hi all, I'm trying to write a Mathematica analysis package in which various data sets are distinguished by being placed in their own contexts, say data1`data, data2`data, etc. This is helpful in that you can always hop into a context to work with each data set individually. Of course, at some point, that method becomes too much of a chore and you want to automate things. I'm trying to make a function that iterates over several contexts; it will hop into the context, execute a function on the data in that context, save the result as another variable in that context and then hop back out. But as described in http://groups.google.com/group/comp.soft-sys.math.mathematica/msg/7368d0cd14 aa8960 (thread aptly named "Nailing jelly to a tree"), you can't do this. As soon as you try evaluating the iterating function, all the variables inside it get poisoned with the Global` context. You might try fixing this by using more nails on the jelly, say a hideous construct like Evaluate[Symbol[$Context<>"result"]] = analyze[Evaluate[Symbol[$Context<>"data"]]]; but since my actual functions are much more complicated than this simple example, any readability of the code goes right away. Is there any better workaround known that would allow iteration over multiple contexts? Or alternatively, since it seems like I'm trying to force contexts to do something they don't want to do, is there some better data encapsulation technique I haven't thought of yet? Thanks, Xerxes
- Follow-Ups:
- Re: RE: Context headache
- From: Yasvir Tesiram <yat@omrf.ouhsc.edu>
- Re: RE: Context headache