On 2015-10-25 00:19, Monte Goulding wrote:
On 25 Oct 2015, at 9:05 am, Geoff Canyon <gcan...@gmail.com> wrote:

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.
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).
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.

OK, well we can let Mark Waddingham comment on whether I’m right in
that control structures are unlikely targets for open language or not.
It seems quite unlikely to me as it’s significantly more complicated
than commands. I’m not saying it’s not possible the ROI would be
terrible. As in almost 0 return for a reasonably heavy investment…

I can't speak for Mark, but from my point of view, Open Language without custom control structures would be woefully incomplete.

For example, "with" blocks would be super awesome:

    with the defaultFolder as "/home/peter/foo/bar"
        -- Do things that might cause an error
    end with

Syntax is purely demonstrative, but the idea is that no matter what happens inside the block (return, error, etc.) the defaultFolder would get restored to its original value. Far easier to get right than "try ... catch" for cleanup purposes.

"Match" blocks would be really nice to have too. Also, I can think of lots of uses for custom control structures in making test suites easier to write. And about 10 other really neat applications.

So yes, custom control structures are a really important part of Open Language from my perspective. You could make it far easier to write correct code.

                                       Peter

--
Dr Peter Brett <peter.br...@livecode.com>
LiveCode Open Source Team

LiveCode on reddit! <https://reddit.com/r/livecode>

_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to