IDE versus MSG Box - Field Tabstops

Geoff Canyon gcanyon at gmail.com
Thu Aug 15 01:35:29 EDT 2013


I don't understand the use of "sometimes" here, as if the
functionality were uncertain, ambiguous, or just plain random. This
functionality is determinate, and as far as I can tell has been this
way (and documented) since Rev 1.0, and presumably back to the
MetaCard days.

To me, this is very much like the following, which works:

  put "test" into x
  put z before char 7 of x
  put x -- puts "testz"

There is no character 7 of x. The length of x is 4 (and then 5,
obviously). The engine takes an unexpected input and interprets it in
a sensible, predictable, and useful way. Interestingly, this does
something quite different:

  put "1,2,3" into x
  put 4 before item 7 of x
  put x -- puts "1,2,3,,,,4"

In this case, since empty items are possible, the list is padded to
make the command possible in a stricter sense than what was possible
with characters. I doubt I'm demonstrating anything obscure here, but
I'm trying to illustrate one of the beautiful things about LC: in many
circumstances, it simply "does the right thing," even when given
potentially counterintuitive input. I'd hate to lose that.

Further, I think all the arguments against changing the behavior of
the terminating itemdelimiter apply here as well: given the long
history of this behavior, changing it is risky for existing code.


> On Aug 14, 2013, at 7:17 PM, Richard Gaskin <ambassador at fourthworld.com> wrote:
>
> 1 and 3 and always consistent, but 2 simply says that sometimes the values are treated as absolutes and other times as relative.




More information about the use-livecode mailing list