What is "Open Language"?

Mark Waddingham mark at livecode.com
Tue Oct 27 04:53:48 EDT 2015


On 2015-10-25 00:05, Geoff Canyon wrote:
> On Sat, Oct 24, 2015 at 5:42 PM, Monte Goulding 
> <monte at sweattechnologies.com
>> wrote:
...
>> repeat for each line tLine in tText with counter tCounter
>> repeat for 10 with counter tCounter
>> repeat with tIndex = 1 to 10 step 2 with counter tCounter
>> repeat while condition with counter tCounter
>> repeat forever with counter tCounter
...
>> 
> 
> The beauty of open language (in my dreams, perhaps not the spec) would 
> be
> that:
> 
> 1. No one would have to dig into the engine to implement something like
> this.

That is precisely the point.

> 2. You could release your "counter" version, I could release my "index"
> version, and the community would decide which they prefer and go with 
> that.
> (or both).

Since the two syntaxes being proposed don't appear to conflict in any 
way, people would be free to use either as they see fit.

Even if they did conflict, they would be able to choose on a per-script 
basis, or even on a per-line basis by using a single disambiguation 
token.

> 3. And neither 1 nor 2 precludes something like this achieving critical
> mass such that the engine maintainers decide to put it in the engine
> directly.

It wouldn't ever need to get 'put in the engine' - Open Language will 
allow a degree of modularity which cannot currently be achieved. It is 
the last piece of the puzzle to make LiveCode truly extensible. Indeed, 
what the 'engine' eventually becomes under this plan is just the glue 
which does all the heavy-lifting to unify all the language-defining 
modules together which an application uses.

Now, of course, in such a scenario there would be a need for the idea of 
'Standard LiveCode' - which is essentially what 'elevating to the 
engine' would become.

Warmest Regards,

Mark.

-- 
Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/
LiveCode: Everyone can create apps




More information about the use-livecode mailing list