Will OpenXION run on my computer?
I have run OpenXION on Mac OS X 10.6, Ubuntu Linux 10.10, Mint Linux 10, OpenSolaris 2009.5, and Windows 7.
Because it is written in Java, it should run anywhere that Java SE 5 or higher is installed.
What does OpenXION code look like?
See the script samples here and
even more here.
Can I install OpenXION without a bunch of hidden files being copied to my computer?
Absolutely! If you do the local install as described here there is no installation.
All of the files required
to run the complete XION environment are included in the single download folder.
Is OpenXION good as a first programming language?
Absolutely! Because of its English-like syntax, the learning curve will be much shorter with OpenXION.
And yet, you will still learn all of the elements—variables, control structures, loops, etc.—
that are essential components of other languages.
Once you have learned OpenXION, you will have a definite head-start for learning others languages, and
you will have better insight regarding what to look for in a programming language.
What? No GUI, no IDE. Are you serious?
You are correct. There is no IDE or GUI, and yes, we are very serious!
Many of us think that the command line
and any simple text editor are the most productive and trouble-free environments for programming.
I am getting a bunch of Java errors when I try to run OpenXION, what gives?
OpenXION requires Java SE 5 or higher. Check your Java Preferences to insure Java SE 5 or 6 is the default environment.
The documentation has my head spinning. Any help?
I understand that the documentation can seem a little overwhelming, but you will come appreciate its detail.
Here are some tips to help get you get going:
1. Go to the
documentation site
2. Find the center pane in the left part of the window.
3. The areas to focus on are Commands, Control Structures, Operators, and Functions at a Glance.
4. Combine that info with the
Tutorial and Sample Scripts and you should be on your way.
Keep in mind that OpenXION has a lot of synonyms that allow you to say the same thing in a number of different ways, and
the documentation explains each of these. Consider a few of the ways to determine if two numbers are equal:
var1 is var2
var1 = var2
var1 == var2
var1 eq var2
var1 equals var2
var1 is equal to var2
(var1 <=> var2) = 0
not (var1 <> var2)
With var1 and var2 set to the same numeric value, all of the above statements will evaluate to true.
What is the best editor or IDE to use with XION?
BBedit is currently the best choice because there is a
Language Module available to provide syntax highlighting for OpenXION files.
Also, by including a shebang line in your script, BBedit allows you run files directly with the Run menu item. Please note
that BBedit is not free, but it is a very nice programming/text editor.
I have been trying to get TextWrangler to work, because it
is a FREE alternative made by the company that makes BBedit. So far I've only had endless headaches and no good results.
Can I run OpenXION from a USB disk or thumb drive?
Absolutely! Just follow the install instructions here but copy the file to your desired device.
Then adapt the instructions to fit your situation. You can run OpenXION and your script files directly from the USB device.
How do I write a multi-line statement, function, or handler when using XION interactively?
Use a single backslash ( \ ) to continue a line of code onto the following line:
put "now is the time for all good men to come \
to the aid of their parties"
You will note that the usual > prompt will turn to a - indicating your are continuing the statement.
Use a double backslash ( \\ ) for multi-line statements such as needed in functions, handlers, repeat loops, etc.
on doThis\\
put "hello from xion"\\
end doThis
The documentation shows a bunch of dialects and modules, which ones do I use?
By default, they are all available when working in a standard OpenXION installation. They are split out in the documentation
for use by other developers who may want to derive or extend OpenXION.
Essentially, if you choose "All Dialects" and "All Vocabulary", all commands, functions, etc. are available to you,
except for a very few platform specific features (such as AppleScript, which is only on Macs, etc.).
Is there any way to suppress the security warnings for opening files, launching a browser, etc?
Yes. Visit the security page to learn how to change them. OpenXION is a Java application so
it follows Java's security restrictions regarding interactions with the user's file system and resources.
I have a shebang line in my script but it won't execute using ./myScript.xn. Help?
That is technical issue that is caused because xion is itself a script and not true executable, but there is an easy fix.
Use a shebang line like this (see the note below):
#!/usr/bin/java -jar /usr/lib/OpenXION.jar
Note: Replace /usr/bin/java if needed with the appropriate path to Java on your system.
Replace /usr/lib/OpenXION.jar
with the full path to your OpenXION.jar file. Take note that if you have a simple local installation, your OpenXION.jar file
may be named something like OpenXION-1.1.jar.
Are there any limitations in OpenXION for the size of scripts, amount of data in variables or objects, etc.?
Nope. The only limitation is the amount of memory available in your computer.
How do I create a GUI for my app?
I don't know. OpenXION has no built-in GUI capabilities, but it is built to be extended. Unless Rebecca already has this in the
works, we will need to find a volunteer willing to write an external to GTK, Qt, or one of the other GUI frameworks.
I see that my OpenXION directory includes both xion and xe. Which should I use?
You will use xion 99.9% of the time. The xe executable file is only used if you want evaluate
OpenXION expressions from within another application or shell script.
For example, open the Terminal to a standard prompt (do not run xion). For local installation you will need to change to your
OpenXION directory. Try these:
xe 2 + 2
or
xe "hello && world && the date"
You will see that xe executes the expressions and returns the results. Similarly xe can be use from any language
which supports external commands.
What is the history of OpenXION?
You can find a little info on the About page,
but here is more detailed account in Rebecca's own words.