 
 
 
 
 
 
Re: On ~= (simulating a C structure) in Mathematica....
- To: mathgroup at smc.vnet.net
- Subject: [mg103957] Re: [mg103922] On ~= (simulating a C structure) in Mathematica....
- From: Jason Ledbetter <jasonbrent at gmail.com>
- Date: Tue, 13 Oct 2009 23:21:30 -0400 (EDT)
- References: <200910131117.HAA29190@smc.vnet.net>
This works as expected (when my expectations are modified slightly) as is.
test[foo] ends up with DownValues[foo] set as I hoped... not sure why I was
expecting the lhs to get set.
Thanks to Mr. Lichtblau @ Wolfram for pointing out this error in
expectations.
-jbl
On Tue, Oct 13, 2009 at 7:17 AM, Jason Ledbetter <jasonbrent at gmail.com>wrote:
> Folk,
> I'm importing data into mathematica from a web service using some perl
> middleware (the lack of XPath functionality in mathematica coupled with my
> very junior comprehension of mathematica patterns forced this for now).
>
> The perl middleware returns datasets by "layers" that I'm (somewhat
> successfully) manipulating within mathematica.
>
> For each dataset, I end up with a few large pieces of data that are roughly
> analogous to "layers".
>
> Right now, I am mentally keeping track of the variable names for each layer
> but I would like to expand this to be more programatic so I can work with
> comparisons between datasets (which would each contain a number of
> "layers").
>
> Initially I was just naming variables like...
>
> datasetId=3728;
> layer1ImportString = "!importprogram..."<> ToString[datasetId]";
> layer1=Import[layer1ImportString....];
> ....
>
> This would let me have a single identifiable dataset with named layers.
>
> I've been pondering abusing DownValues to store this data at a known-to-me
> "index".
>
> e.g.,
>
> dataset1[0]=3278;
> dataset1[1]=Import[layer1ImportString...];
>
> I believe this approach will work, but what I'm trying to do now is
> encapsulate all of the initial dataset/layer importing into one function
> which leads to my question.
>
> How can I do:
>
> dataset1=importById[3728];
>
> and get dataset1[0], dataset1[1], etc populated?
>
> For example:
>
> In[262]:= test[data_] := Module[{}, {data[0] = "zero", data[1] = "one"}];
> bar = test[foo];
> DownValues[bar]
>
> Out[262]= {}
>
>
> I'm expecting... {HoldPattern[bar[0]]:> zero...}
>
>
> Thoughts? I realize I'm probably doing this The Hard Way and welcome other
> alternatives... my end goal is to be able to have a single variable that
> describes the entire dataset/individually-imported-layers that can be
> passed
> to other functions so I can more readily work with multiple datasets
> concurrently.
>
>
> Thanks,
>
>
> -jbl
>
>
>
- References:
- On ~= (simulating a C structure) in Mathematica....
- From: Jason Ledbetter <jasonbrent@gmail.com>
 
 
- On ~= (simulating a C structure) in Mathematica....

