Scriptol - Scripting, XML et Web 2.0

Le langage Scriptol a été conçu par Denis Sureau.
 Sa définition a été faite selon 7 règles: simplicité, sécurité, cnoformance aux standards, objectivité, orientation multiples, portabilité, apprentissage facile.
 Le code scriptol est interprété ou compilé en code PHP ou C++, un programme scriptol peut compilé en exécutable binaire.
 Les structures de contrôle sont différentes et plus puissantes que dans les langages classiques, permettant notamment le pattern-matching et les automates. La sécurité est un des objectifs du langage, dans ce but notamment les variables sont typées.
 Scriptol est un langage universel permettant de réaliser des pages web dynamique, des scripts, du prototypages et des applications à interface utilisateur graphiques. Il intègre le XML dans le source ou à partir d'un fichier.

Caractéristiques

Le langage

La syntaxe

Les instructions sont terminées par la fin de ligne.
Termineurs proches de XML: /if, /for, etc...
Chaque opérateur n'a qu'une seule fonction, contrairement au C qui les réutilise différemment selon le contexte.
Les types sont ceux de la vie réelle: number, text, real, ...
Les assignements composés ont la forme:

          x + 1          // signifie: x = x + 1
  

Scructures de données

Scalaires, xml, class.

Structures de contrôle

If composite

  if a
     = 10: print "égal"
     < 10: print "moins"
     else
        print "plus"
  /if 

While

La structure while a plusieurs formes, et le termineur let protège contre les boucles infinies.
while x < 10
  print x  
let x + 1 
  

Définition de fonction

L'en-tête est similaire à celle du C mais avec plusieurs types retournés évenutellement. Le termineur est l'instruction return, le mot-clé seul si la fonction ne retourne aucune valeur.

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

Pourquoi l'utiliser?

- Pour programmer des pages web: Scriptol peut être compilé en PHP, donc il est portable. La compilation détecte les erreurs avant de lancer le programme.
- Pour faire des scripts: C'est un langage clair et puissant, très intuitif.
- Pour le prototypage: tester des sources avec l'interpréteur et produire du code C++ intégrable dans un plus large projet.
- Pour programmer vite et protéger le source: un programme est débogué avec l'interpréteur, puis une version exécutable binaire est distribuée.
- Il peut s'utiliser conjointement avec des outils de développemet comme C++ Builder ou Visual Studio.
- C'est aussi une interface aux principaux parseurs XML.

Sites

Exemples de code

Hello world!

print "Hello world!"

Combiner et afficher.

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

Imbriquer du code dans une page HTML.

<?sol
   print "code imbriqué en page html"
?> 
Langages de programmation AspectJ - Basic - C - C++ - C# - Eiffel - Go - Java - JavaScript - JavaFX - Pascal - PHP - Python - Rexx - Ruby - Scala - Scriptol - Tcl - HTML - XML - XAML - XUL - SQL