And while studying both Xojo and LiveCode, sometimes I would get confused between similar wordings between Xojo and LiveCode such as "DownTo" and "down to" when using the decrement For loop. So that may take some getting used to vs a more terse language. I would forget whether I should write "into" or "in" a field. Sometimes I find the LiveCode language to be a bit verbose at times.
![xojo for loop xojo for loop](http://gluonfield.com/spacelike/sites/default/files/inline-images/ScriptMenu.png)
And there is no need to declare an array name, size or type of data ahead of time. Their version of an array is probably the most flexible I've ever seen, since it identifies array items by a key which can be a number or string. But it's interesting that the creator of Liberty Basic used SmallTalk to create his application/compiler. Liberty Basic is not a RAD tool and it does not have the ability to create cross-platform applications, so it's not a consideration for my needs. I liked each of the programs for different reasons. I worked through all the exercises in the book - C++, Liberty Basic, Revolution(Live Code) and Real Basic (Xojo). Sat 8:25 how did your experience compare with LiveCode? You know Revolution evolved into LiveCode, right? Did you try the Revolution examples from the book? This is a lot more work of course but we feel it creates the best end result.
Xojo for loop code#
We do this to provide the best overall user experience possible via the speed of native code and the use of native controls. That means native machine code, native controls, etc. Our goal with Xojo is for it to be as native as possible on all platforms. Your Xojo source code is never part of the compiled app you deliver because we compile to machine code or in the case of Android, intermediate byte code.
![xojo for loop xojo for loop](https://scispec.ca/images/CSharpXojoScreenGrab.png)
That machine code is cached so it doesn’t have to do this every time.
Xojo for loop android#
It is that byte code that is then delivered to the device where Android then compiles it to machine code optimized for the device.
Xojo for loop for android#
The code you write in Xojo for Android is also converted to Kotlin (for the same reason) and then compiled into byte code. We are writing that framework in Kotlin because that’s the recommended language to use for Android. The one platform we don’t compile all the way down to machine code ourselves is Android. We just use it to compile for all platforms rather than just MacOS/iOS. Side Note 2: Behind the scenes, Xojo uses LLVM, the same optimizing compiler that Apple uses with XCode. That’s compiled by the Xojo compiler when you build. This is not the same as the code you wrote as part of your app. The Xojo code you send to XojoScript is compiled at runtime. It could also be used if you needed to create math calculations or have your user enter them at runtime. This would allow you as a developer to add a scripting language to YOUR app. It is a way to compile Xojo code at runtime. Side note: XojoScript is NOT the code in your app. Xojo has no interpreter nor has it ever had one. The client side of our web framework is JavaScript of course. The underlying Xojo framework is a combination of different languages depending upon what is needed including a fair amount written in Xojo itself and nearly all compiled to native machine code. Xojo compiles your code to machine language for all platforms. I’m here just to answer your question and clear up any confusion.įrom you description of how LiveCode works, yes, Xojo is different. I tried that but a tight calculation loop prevents the refresh to take place.Hi. This does not slow down the execution noticeably but does allow the progress to be displayed. ReadTraceData // reads th(n).NofSamples sample values for next trace appends to trace array ReadTraceHeader // reads the 240 bytes for next trace header and appends to th array LblNowShowing.text = "Processing trace " + Format(num, "#")
Xojo for loop mod#
If num mod 100 = 0 then // keep the progress line above the listbox active now read in the trace headers and their corresponding traces
![xojo for loop xojo for loop](https://codepad.co/img/snippets/RzSnSwVh.png)
The code looks like the following, minus declares but it should give the idea. On the window I have a label field that shows the process however, it is only updated every 100th execution of the loop. In one of my apps a lot of file reading and processing has to take place upon selecting the data file to process.