Regina Rexx Manual

JPrayer Clock 0.1.6 is regarded as a comprehensive and efficient tool which permits you to remind the users to pray several Catholic prayers. Eg: Angelus, 3 O'Clock Prayer, some Novena prayers, etc. Angelus will be changed to Regina Caeli during. REXX/ISPF programs on the z/OS Mainframe Operating System. Links are provided to IBM manuals and other documents to assist in learning the commands in more detail. May need to adjust Adobe Reader zoom value to view text. Disclaimer. Does not cover Dialog Test, option 7. Mark Hessling's Home Page - Lots of Rexx and Regina information and files from the gent behind Regina REXX, including a Rexx manual Tips & Tricks, Samples - Material collected by a mainframe REXX programmer and some of it does not apply to OS/2 REXX.

  1. Regina Rexx Manual
  2. Regina Rexx Manual Transmission
  3. Regina Rexx Documentation
  4. Regina Rexx Manual 2019
  5. Regina Rexx Manual Download

Back to the Future With Rexx

by Howard Fosdick

Feb, 4, 2005

Rexx is a scripting language that's been around the block. It's the predominant scripting language for mainframes and was bundled with the ill-fated OS/2 back in the 90's. The first personal computer with a multitasking operating system, the Amiga, relied on Rexx as its primary scripting language. Now the free software movement has breathed new life into this well-proven language. You have a choice of several free versions of Rexx for Windows and Linux PCs.

Rexx's distinguishing characteristic is that it combines ease of use with power. It's as easy to learn as Basic or PHP, but it has the power required to run mainframe data centers. It's good at text manipulation and is particularly well-suited for issuing operating system commands. It's an excellent alternative to the Windows shell language and makes a nice complement to difficult-to-master scripting languages like Perl and Linux's Bourne-Again shell . Its advantages over Microsoft technologies like Visual Basic and VBScript are that it is standardized, non-proprietary, and cross-platform. And it's free. Learn Rexx and you know a language that enables you to script any computer, from handhelds running Windows CE or Palm OS, to PCs and Mac's, right on up to servers and mainframes.

Two versions of Rexx have been specially packaged with Windows-oriented features: Reginald and r4. Both come with dozens of free add-on tools for developing GUIs, controlling your PC's speech and MIDI music interfaces, interfacing with databases, and the like. They also feature easy-to-read documentation that includes many scripting examples. Download Reginald from http://www.borg.com/~jglatt/rexx/rexxuser.htm and r4 from Kilowatt Software at http://www.kilowattsoftware.com/.

The BRexx interpreter not only runs under Windows, it also offers a set of extensions for Windows CE. You can program natively under Windows CE with BRexx and its extended CE functions. You can also run it within a DOS emulator on your handheld. This brings thousands of DOS programs to the handheld with a ready-made scripting language to tie them together. BRexx also runs under Linux, Unix, and the Mac OS. Download BRexx from http://bnv.home.cern.ch/bnv/.

You might also be interested in object-oriented Rexx. Object-oriented Rexx runs all standard Rexx programs while adding the complete gamut of object-oriented features including classes, methods, messages, multiple inheritance, and a huge class library. The Rexx Language Association offers Open Object Rexx for Windows and Linux at their web site, www.rexxla.org or www.oorexx.org. Or pick up an alternative object-oriented interpreter called roo! at http://www.kilowattsoftware.com/. roo! is from Kilowatt Software and uses all the same Windows tools as their r4 interpreter.

A language is only as good as its tools, and there are many dozens of free tools for Rexx. As well as those available from the web sites we've already listed, the Regina Rexx web site has links to a slew of professional-quality tools. Regina is the powerful Rexx interpreter that Microsoft bundled with its Windows Resource Kits for early versions of Windows - until Microsoft decided on a more proprietary direction for Windows scripting with VBScript. Regina's especially well known for its professional documentation and the fact that it runs on all major operating systems. Find Regina and tools at http://regina-rexx.sourceforge.net/.

Both Reginald and r4 come with free tutorials that help you learn Rexx. If you want to go further, pick up a copy of the Rexx: Programmer's Reference. Its 700 pages cover everything you'll want to know, from where to download free Rexx interpreters and tools, to how to use the language and its major interfaces. The book is available from Amazon and Barnes and Noble.

Rexx is a proven language that has a world-wide following and offers a lot to those programming their desktops, laptops, and handhelds. Take a quick look at any of the interpeters in this article and you'll probably find a place for it in your toolbox.

An embedded scripting language

pawn is a simple, typeless, 32-bit extension language with a C-like syntax.A pawn 'source' program is compiled to a binary file for optimal executionspeed. The pawn compiler outputs P-code (or bytecode) that subsequently runson an abstract machine. Execution speed, stability, simplicity and a smallfootprint were essential design criteria for both the language and theabstract machine.

At a glance


Current version4.0.5749 (2020-04-03)
View the history of recent changes.
DownloadsMicrosoft Windows:a self-extracting setup.
Source code:stable source archive orthe latest files on the GitHub project.
LicenseApache License 2.0,plus an exception clause to explicitlypermit static linking of the library to commercial applications.
InstallationMicrosoft Windows: download the self-extractingsetup and run it.
Linux & other: download a source archive asa ZIP file and read theREADME.TXT file after unpacking. (See also the'Getting started' section below).
Supportpawn is hosted on GitHub.The project has an issue tracker.
For support on a commercial basis, pleasecontact us by e-mail.We can build speed-optimized versions of the abstract machine (alsoknown as 'virtual machine' or VM) or JITs, add special languageconstructs, port the product to different microcontrollers,and write native function libraries for particular tasks.
DocumentationAll documentation is in 'Adobe Acrobat'format (PDF). The main two books are the 'Language Guide' and the'Implementer's Guide'. Several extension modules are documentedseparately.
Screen shotspawn is a compiler and an abstract machine. The compiler isa console utility (i.e. you run it in a 'DOS box' or a terminal),and the abstract machine is basically a library. As such, thereisn't really something like a representative a screen shot.I have tried a few anyway... (Click on the pictures for a detailed view.)

Pawn IDE (for Windows and Linux)

Documentation extracted generated by the compiler

Pawn Blocks Designer (visual programming)

Pawn console debugger
ProjectsA list of projects and products that use pawn as a scriptinglanguage is on the pageWhere is pawn used?.

For any information not in this list, please browse through this page. Hopefullyyou will find what you are looking for.

Introduction

An introduction to the pawn language and abstract machine from aprogrammer's perspective was published in the October 1999 issue ofDr. Dobb's Journal —but at the time, thelanguage was called Small. More verbose than the article, and more appropriatefor non-expert programmers, is the manual. The manual contains a brief (tutorial)overview of the language, a language reference, programming notes on the abstractmachine, casual notes about the why and how of many language features, andreference material.

Regina Rexx Manual
  • pawn is a simple, C-like, language.
  • pawn is a robust languagewith a compiler that performs a maximum of static checks, and an abstractmachine with (static) P-code verification and dynamic checks.
  • For porting purposes, pawn is written in ANSI C as much as possible; Big Endianversus Little Endian is handled.
  • To suit internationalization and localization, pawn supports Unicode/UCS-4and UTF-8, as well as codepages. The compiler can convert source code enteredin a particular codepage to Unicode; it also supports source code files inUTF-8 format.
  • pawn is quick (especially with Marc Peter's assembler implementation and/or his 'just-in-time' compiler)
  • pawn is small. It has been fitted on an Atmel ATmega128 microcontroller,Philips LPC2138 and LPC2106 microcontrollers (ARM7TDMI core with 32 KiB RAM),as well as on a Texas Instrument's MSP430F1611 (MSP430 core with 10 KiB RAMand 48 KiB Flash ROM). Using code overlays that are loaded on demand,pawn is able to run large scripts in little memory.
  • Documenting the source code can be done with 'documentation comments'; thepawn compiler extracts those comments, combines them with information itdeduces from the source code and writes an XML file that is immediatelyviewable (and printable) with a web browser.
  • pawn supports states and automatons in the language,including state-local variables.
  • pawn is free and it is published under theApache License 2.0,plus an exception clause to explicitly permitstatic linking of the library to commercial applications.
  • More features... see the separate 'feature page'

Why pawn now that there is Java, Lua, REXX, and countless others? Well,when I needed a language toolkit whose executable code can be embedded inresource files or animation file formats, that had a good interface to nativefunctions, that added little overhead to the main application and could run onplatforms and microcontrollers with (very) little RAM, and that was pretty fast,I could not really find an existing toolkit that fitted my needs. See alsoa list of language features.

Unlike many languages, pawn is not intended to write complete full-scaleapplications in. pawn's purpose is to script the functionalityprovided by an application or by a device. It is in purpose similar toMicrosoft's 'Visual Basic for Applications', only quicker and smaller (andwithout the installation hassle).

pawn has been publicly available since 1998, and it has been steadilyimproving: more error checking, several bugs slashed, new features, and anincrease in performance. There are still regular updates andpatches: to fix bugs, to add features, or simply to enhance the ease-of-use.

A couple of other points are worth mentioning:

  • pawn is provided as is.I offer support and I value feedback, but there is no warranty or implied liability.
  • The pawn toolkit consists of a compiler and an abstract machine (or'virtual machine'). In the default setup, the abstract machine is embedded inan application (for easy interfacing with the application's objects and forbest performance), while the compiler is a separate executable that theapplication launches as an external process.
    When embedding the compiler into an application,please note that the main function of the compiler, pc_compile(), isnot re-entrant. In other words, compile only one script at a time.
Manual

Getting started


The first question is: what do you need? If you are using Microsoft Windows,download the pawn toolkit as a self-extracting setup file;this gives everything that you need to get started:

  • binaries for Win32
  • the editor and development environment (Quincy IDE)
  • full source of all tools/libraries
  • all documentation (Adobe Acrobat format)

Linux users must build the toolkit from the source code. You can get the sourcecode from the GitHub project.The 'README.TXT' file (in the GitHub project) contains a section for buildingbinaries from the source code, by using theCMake makefile generator.You should also download the two documentation files'Language Guide' and 'Implementer's guide'. The 'Implementers Guide' will informyou about the options and configurations that you have in building the binaries,and the 'Language guide' will teach you the pawn language. If you are new toprogramming, the thin guide 'A Gentle Introduction to Programming' aims at helpingyou with the first steps.

Assuming that you have obtained (somehow) an executable version of the pawncompiler and the pawn run-time, you should put it in a directory. However,the pawn compiler also needs to locate 'include files'. On many operatingsystems, the pawn compiler is able to automatically read these header filesfrom the directory 'include' that is below the directory that the compiler isin itself. Thus, if the pawn compiler is in directory 'C:WhatEverPawn', Isuggest that you also create directory 'C:WhatEverPawninclude' and copy the'.inc' files there. If your operating system is not compatible with Win32 orLinux, the pawn compiler may not know how to locate the 'include' directoryand you have to specify it yourself with the '-i' command line option (whenrunning the compiler).

That behind your back, locate one of the example scripts (e.g. 'hello.p') andcompile it with:

This should produce 'hello.amx', which you can then run with:

Many applications that use pawn, run the pawn compiler as a child process;that is, the pawn compiler is often a separate, self-contained program. Theabstract machine, however, is almost never a separate process: typically youwant the abstract machine to be integrated in the application so that scriptscan call into the application. In other words, you might be using 'pawncc' as is,but you won't be using 'pawnrun' as is. This is why pawnrun is kept short and dumb,'pawnrun' is a program that is mostly developed in the pawn manual to show youwhat you should do at a minimum to embed pawn into a program.

Support


Please visit the GitHub projectfor support of pawn. Note, however, that pawn is usually embedded inanother product —an application or a device. In that case, you may need toask support on the site or forum of that product. (See also the pageWhere is pawn used?).

pawn is a free product that is maintained primarily in spare time. We make nomoney from the product, neither from the software, nor from the manual, nor fromsupport. I therefore need to ask you for patience when we are slow in respondingto your questions or. Obviously, if you really need support or a customversion of pawn, you can always hire us.

Downloads

Manual
If you want to find out more, you will need to download at least one orboth manuals. The book 'The Language' contains the syntax of the

Regina Rexx Manual

pawn language,and 'Implementer's Guide' covers the interface functions of the abstractmachine and various reference materials. If you are new to programming, firstread the 'Introduction to Programming' booklet (just 12 pages).You need to be able to view or print Adobe Acrobat ('PDF') files for example viaAcrobat Reader.
Full install, Microsoft Windows
  • The pawn toolkit for Microsoft Windows in a self-extracting setup,version 4.0.5749 (7.7 MiB;2020-04-03).
    This setup puts the tools in the appropriate directories.
    It includes precompiled binaries, the Quincy IDE, all documentation, allsource code, codepage files and the AMX DLLs.
Source code archives
  • You can get the latest (non-stable) source code from theGitHub project for pawn.You can either 'check-out' the source code with git or subversion, or downloadit as ZIP file.
  • Download the archived release 4.0.5749 of thepawn toolkit (669 KiB; 2020-04-03)
  • Download the archived release 3.3.4288 of thepawn toolkit (617 KiB; 2020-04-03)
  • Download the archived release 2.7.3 of theSmall toolkit (418 KiB; 2020-04-03)
    This archived release is the last version of the software when it was still calledSmall. You may want to use it if Small is integrated in your product andyou need full compatibility.
  • Download the archived release 1.8.4 of theSmall toolkit (189 KiB; 2020-04-03)
    This archived release is uploaded on request. Versions 2.0 and later use a differentfile format for the executable P-code, which is incompatible with the previousrelease.
Documentation
The documentation for pawn is in PDF format. You can download individual documentsfrom the GitHub project.Alternatively, all documents are also contained in self-extractingsetup for Microsoft Windows.
Regression test
  • A regression test suite for the pawn compilerand the abstract machine is available(31 KiB; 2020-04-03).
    The test suite requires a 'REXX' interpreter to run. The test script works onMicrosoft Windows systems, and it probably works on other systems with onlyminor modifications (I am using the Regina REXX interpreter,which runs on many platforms).You may want to run your compiler/abstract machine through this if you havemodified anything.

Regina Rexx Manual Transmission

Exception clause to the Apache License version 2.0


As a special exception to the Apache License 2.0(and referring to the definitions in Section 1 of that license), you may link,statically or dynamically, the 'Work' to other modules to produce an executablefile containing portions of the 'Work', and distribute that executable file in'Object' form under the terms of your choice, without any of the additionalrequirements listed in Section 4 of the Apache License 2.0. This exception appliesonly to redistributions in 'Object' form (not 'Source' form) and only if nomodifications have been made to the 'Work'.

Regina Rexx Documentation

Help requested


Rexx

Regina Rexx Manual 2019

  1. As I said, my first priority is getting the bugs out. If you come acrossbad code generation problems or other errors, send me the shortest programthat illustrates the bug. I will be grateful for it.
  2. pawn is reported to run under Microsoft DOS, all versions of MicrosoftWindows (including Windows CE), Linux, MacOS, FreeBSD, XBox, PlayStation,FreeRTOS (on an ARM7-architecture), and µC/OS-II.If you have been able to port pawn to other environments, please send me thechanges. Others will be grateful for it.
  3. The documentation is getting better, I think, but I am not a good critic ofmy own work. Comments on my writing (especially errors and obscure paragraphs)are appreciated.

Regina Rexx Manual Download

To contact me, send e-mail tothiadmer @ compuphase.com.Note, however, that I am regularly abroad and sometimes need 8 days to answer ane-mail.