#1651: Problems with expansions in parameter files ---------------------+------------------------------------------------------ Reporter: hinder | Owner: sbrandt Type: defect | Status: accepted Priority: major | Milestone: Component: Cactus | Version: development version Resolution: | Keywords: ---------------------+------------------------------------------------------
Comment (by hinder):
Replying to [comment:14 rhaas]:
I think allowing any order for parameter has a very similar effect as
allowing parameters to be set more than once. In both cases one has to read the whole of the parfile to find out what value a given parameter has in the simulation. I would like to avoid this so that one can use a "find" in an editor to search for a parameter setting.
I don't follow. If a parameter can be set only once, it will appear only once in a parameter file. Thus, you can use "find" to search for it, and the first (and only) occurrence will be the correct one. This is independent of whether you allow parameter expressions to contain only parameters which have been set above them in the file. Did you mean something else? Were you referring to the ability to set parameters more than once, or have them use the default value if they had not been set "yet"?
Here is another hint that we should allow any order. Suppose I have C = A followed by A = B. This would be disallowed currently, as the setting for A appears below the expression containing it. If I then remove the setting for A, magically the setting for C is now valid, as it will use the default value for A. In general, you cannot assume that you can find the value of a parameter by searching upward in the file, as the value might come from the defaults. Unless the setting is close to the use, you will probably have to search anyway, and then I don't think it makes a difference if the setting is above or below the use.