Scriptol, language for Web 2.0 scripts

The Scriptol language created in 2001 by Denis Sureau was defined according to seven rules: simplicity, security, conformance to standards, objectivity, multiple orientations, portability, easy teaching.
The scriptol code is either interpreted or compiled in PHP or C++, a scriptol program may be built as a binary executable.
Control structures are different and more powerful than in classical languages, allowing pattern-matching and automata (DFA). Security is one main goal of the language and variables are typed.
It is an universal language for making dynamic web pages, scripting, prototyping or GUI based applications. It integrates XML either in the source or from a loaded file.
Several innovations in Scriptol have been adopted by other languages ​​created since 2001.

Evolution of programming languages

You may use Scriptol:

Features of Scriptol

Syntax:

Statements are terminated by end of line.
Xml-like terminators: /if, /while, etc...
Each operator has only one usage, not several acccording the context as in C.
Scalar types are those of the real life: text, number, real, etc...
Compound assignments have the form:

x + 1 // means for: x = x + 1

Data structures:

Scalars, xml, class.

Control structures:

Composite if:

You can mix different types of comparisons and compare different types of data from one test to another.

if a
     = 10: print "equal"
     < 10: print "less"
     else
        print "more"
/if 

While:

The while structure has several form and the let terminator protects againt infinite loops.

while x < 10

  print x

/while    // infinite loop
while x < 10
   print x  
let x + 1 

Function definition:

The header is similar to that of C but several types may be returned together. The terminator is the return statement, the keyword only if the function returns nothing.

int, text funcname(... arguments...)
    ...statements...
return a, b

Simple print command:

The print command sends a newline. The echo command does not.

print "Hello world!"

Scan structure:

Two lists are added and the contents of a sub-array parsed. Scan can parse multiple arrays at once.

listdemo = (1,2,3) + (4,5)
subdemo = listdemo[1..3]
scan subdemo
     print subdemo[]
/scan 
>>> should print: 2 3 4

Embedding code into HTML page:

The scriptol code is converted to PHP by the solp compiler.

<?sol
     print "code embedded inside html";
?>

More