Programmeren in REXX/Voor je begint

   Programmeren    in REXX

In dit boek gaan er we er dus van uit dat Object REXX (OORexx) op een Windows systeem is geïnstalleerd.

Installatie bewerken

We gaan niet in op alle details van de installatie want deze kan licht verschillen bij elke nieuwe release. Meestal beperkt het zich toch tot het uitvoeren van een installatieprogramma. De installatie is zeer snel.

Tijdens installatie wordt ook de Windows omgevingsvariabele path aangevuld met de mappen waar OORexx is geïnstalleerd. Een goede werkwijze is nu om alle nieuwe programma's samen te brengen in eenzelfde map, bijvoorbeeld d:\RexxProgrammas\. Het kan dan ook nuttig zijn om deze map toe te voegen aan de omgevingsvariabele path om zodoende programma's eenvoudiger te kunnen oproepen.

Om dit te bewerkstelligen volgt men de ketting Configuratiescherm/Systeem/Geavanceerde Systeeminstellingen/Omgevingsvariabelen en zoekt men in de lijst naar path. Deze kan men dan aanpassen door onze programmamap er achteraan toe te voegen (gescheiden van het voorgaande met een punt-komma).

Opdrachtprompt en RexxTry bewerken

Als we geen gebruik maken van Object Orientatie kunnen we met REXX ook geen grafische toepassingen maken en werken we via de opdrachtprompt (CMD.EXE). We zullen bij het einde van het boek toch een hoofdstuk weiden aan manieren om eenvoudige grafische toepassingen te maken met elementen van de OORexx versie.

Handig is wel om de eigenschappen van de opdrachtprompt zó aan te passen dat de schermbuffergrootte bijvoorbeeld 132 karakters breed en 200 lijnen hoog wordt. De venstergrootte laat men dan op bijvoorbeeld 132x40. Op die manier kan men terugbladeren om vroegere uitvoerlijnen te bekijken. Misschien moet daarbij ook geëxperimenteerd worden met de karaktergrootte.

Leg deze eigenschappen eens en voor altijd vast door de eigenschappen van de opdrachtprompt in het Start Menu aan te passen (rechts klikken). Desgevallend ook een snelkoppeling voorzien op het bureaublad.

Tijdens de installatie is tevens een handig REXX programmaatje geïnstalleerd, namelijk RexxTry.rex. Dat programma laat toe eenvoudige REXX opdrachten uit te testen. Hier zien we een voorbeeldje (de vette woorden zijn door de gebruiker ingegeven).

C:\Users\Dmitri>RexxTry
REXX-ooRexx_3.1(MT) 6.01 20 Apr 2007
  rexxtry.rex lets you interactively try REXX statements.
    Each string is executed when you hit Enter.
    Enter 'call tell' for a description of the features.
  Go on - try a few...            Enter 'exit' to end.
say "Hello"
Hello
  ........................................... rexxtry.rex on WindowsNT
a=5
  ........................................... rexxtry.rex on WindowsNT
say a**2
25
  ........................................... rexxtry.rex on WindowsNT
exit
C:\Users\Dmitri>

Een programma afbreken bewerken

In het geval een programma in een loop terechtkomt, of welke andere reden dan ook, kan men het afbreken door de toetscombinatie Ctrl-Break of Ctrl-C te gebruiken. Soms is een tweede maal nodig, bijvoorbeeld als het programma op een antwoord wacht, dan gaat de eerste maal verloren. Ctrl-C werkt doorgaans beter.

Eigenaardigheid of fout ? bewerken

REXX programma's zal men de extensie .rex geven. Dan kan men ze onmiddellijk oproepen.

C:\Users\Dmitri>MijnRexxProgrammaatje

We hebben echter opgemerkt dat met de huidige versie op deze manier geen parameters worden meegegeven. We moeten daarvoor het programma als volgt oproepen:

C:\Users\Dmitri>rexx MijnRexxProgrammaatje parameter1 parameter2 ...

Welke Editor gebruiken ? bewerken

De eerste keuze is Notepad van Windows. Maar deze editor is ietwat archaïsch geworden. Een goed en gratis alternatief is daarom Notepad++. Deze editor heeft geen ondersteuning voor de REXX syntaxis, maar men kan er een ontwerpen via "Beeld/Syntaxis ontwerpen". De syntaxisondersteuning voor TCL komt anders al dicht in de buurt.

De betalende editor UltraEdit heeft REXX syntaxisondersteuning.

Programmeren in REXX Fundamenten →
Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.