This is an aspect of software design that our choice of technologies does not handle in an ideal way.
At first we employed subshells and specially-delimited strings to simulate pass-and-return by pointer/reference. This required careful construction and breakdown of the strings being passed back and forth. Then we dropped the subshelling in favor of a single global string (still specially-constructed) for a slight efficiency gain. Now we intend to replace the specially-built string with a collection of simple global data stores that we manage through a clean setter-getter interface.
This is an aspect of software design that our choice of technologies does not handle in an ideal way. At first we employed subshells and specially-delimited strings to simulate pass-and-return by pointer/reference. This required careful construction and breakdown of the strings being passed back and forth. Then we dropped the subshelling in favor of a single global string (still specially-constructed) for a slight efficiency gain. Now we intend to replace the specially-built string with a collection of simple global data stores that we manage through a clean setter-getter interface.