What is "Open Language"?
Mark Waddingham
mark at livecode.com
Tue Oct 27 14:35:45 EDT 2015
On 2015-10-27 18:23, Richard Gaskin wrote:
> One thing most of us have in common here is that we need to ship
> applications. Very few of us (zero?) are responsible for drafting
> BNFs.
Indeed - but then perhaps that's the difference between people using a
programming language and those responsible for maintaining and evolving
it.
> In OOP we could make snapshots a class, so the values specifying them
> could be expressed as name-value pairs through instance variables -
> but who wants to use a language where you need to instantiate a math
> class just to add two numbers? :) OOP is fine where OOP is fine, but
> OOP isn't xTalk.
Well, I think you misrepresent how OOP languages work there - as they
don't tend to require you to instantiate a 'math' class just to add two
numbers. (Although some do take 'purity' to an almost unusable extent).
In any case, OOP isn't really a language, it is just a set of patterns
and ideas which are one good way to structure languages and think about
software. (And OOP principals are definitely there in xTalks they are
just not generally visible day-to-day).
> In LC, we see increasing use of arrays for name-value pairs (e.g.
> clipboardData, etc.), and if it were important for someone to simplify
> some aspects of making snapshots they could easily craft a handler
> that takes an array to do that in just a couple minutes.
Indeed - name-value pairs are used for 'the clipboardData' and other
devices... Although I'd might suggest only because there is a lack of
ability to be able to code the syntax that might be more appropriate:
e.g. set the styledText of the clipboard to ...
> So maybe I'm too easy to please, but I think the current syntax for
> snapshots is OK.
It works - but a lot of people get tripped up by it all the time
(costing individuals time figuring out why things don't work, others on
the lists when they respond to questions on the lists about why their
command doesn't work how they expect, and bug reports to us when they
think there's an issue). Now, whilst perhaps a better dictionary entry
might help a bit... This situation does suggest to me the syntax could
be better and more accessible.
> Back in the day Brian Molyneaux of Heizer Software noted the same
> thing about xTalks. Just too loosey-goosey for that sort of thing.
Well I'm sorry to say that he was wrong as far as I'm concerned.
Indeed, thinking that xTalks have no place for formality might be
perhaps at least (a small) part of the reason why most of them have
disappeared?
> Fortunately, my job is to make software, not BNFs, and LiveCode lets me
> do that.
My job is to make software too - software that allows others to make
software.
Aspects like rigorously definable semantics and rigorous specification
of syntax are things that help me do that. Just like having the features
you need working in the way you need them to help you to do that.
If life were simple, it probably wouldn't be as much fun :)
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