LiveCode 10 - what are your thoughts on the new features?

Richmond richmondmathewson at
Wed Sep 8 03:07:02 EDT 2021

It does look exciting, but, as usual, the proof of the pudding is in the 
eating and I am sure,
initially at least, there will be a few bits of nutshell left in there 
for us to jag our teeth on:
but that's to be expected, and our job is to report back any nutty bits 
to LiveCode centre.

My thoughts are, as usual, retro, insofar as I hope the syntax changes 
while being clever
will not mean that stacks written WITHOUT those new syntactic features 
will not be openable and
usuable by earlier versions of LiveCode.

On 8.09.21 3:33, Alex Tweedly via use-livecode wrote:
> On 07/09/2021 23:01, Martin Koob via use-livecode wrote:
>> Hi all.
>> There has been lots of discussion on the list and forums about the 
>> one part of Kevin’s announcement regarding the changes in licensing 
>> but nothing that I see on the other major part of the announcement — 
>> the new features coming in LiveCode 10.
> Good idea for discussion - but we may be shooting in the dark, until 
> either the DP or another sneak peek.
>> New Syntax in 10
>>     Array Literals
> Not sure I fully understand this one yet.
>     put { "a": "b", "c":"d" } into tVar
> seems clear - and is explained with an equivalent in existing code.
> But
>      put [1, 2, 3 ] into tVar2
> isn't clear to me. If it was in Python it would be a list - but LC 
> doesn't have 'lists'.
> Is it equivalent to
>    put true into tVar2[1]
>    put true into tVar2[2]
>    put true into tVar2[3]    ??
> Or if not, then what is it equivalent to ?
> But generally, I like the idea. Though it does just make me want to 
> ask for more :-)
> Why just constants ?
> Why can't I say
>     put { myvar: "first", anothervar: tWhatever } into tVar2   ?
>>     Constant Expressions
> About time. I trust you can actually do
>    constant Kmin=100, kMax=200, kMid=(kmin+kmax)/2
>>     Static Switch Optimization
> Yes - good thing.I have a bunch of code (which I might not want to 
> show in public), where this will make a significant difference. I was 
> worried by the statement that "... recognises cases where all the 
> cases are constant", but realised that you can always cover the other 
> cases by putting them into a separate switch/if-then-else in the 
> 'default' case.
>>     Constant folding
> I confess I assumed that was already there :-)
> But I was disappointed to not see my two biggest 'constant' wishes
> 1. multi-line constants e.g. amongst other ways, Python's
> put """line 1
> line 2
> line 3""" into tVar
> 2. global constants. Most compiled languages will allow an 'include' 
> file which can specify constants, which you can then rely on to be 
> defined properly (and the same) everywhere. So that's probably too 
> much at odds with LC's model - but could be handled by 'protect' 
> global variables (or, I'm sure, another 10 ways that Mark W. could 
> think of).
>>     Tail Expressions
> I just don't understand this one, so no comment.
>> Anyway I am excited to see the first DP which is promised in the next 
>> couple of weeks.  My wife and I have an ongoing disagreement about 
>> the term 'couple of’ in terms of counting.  I say it means around 2 
>> or 3ish.  She says it means 2. Further she says if you wanted to say 
>> 3 or 4 you would say ‘a few’.  So in this case I am hoping she is 
>> right and I am wrong and we do get the new DP in a couple of weeks 
>> and not a few weeks. :-)
> That sounds like a 'couple' discussion I wouldn't want to get in the 
> middle of. Even worse than whether a sign on the freeway/motorway 
> saying "xyz next exit" means the immediately coming exit (i.e. 'this 
> exit' or 'next exit'), or the following one. Caused me no end of 
> trouble when I first moved to the US :-)
> Alex.
> _______________________________________________
> use-livecode mailing list
> use-livecode at
> Please visit this url to subscribe, unsubscribe and manage your 
> subscription preferences:

More information about the use-livecode mailing list