Peter M. Brigham wrote:
On Jun 21, 2014, at 2:33 AM, Richmond wrote:
put 1 into XX
repeat until XX>7
 do something
   put 1 into ZZ
       repeat until ZZ>7
         do something else
            put 1 into YY
               repeat until YY>7
                   ask "What colour are you socks?"
                      if it contains "purple" then
                          goto %%%
                      end if
                      add 1 to YY
                end repeat
             add 1 to ZZ
         end repeat
      add 1 to XX
end repeat
%%%
I like this. The syntax could be
   go %n -- eg, %4

then the execution would jump to the statement
   %n -- eg, %4

(Which would allow really flexible GOTO equivalents that would be independent 
of script line numbering. I always struggled with the Fortran GOTO statements, 
since I was always having to renumber my lines when I revised my programs.)

Enhancement request, anyone?
At the RevLive conference in Vegas a few yeas back, Robert Cailliau's 
opening keynote covered some of the most adventurous feature requests 
I've ever heard anyone suggest for xTalks.
Among them was the notion of named control structures, in part for 
exactly the reason covered in this thread, the desire to exit a specific 
loop when loops are nested.
I can't recall the specifics of his proposed syntax, but I remember 
being impressed by how natural it seemed.  Maybe it was along the lines of:
  repeat with i = 1 to tSomething named "MySomethingLoop"
      repeat with j = 1 to tSomethingElse named "MyOtherLoop"
        DoSomethingWith i,j
        exit "MySomethingLoop"
      end repeat
  end repeat

With named control structures we'd never need to worry about line numbers.

I'm not sure if that was submitted as a feature request, but IMO it should be. And it would be cool to have just about everything else he proposed go into the DB as well - all of it was valuable, very forward-thinking, reflecting the best of many other languages, all presented in a very xTalk way.
--
 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

_______________________________________________
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