*** Welcome to piglix ***

Generalized Automation Language


Two forms of GAL are available. The first is General Automation Language for device automation and the second is Generalized Automation Language (GAL) which a very high level programming language for MVS based systems such as OS/390 and z/OS.

Developed by iLED to provide a common language for standardising automation and control of devices in the residential (Home Automation) and commercial control environments. The language provides a standardised method of communicating to/from controlled/controlling devices. At each device, GAL is converted into the machine specific protocol and medium. An example is the control of a DVD player. The GAL command will be <MyHouse MyArea MyRoom MyDevice MyCommand> FredsHouse GroundFloor Lounge DVDplayer ON. The GAL device will then convert this to the discrete IR command to switch on the DVD Player.

Developed by Expans Systems to provide features and constructs that enable the programmer to intercept systems events and schedule responses, as implemented via their product Automan. Somewhat akin to BASIC, GAL enables systems programmers and operators to define logic to apply to systems messages as they flow through a multi-system (sysplex) environment. GAL also enables the programmer to define events that have occurred in the past, by intercepting Action Message Retention Facility (AMRF) messages. The language has built-in constructs to obtain the age of a retained message and make decisions about its fate depending on age. GAL can be used to write new systems commands, by intercepting and interpreting anything that is entered into an Operator Console. GAL uses keywords such as names of days of the week, names of month etc. to automatically schedule events in the system. Like REXX, GAL is both an interpretive language and a compiled language. GAL statements can be entered to the interpreter on the fly, or entire automation scenarios can be predefined, such as the logic to define unattended operations of a system, and can be compiled offline, using the compiler program GALCOMP.

GAL implements comparison by IF statements, setting of variables, by the LET statement and subroutine calls. GAL allows the programmer to break into REXX, and Assembler where it is needed. The very high level nature of GAL is exemplified by the EMAIL statement, which enables the programmer to send an email alert when an event is detected that requires human intervention. Assuming that this message event requires an alert to be sent to a default recipient:


...
Wikipedia

...