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