Préface - Pourquoi Scriptol

 Scriptol signifie "Scriptwriter Oriented Language", donc langage orienté- scénariste.
 Le langage de programmation Scriptol dispose actuellement de deux compilateurs.
- Solp permet d'interpréter programme scriptol avec l'interpréteur PHP.
- Solc compile des sources scriptol en C++ ou construit directement un exécutable pour Windows ou pour Unix.

Pourquoi Scriptol

 C'est parceque je pensais qu'en l'an 2001, les programmeurs ne devraient pas utiliser des langages définis dans les années 1970, pour des microprocesseurs à un megahertz, que j'ai décidé de créer Scriptol, dont l'implémentation est publiquement disponible depuis fin 2001.
 Dans ces anciens langages, conçu pour réduire le temps de compilation, le look-ahead ne dépasse par trois tokens, ce qui signifie qu'à chaque pas dans la lecture du source d'un programme par le compilateur, l'instruction suivante doit est identifiée dès les trois premiers symboles...

 Les langages créés depuis gardent la même syntaxe pour ne pas changer les
habitudes des programmeurs!
 Scriptol peut dépasser les 20 niveaux de look-ahead et pourtant la compilation est instantanée. Il distingue les instructions des expressions pour être plus facile à lire et pouvoir développer des structures de contrôle plus évoluées.


Syntaxe ancienne et simplicité moderne

Ceci est un programme Algol .
Algol a été conçu en 1968.
// afficher le text Hello World
BEGIN
 FILE F (KIND=REMOTE);
 EBCDIC ARRAY E [0:11];
 REPLACE E BY "HELLO WORLD!";
 WHILE TRUE DO
 BEGIN
  WRITE (F, *, E);
 END;
END.
Ceci est un programme écrit en delphi "moderne".
cont str = 'Hello World!';
var i:int; len:int;
begin
  len:= length(str);
  for i:=0 to len do
    begin
       write(str[i]);
    end;
end;
Ceci est le même programme réécrit en Scriptol
constant text str = 'Hello World!'
for text t in str print t


Conception de Scriptol

La conception du langage Scriptol a été réalisée avec la plus rigoureuse méthode jamais appliquée à un langage pour ordinateur. Sept règles ont été définies pour guider la définition (voir la page "seven"), et rien n'a été ajouté au langage qui ne satisfasse toutes les règles.
J'ai décidé comme première règle que le langage doit être simple et naturel et la seconde est la suppression de toutes les sources d'erreur pour le programmeur.
La troisième est la règle de standardisation: ne jamais utiliser une syntaxe différente si une syntaxe communément utilisée par les langages peut convenir.

Scriptol rejoint la simplicité des langages de script qui permettent de transposer une idée directement sous forme de programme. Il peut être interprété comme un langage de script, mais il peut aussi produire des exécutables à distribuer et qui fonctionnent sans l'aide d'un interpréteur.
Au contraire des langages de scripts, il utilise des variables typées, pour éviter que l'on ne perde en déboguant un programme, le temps gagné en l'écrivant.

Jusqu'ici avec un nouveau langage on devait repartir à zéro et réécrire toutes les librairies de fonctions. Cet inconvénient est évité en Scriptol qui utilise C++ comme langage intermédiaire ce qui fait que l'on peut lier à un programme Scriptol toutes les librairies C++ existantes...

En utilisant également Php comme code intermédiaire, Scriptol répond au besoin d'un langage Internet qui soit facile à apprendre et permette un contrôle d'erreur complet au moment de la compilation et non durant l'exécution.
Scriptol peut être imbriqué à l'intérieur d'une page html et elle est convertie en la même page avec du code Php, prête pour le Net qui fonctionne sous Windows, Unix ou tout système compatible avec Php.


Un mot sur la simplicité

Scriptol reprend la structure xml ou html dans toutes les structures du langage.
Les langages C, Java, Php utilisent les symboles { } provenant du C conçu en 1972, symboles qui étaient adaptés aux anciens éditeurs de texte.
Ce symbolisme est obsolète.

Le programmeur se sent généralement obligé de rajouter un commentaire pour clarifier le code:
while(x < 10)
{
   ...
} // fin de la boucle while

Il est beaucoup plus simple d'écrire, selon le principe de xml:
while x < 10
  ...
/while

  La coloration syntaxique des éditeurs modernes, notamment de celui qui est fourni sur le CD, permet de bien visualiser le début et la fin de la structure while.


Conclusion

 Scriptol dispose de capacités étendues allant bien au-dela de ce qu'aucun langage de script ou d'application ait jamais implémenté, ce tutoriel étendu vous permettra de toutes les découvrir.