You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
AREXX<br />
UÄdvoÄzloÄk mindenkit a GURU uÁj sorozataÁban, amelyben az AREXX programnyelvet vesszuÄk nagyÉÁtoÁ<br />
alaÁ. EloÁszoÄr talaÁn neÁzzuÄk meg mi is az az AREXX? Annyit mindenkeÁppen tudni kell, hogy nem X. A<br />
Rex francia kiraÁlyroÁl van szoÁ. Azoknak sincs igazuk akik azt mondjaÁk, minek meÁg egy programnyelv<br />
a Pascal, C, Assembly stb. melleÁ. Az AREXX nem a szokvaÁnyos programozaÁsra hasznaÁlhatoÁ, (baÁr<br />
korlaÁtozottan megoldhatoÁk vele olyan feladatok is), hanem kuÄlsoÁ, uÁn. vendeÁglaÁtoÁ programok vezeÁrleÁseÁt<br />
lehet aÁltala megoldani. Ez kisseÁ zavaros, de roÄvidesen tisztaÁzzuk.<br />
Hogy koÄnnyebben eÁrtse mindenki, neÁzzuÄnk<br />
egy peÁldaÁt. KeÁszÉÁtetteÁl megbÉÁzaÁsra<br />
egy 24 bites ray-traced animaÁcioÁt, amit<br />
szeretneÁl sajaÁt, 24 bites kaÁrtyaÁt neÁlkuÄloÄzoÁ<br />
geÁpeden is megjelenÉÁthetoÁveÁ tenni. Vagy<br />
uÁjra szaÁmoltatod a keÁpeket HAM-ben,<br />
ami sok idoÁ, vagy egyenkeÁnt aÁtkonvertaÁlod<br />
oÁket, ami nem feheÁr embernek valoÁ<br />
munka. Egyikre sincs azonban szuÄkseÁg,<br />
ha ismered az AREXX-et. IÁrhatsz egy<br />
olyan programot, amit veÁgrehajtatva vezeÁrli<br />
a paÁrhuzamosan futoÁ ADpro nevuÁ<br />
keÁpkonverter programot, eÁs minimaÁlis<br />
munkaÁval aÁtalakÉÁthatod a keÁpeidet HAMbe.<br />
Ez csak egy, a sokfeÁle alkalmazaÁsi lehetoÁseÁg<br />
koÄzuÄl. Kezded maÁr laÁtni milyen<br />
hasznos dologgal aÁllsz szemben?<br />
Ebben a sorozatban terveim szerint eloÁszoÄr<br />
megismerkeduÄnk a nyelv alapjaival,<br />
elemeivel, aÁttekintjuÄk az utasÉÁtaÁsait (mind<br />
a 34-et), majd a leggyakrabban hasznaÁlt,<br />
AREXX kompatibilis felhasznaÁloÁi programok<br />
AREXX parancsait ismertetem.<br />
EzuÁton keÁrneÁk mindekit, akinek valamilyen<br />
AREXX-es programroÁl boÁvebb leÉÁraÁs<br />
van birtokaÁban, juttassa el hozzaÁm, hogy<br />
koÄzkinccseÁ tehessem. Mivel a hely korlaÁtozott<br />
a papÉÁr GURU-ban, a szaÁmÉÁtoÁgeÁpet<br />
eloÁszoÄr laÁtoÁk joÁ ha eloÁtanulmaÁnyokat<br />
folytatnak, mert minden reÁszletre itt nem<br />
tudunk kiteÁrni. Ennek elleneÁre, ha valami<br />
nem vilaÁgos, keÁrdezzetek nyugodtan, eÁs<br />
Bear fuÄleÁt is raÁghatjaÁtok, mert ha megjelenik<br />
a lemez GURU is, ott lesz hely a<br />
reÁszletes leÉÁraÁsra.<br />
Ennyi bevezetoÁ utaÁn neÁzzuÄnk bele az<br />
AREXX titkaiba. Az AREXX a koÄvetkezoÁ<br />
elemekboÁl aÁll:<br />
- rexxsyslib.library<br />
- rexxsupport.library<br />
- mathieeedoubbas.library (nem reÁsze az<br />
AREXX-nek, de szuÄkseÁges)<br />
- rexxmast (AREXX interpreter, amely rezidens,<br />
egyszer kell elindÉÁtani)<br />
- neÁhaÁny AREXX segeÁdprogram, amelyek<br />
a REXX alkoÄnyvtaÁrban vannak<br />
A REXX koÄnyvtaÁr kituÄntetett jelentoÁseÁggel<br />
bÉÁr, az interpreter aÁltalaÁban itt keresi a<br />
programokat. AjaÁnlatos ezt az Assign<br />
REXX: sys:REXX utasÉÁtaÁssal logikai egyseÁggeÁ<br />
tenni. Ennek meÁg az is eloÁnye,<br />
hogy ilyenkor nem kell megadni az<br />
AREXX scriptek szabvaÁnyos .rexx kiterjeszteÁseÁt,<br />
azt az interpreter automatikusan<br />
hozzaÁilleszti. Ha suÁruÁn hasznaÁlod az<br />
AREXX-et, a kijeloÄleÁst a startup-sequence-ben<br />
ceÁlszeruÁ elveÁgezni. Az AREXX<br />
program futtataÁsaÁhoz el kell indÉÁtani egy<br />
rezidens interpretert, a Rexxmastert. Ezt<br />
megteheted workbench-boÁl, vagy CLI-boÁl<br />
egyaraÁnt. Vannak olyan felhasznaÁloÁi<br />
programok, amelyek keÁpesek oÄnmaguk is<br />
elindÉÁtani az interpretert.<br />
Mivel ÉÁrd meg az AREXX scriptet? Az<br />
AREXX-nek nincs sajaÁt editora, script ÉÁraÁsaÁhoz<br />
baÁrmilyen szoÄvegszerkesztoÁt hasznaÁlhatsz,<br />
amely tud ASCII formaÁtumban<br />
kimenteni, az interpreter baÁrmilyen ASCII<br />
faÁjlt elfogad forraÁskeÁnt.<br />
Milyen nevet adj a programjaidnak? Az<br />
AREXX programok elnevezeÁseÁre nincs<br />
kuÄloÄnleges megkoÄteÁs, de ajaÁnlatos oÁket<br />
ellaÁtni a szabvaÁnyos .rexx kiterjeszteÁssel,<br />
hogy keÁsoÁbb is felismerd mit takar a neÁv.<br />
A programokat ceÁlszeruÄ a REXX: tartalomjegyzeÁkbe<br />
elmenteni.<br />
Programot indÉÁtani vagy az RX utasÉÁtaÁssal,<br />
amelynek szintaxisa "RX uÁt/program.rexx",<br />
vagy ha a program a REXX:-<br />
ben van "RX program", vagy a vendeÁglaÁtoÁ<br />
program megfeleloÁparancsaÁval lehet.<br />
A nyelv szintaktikaÁja. Az AREXX<br />
programok mint maÁr emlÉÁtettem, ASCII<br />
karakterekboÁl aÁllnak. Megengedett a kiboÁvÉÁtett<br />
karakterkeÁszlet hasznaÁlata is. Az interpreter<br />
a futtataÁs megkezdeÁse eloÁtt az<br />
utasÉÁtaÁsokat, vaÁltozoÁkat aÁtalakÉÁtja nagybetuÁs<br />
formaÁtumba, tehaÁt a 'say' eÁs a<br />
'SAY' utasÉÁtaÁsok azonosak. Az ideÁzoÁjelen<br />
beluÄli sztringeket ez nem eÁrinti. A programok<br />
legkisebb nyelvi egyseÁgeit az<br />
AREXX-ben tokeneknek nevezik. Token<br />
lehet egy oÄnaÁlloÁ karaktersorozat, mint peÁldaÁul<br />
egy szimboÁlum, vagy csak egyetlen<br />
karakter, mint az operaÁtorok toÄbbseÁge. A<br />
tokeneket a koÄvetkezoÁ kategoÁriaÁkba soroljuk:<br />
MegjegyzeÁsek. Ezek a /* karaktersorozattal<br />
kezdoÁdnek eÁs a */ jelekkel eÁrnek veÁget.<br />
A megjegyzeÁsek baÁrmilyen karaktereket<br />
tartalmazhatnak, futtataÁskor, az<br />
eloÄfeldolgozaÁs alatt eltaÁvolÉÁtoÁdnak a forraÁsboÁl.<br />
A megjegyzeÁsbe beaÁgyazhatoÁk<br />
uÁjabb megjegyzeÁsek, de ekkor mindegyiket<br />
le kell zaÁrni. A program elsoÁsoraÁnak<br />
mindÉÁg megjegyzeÁsnek kell lenni!<br />
SzimboÁlumok. Mindazok a karaktersorozatok,<br />
amelyek a-z, A-Z, 0-9 eÁs .!?$ jelekboÁl<br />
aÁllnak, az AREXX-ben szimboÁlumoknak<br />
neveztetnek. A szimboÁlumokat aÁtalakÉÁtja<br />
az interpreter, a veÁgrehajtaÁs megkezdeÁse<br />
eloÁtt nagybetuÄs formaÁba. A<br />
szimboÁlumokat neÁgy csoportra bonthatjuk:<br />
Fix szimboÁlumok, amelyek szaÁmmal vagy<br />
tizedes ponttal kezdoÁdnek.<br />
EgyszeruÁ szimboÁlumok, amelyek nem<br />
szaÁmmal kezdoÁdnek eÁs nem tartalmaznak<br />
tizedes pontot.<br />
Stem szimboÁlumok (magyar megfeleloÁ<br />
kerestetik), amelyek egyszeruÄ szimboÁlumok,<br />
a veÁguÄkoÄn tizedes ponttal.<br />
OÄsszetett szimboÁlumok, amelyek egy,<br />
vagy toÄbb tizedes pontot tartalmaznak a<br />
neÁvben.<br />
A Stem eÁs az oÄsszetett szimboÁlumok az<br />
AREXX uÁjÉÁtaÁsai, a toÄmboÄk eÁs listaÁk feleÁpÉÁteÁseÁben<br />
jutnak szerephez. A szimboÁlumoknak<br />
eÁrteÁkuÄk van. A fix szimboÁlumok<br />
eÁrteÁke mindÉÁg a szimboÁlum oÄnmaga. Az<br />
egyszeruÁ, Stem eÁs oÄsszetett szimboÁlumok<br />
a vaÁltozoÁk, amelyek a program futaÁsa<br />
soraÁn eÁrteÁkeket szerezhetnek. AmÉÁg<br />
egy vaÁltozoÁhoz nem rendelteÁl eÁrteÁket, addig<br />
eÁrteÁke oÄnmaga.<br />
A koÄvetkezoÁhoÁnapban innen folytatjuk.<br />
Arany SaÁndor alias Aurum<br />
58 GURU 92/3