DP6 more strict?

Mark Waddingham mark at livecode.com
Sun Oct 4 10:21:16 EDT 2015


I must confess this was one 'fix' which I was unsure about.

The LiveCode script parser is very very lax - you can write things which look like they should work in some fashion, but don't actually do what you think.

For a long time I have always had the point of view that such things should not be fixed until a suitable compatibility mechanism is in place, based on presumed impact.

However, this time, we decided to see what impact such a change (to the repeat command in this instance) would make (making decisions with actual data is generally better than without!).

As it turns out a couple of people have commented that it is a good thing as it has uncovered bugs in their scripts. A couple have found things have broken (we found a couple in the IDE as well) usually in third party components.

I'm still somewhat on the fence about it but am intending to wait and see whether the change is going to cause more trouble than it's worth. We can always revert the patch in a subsequent build based on further feedback.

Mark.

Sent from my iPhone

> On 4 Oct 2015, at 14:31, James Hale <james at thehales.id.au> wrote:
> 
> In running some stacks against DP6 I came across a script error on opening one.
> The stack in question was simply a copy of a stack I have run without error since lc5.5.
> The error was well and truly an error.
> I had a repeat loop which I inadvertently entered as...
>   Repeat for X = 1 to aNumber
>     ....
>  End repeat 
> 
> I guess it is a hang up from other languages I used in the past and I normally catch myself and enter the correct form...
> 
> Repeat with X = 1 to aNumber
>     ....
>  End repeat 
> 
> However this time I didn't.
> I hadn't since I first wrote this script way back then.
> 
> The point of this post is that not only did I miss this but Livecode missed it through every version until LC 8.
> 
> Try it out, put the first, incorrect form into a LC7 script and see if it compiles.
> Now try the same in LC 8 dp6 or dp5
> 
> I can't speak for the other DP's as I have only thought to test this stack against the current release.
> 
> As has been posted some plugins are interfering with the correct function of the IDE and I wonder if this "stricter" (well more correct) behavior of the script engine in picking up errors is the cause. Perhaps there are quite a few scripts with errors that have slipped through in the past but will now stand out like the proverbial?
> 
> As an aside, I suggest you remove any plugins from your initial play with the latest DP, at least until you are happy with the behavior of the IDE just in case this new diligence on the part of the engine catches you out.
> 
> James
> 
> 
> 
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode




More information about the use-livecode mailing list