I am not sure that I would like to see it. Frist, Eric argues that
array_sizes are harder for the implemenation to return because they
are not input argument. This is one very good reason to keep them.
If they are not returned by GET_ENVELOPE then the user must do the
calculation. There was concern that errors in doing this would lead
to mistakes in array sizes passed to GET_CONTENTS. Second, the issue
of generality was real. As David pointed out, you needed two counts
for one of the new datatypes. If we return a single count and then
add a constructor in the future (did I say that, really, aahhh!) it
may mean changing these calls too. Third, not all calls have a count
or it is called something else. For example, DUP would return count=0
I assume? Fourth, the user can get the count from the combiner and
other array sizes returned if they need it without calling
GET_CONTENTS (and needing it is less likely then the array sizes in my
opinion). Finally, one gets the count as the first returned value in
the integer array from GET_CONTENTS so not giving it in GET_ENVELOPE
does not seem a big deal to me.
All that said, I am currently thinking that leaving it alone is best
right now.
Steve