External to Internal

Hi,

I want to convert data supplied by a file into their corresponding
internal values.

I have an external file with data that are in the form “variable
name”, tab, followed by their value. The 'value 'can be a single
number, an array of numbers, or a matrix of numbers, For example,
the file might look like this:
a 2.4
b 1,0, 3.0, 5.0
c 5, 6, 11
d [1, 2], [5, 6], [45,55]

I can get a, b, and c to convert to single values and arrays, thanks
to this forum, but I cannot figure out a way to convert d into an
array of arrays. Does anyone have any suggestions?

Ideally I would like to match the variable name in the file to the
corresponding and same name in the program. Any ideas how to do that?

Thanks

Pete Versteegen

Peter V. wrote:

b 1,0, 3.0, 5.0
c 5, 6, 11
d [1, 2], [5, 6], [45,55]

I can get a, b, and c to convert to single values and arrays, thanks to
this forum, but I cannot figure out a way to convert d into an array of
arrays. Does anyone have any suggestions?

Just insert an = :

a = 2.4
b = 1,0, 3.0, 5.0
c = 5, 6, 11
d = [1, 2], [5, 6], [45,55]

p a, b, c, d

END

Output:

2.4
[1, 0, 3.0, 5.0]
[5, 6, 11]
[[1, 2], [5, 6], [45, 55]]

Ideally I would like to match the variable name in the file to the
corresponding and same name in the program. Any ideas how to do that?

input = <<END
a = 2.4
b = 1,0, 3.0, 5.0
c = 5, 6, 11
d = [1, 2], [5, 6], [45,55]
END

a = b = c = d = nil
eval input ## NOT SECURE!
p a, b, c, d

END

Output:

2.4
[1, 0, 3.0, 5.0]
[5, 6, 11]
[[1, 2], [5, 6], [45, 55]]