Accueil
Programmation
AspectJ   Basic   C   C++   C#   Eiffel   Java   JavaScript   Pascal   PHP   Python   Rexx   Ruby   Scriptol   Tcl
Balises
HTML  XML   XAML   XUL
Interrogation
SQL
English

 NetRexx - Scripting facile

Le language Rexx a été créé par Mike Colishaw en 1970 pour IBM, et implementé sur l'IBM 370. Il était utilisé comme outil de scripting sur OS/2. NetRexx est une nouvelle version orientée objet, qui a été écrite en 1997, et qui se compile en bytecode Java et tourne sur les machines virtuelles Java (JVM).

Caractéristiques

- Un programme NetRexx peut être soit compilé en bytecode, ou directement interpreté.
- C'est un langage de script oriented objet.
- Utilise les classes Java dans le code.
- Une méthode se termine par une autre méthode ou la fin du fichier. "Return" sert seulement à retourner une valuer.
- Un bloc d'instructions est délimité par "do..end".
- Le construct select case ... when est l'équivalent NetRexx du switch ... case, mais en plus puissant.
- Un construct général loop avec des options, en remplace plusieurs d'autres languages.
- String est le type par défaut pour les variables.
- Le corps d'une fonction est terminé par une ligne blanche, ce qui est peut-être unique dans les langages de programmation.
- Les tableaux de taille fixe et dictionary sont les types composites.

Pourquoi utiliser NetRexx?

- Conçu pour remplacer Java avec une syntaxe plus simple. C'est une alternative à Jython (Java Python), mais en moins puissant.
- Permet de faire des applets, utilise les API de Java.
- Utiliser un même langage pour le scripting et les applications.
- Peu utilisé hors de l'environnement IBM.

Sites

Exemples

Exemples de code
(provenant du manuel
de NetRexx).
-- Une applette. 
         
class HelloApplet extends Applet 
method init 
resize(200, 40)
         
method paint(g=Graphics) 
g.drawString("Hello world!", 50, 30)
                 
-- The applet is loaded with this html code: 
<applet code="HelloApplet.class" width=200 height=40> 
</applet>        
 
 -- Demo: Attente d'une réponse
           
loop label prompt forever 
    reply=ask 
    select
          when reply.datatype('n') then say reply**3
          when reply='Quit' then leave prompt 
          otherwise say 'eh?' 
    end 
end prompt 
         
say 'Done.' 
Accueil