| |
| |
My program doesn't work
|
I have a complete configuration with the Apache server, but my
scriptol php program displays an error. Here is the code:
<sol
include("button.php");
?> |
When you are used with legacy programming
language you may encounter such problems. In fact, include is a
keyword in Scriptol, you should write either:
require("button.php");
or include_once("button.php"). |
| |
|
Can I use OpenGL and Glue with Scriptol
|
| Not tested yet with the interpreter, but
this will be possible when finished. |
| |
|
Redeclaration: every OO language
should use local namespace
|
If you prevent users from reusing short names for block level
small-scope usage variables, you run the risk of creating a slew
of identifiers. One single omission of an initialization, followed
by a use of a variable declared in an outer scope, in an inner scope
results in violation of the block sentinel.
for(int i=0;i<5;i++) { }
int i;
while(i < 5) {
// do something here
}
Agreed this is a contrived example, however, the point is clear.
Ordinarily you could count on "i" being uninitialized
and an error or warning be reported. If the declaration of "i"
remained within the for block. If it did not, as it used to be in
the older C++ standard, this led to side-effects of the loop counter
being present in later code, which did not generated a "non-initialized"
error/warning. Every OO language implement block-level local namespaces.
Redeclarations are not CONFUSING as much as they are CLEARLY indicating
that they user has wanted to use a name that exists outside without
affecting it. |
|
Here are two examples to show what Scriptol
allows or not:
Example 1 (NOT ALLOWED)
int i
scan a
int i = 5 // bad
print i * a[]
/scan
Example 2 (ALLOWED)
int i
scan a
int j = 5
print j * a[]
/scan
scan b
int j = 50
print j * b[]
/scan
Scriptol doesn"t allow reusing an identifier for a
different thing in an inner block. It allows to reuse a name in
successive scopes. This suppresses a source of confusing and also
is required for future control structures in the language (actions).
Take note also that variables are always initialized (in
the generated target code) in Scriptol.
|
| |
What runtime files are required to distribute
my application?
|
What I think it's like this: very good language, it can build
.exe, it can provide GUI features... so I can write some pretty
cool applications with it (not related to websites).
But then, how I'll distribute my application? What runtime files
are required?
For my kind of work is not acceptable to say to user "You need to
install and configure PHP first", so this is why I'm interested
to use GTK (or .NET in the future). |
No runtime is required but the gcms.dll library. I'll suppress
it in the future.
It will be possible also to extend the language with other libraries. |
| |
Using Visual Studio
|
Can Scriptol work with Visual Studio 6.0 and Visual Studio.net
?
|
| Scriptol can be integrated into the IDE
for compiling Scriptol programs as with C++ Builder (version pro). |
| |
When will be the Interpreter finished?
|
I expect the first release condidate in September 2006
January 2007. |
| |
Can I call the constructor of the
base class?
|
| I inherit the class Car of the class Vehicle, for
example. Can I call the constructor of Vehicle, from the constructor
of Car? I do that in Java. |
Java has the "super"
keyword to call the constructor of a class from the constructor
of an inherited class.
There is no equivalent in Scriptol. If you call the constructor
of the base class, this create a new instance of the base class.
But you can assign the attributes of the base class from the constructor
of the inherited class. |
| |
Will the interpreter use XUL?
|
| XUL est a graphical user interface using XML to draw the screen.
It will be used by the interpreter. I don't know for now if il will
be possible to integrate the Scriptol code into the code of the
interface, to replace XPCom, but this may be faisable. |
| |
|
|
|
|