"this me"?

Richard Gaskin ambassador at fourthworld.com
Thu Aug 8 10:01:48 EDT 2013


Timothy Bleiler wrote:

 > This is an interesting discussion. For my 2 cents worth, I'm
 > currently in favor of 'the effective behavior of me' but I'm
 > curious why it's needed.

FWIW I find myself leaning toward "scriptObject" because it's the least 
like anything else in the language, and needing this is a very unusual 
circumstance, as you note.

I think sometimes we risk usability with the "English-like" mandate, 
entertaining strings that may be readable in terms of natural language 
but at the cost of skimmability.

Code is often only read once, at the time it's written.  Beyond that, 
it's far more frequently skimmed, scanning blocks for tokens that help 
us hone in on the source of a problem, or the point where we need to add 
an enhancement.

"scriptObject" stands out visually, and is easy to type.  Extra bonus 
points that this is a relatively rare need so having a truly distinctive 
token doesn't hurt.



English is designed (if we can even use that word for the historical 
accident that is our language) to be used by humans; computers are 
entities too stupid to count past 1.  English is chock full o' 
ambiguities, requiring uniquely human intelligence to parse the context 
to derive the meaning (consider gerunds, for example), and attempting 
that too much risks a lot of processing time and even cognitive load 
(lots of typing, and remembering exactly what form of "English-like" 
phrase is needed), for minimal benefit.

Array syntax is my favorite example here:  clear and concise, arrays 
bear no resemblance to anything in English, while they have a lot in 
common with other, lower-level, computer languages.  I see that as a 
feature, not a bug, because computer languages serve a very different 
set of goals than human languages.

I'm not advocating we take that to the extreme; I've learned my lesson 
about dot notation <g>.  I'm merely suggesting we strive for a balance, 
recognizing up front that any computer language will never be truly 
English-like, and that sometimes we have an opportunity for greater 
usability with both writing and skimming when we aim for what works 
simply over what we might imagine is "English-like".



Having made that plea for simplicity in programming, please allow me to 
complicate this now:  :)


Taking the idea of scriptObject further, for the 
rarer-but-not-unthinkable need to know all of the objects in an object's 
message path, might we consider extending this further to include:

   the effective scriptObjects of <objDescriptor>

...which would return a return-delimited list of all objects in the 
message path of <objDescriptor>?

--
  Richard Gaskin
  Fourth World
  LiveCode training and consulting: http://www.fourthworld.com
  Webzine for LiveCode developers: http://www.LiveCodeJournal.com
  Follow me on Twitter:  http://twitter.com/FourthWorldSys





More information about the use-livecode mailing list