The Universal Language the Universal Language

Total Page:16

File Type:pdf, Size:1020Kb

The Universal Language the Universal Language Rexx The Universal Language By Howard Fosdick EVERYONE WHO WORKS WITH MAINFRAMES KNOWS ABOUT REXX. IT’S THE command or “scripting” language that’s been shipped with all main- Classic frames for years. It’s versatile, flexible, and powerful. Somehow it still procedural Rexx manages to be very easy to learn and use. Runs on any In recent years, Rexx has spread its wings. It now runs as an open platform source language on virtually every platform and operating system. Object-oriented Moreover, it comes in object-oriented and Java-compatible forms. This Rexx article gives you a quick tour of modern Rexx. We’ll summarize the Runs on Windows, different versions of Rexx. We’ll describe the many free Rexx inter- Linux, Unix Java-compatiable preters and tools that are available, and tell you where you can down- NetRexx load them. Before we proceed, you might ask: why should I care? The answer Runs on any Java Virtual Machine comes down to two key benefits: Figure 1: Three Rexx Flavors ▼ Transferability of skills Interpreter Platforms Quick Profile ▼ Transportability of code Regina All major operating The most popular free procedural Rexx. Its large user community systems means good support and it interfaces to most free tools and inter- If you know Rexx, you know a universal pro- faces. Comes with many extra built-in functions and excellent, pro- gramming language. Since it runs everywhere, fessional documentation. Download from: this makes your Rexx skills transferable to http://regina-rexx.sourceforge.net/ other platforms. For example, you work on the Rexx/imc Linux, Unix, BSD Unix, Linux, and BSD -oriented with nice extensions for Unix pro- mainframe but use a PC. Rexx gives you a way grammers in these environments. A rock-solid interpreter with a to program both without having to learn a new proven track record for long-term support. Includes a free Rexx tuto- programming language. You can even program rial. Download from: your handheld with Rexx. And those new http://users.comlab.ox.ac.uk/ian.collier/Rexx/rexximc.html Linux blade servers the manager wants to bring BRexx Linux, Unix,Windows Extremely fast and light, runs on many platforms including resource- in? Administer them with Rexx scripts and you CE, Mac OS, 16- and limited systems like Windows CE, embedded Linuxes, DOS. Many won’t have to spend your weekends learning 32- bit DOS, others. extra functions and interfaces. Long-term track record of support. bash or Perl. A language that runs everywhere Download from: http://bnv.home.cern.ch/bnv/ gives you skills that apply everywhere. Reginald Windows Customizes and extends Rexx for Windows programmers. Includes This same principle applies to your code. A many Windows tools such as a GUI, speech, MIDI, and media func- standard Rexx script runs anywhere, from hand- tions, etc. Provides a standard language alternative to proprietary helds to laptops to desktops to servers to main- tools like VBScript. Nicely documented with examples and easy to use. frames. Portable code gives you a choice of Download from: www.borg.com/~jglatt/rexx/rexxuser.htm platforms and reduces costs. Rexx has evolved r4 Windows Rexx extended for Windows with many tools for developers includ- into a “universal programming language.” ing a GUI forms tool, color text file viewer and editor, over 135 win- As figure 1 shows, Rexx comes in three fla- dows command tools, visual accessories, XML to HTML vors: “classic,” procedural Rexx; object-ori- auto-converter, GUI widgets, and others. Excellent tutorials and example scripts. Download from: ented Rexx; and, Java-compatible Rexx. Let’s www.kilowattsoftware.com/ discuss them. Rexx for Palm OS Palm OS Glues Palm OS applications and databases together in scripts that run without leaving the current application. Scripts can access all CLASSIC REXX Palm data and resources, including TCP/IP,Infrared, USB and serial communications, console, clipboard, etc. Runs natively. Good exam- Classic Rexx was defined back in the 1980s. ple scripts with easy-to-follow tutorials. Download from: This procedural language ships bundled with www.jaxo.com/rexx/ all IBM mainframe operating systems, i5/OS, Figure 2: Free Classic Rexx Interpreters Technical Support | March 2006 ©2006 Technical Enterprises, Inc. Reproduction of this document without permission is prohibited. OS/400, OS/2, PC-DOS, and Amiga OS and Interpreter Platforms Quick Profile other systems. Open Object Windows, Linux, Unix Fully object-oriented superset of classic Rexx. Developed by IBM, it Classic Rexx gained its ANSI standard in Rexx became open source in early 2005. Now enhanced and maintained 1996. Since then, two major trends have hit the by the Rexx Language Association.The most widely-used object-ori- software world: open source software and free ented Rexx interpreter. Runs on Windows, Linuxes, and Unixes. scripting languages. These two trends con- Download from: www.oorexx.org/ verge in Rexx and this has led to a proliferation of Rexx interpreters across many platforms. roo! Windows Fully object-oriented superset of classic Rexx. From the same com- Today free Rexx is available for any main- pany as the standard r4 Rexx interpreter, it comes with the same stream operating system, including all versions extensive set of Windows tools. Includes quick, easy tutorials that nicely bridge the gap between standard and object-oriented Rexx of Windows, Linux, and Unix, and even most programming. Download from: “second-tier” operating systems, including the www.kilowattsoftware.com/ Mac OS, Palm OS, Windows CE, BSD, NetRexx Any JVM A Rexx-like language that integrates with the Java environment. Symbian/EPOC, VAX/VMS, DOS, OS/2, NetRexx uses Java classes and can be used to develop classes, appli- Amiga OS, i5/OS, OS/400, and many others. cations, applets, servlets, and beans. Download from: You can download and install free Rexx for www-306.ibm.com/software/awdtools/netrexx/library.html any of these operating systems in a jiffy. Figure Figure 3: Free Object-oriented and Java-compatible Rexx Interpreters 2 tells you where to get the interpreters. For most operating systems, you have a choice of Interpreter Platforms Quick Profile more than one free Rexx interpreter. Figure 2 briefly profiles each interpreter, but you’ll want Open Object Windows, Linux, Unix Fully object-oriented superset of classic Rexx. Developed by IBM, it Rexx became open source in early 2005. Now enhanced and maintained to download the ones available for your plat- by the Rexx Language Association.The most widely-used object-ori- form (all are free) and evaluate them yourself. ented Rexx interpreter. Runs on Windows, Linuxes, and Unixes. Rexx also offers hundreds of free tools. Download from: These support graphical user interfaces, data- www.oorexx.org/ base access, web programming, controlling roo! Windows Fully object-oriented superset of classic Rexx. From the same com- web servers, text processing, XML, communi- pany as the standard r4 Rexx interpreter, it comes with the same cations, and almost any other programming extensive set of Windows tools. Includes quick, easy tutorials that function. The tools typically come in the form nicely bridge the gap between standard and object-oriented Rexx of “function libraries,” so after issuing a com- programming. Download from: www.kilowattsoftware.com/ mand to access them, your Rexx program uses them just like the built-in functions that come NetRexx Any JVM A Rexx-like language that integrates with the Java environment. with the language. This easy extensibility NetRexx uses Java classes and can be used to develop classes, appli- cations, applets, servlets, and beans. Download from: makes Rexx ideal as a “glue” language. You www-306.ibm.com/software/awdtools/netrexx/library.html can use it for quick programming with many interfaces. Figures 2 and 3 list sites where you Figure 4: To Get Further Information can download free Rexx tools. single and multiple inheritance, classes and lists where to download the free object-ori- OBJECT-ORIENTED REXX methods, data encapsulation, polymorphism, ented Rexx interpreters. operator overloading, and a large class The fact that object-oriented Rexx is a Rexx joined the object-oriented revolution library. ooRexx runs under Windows, Linux, super-set of classic Rexx means that if you with the advent of IBM’s Object Rexx inter- and Unix. know classic Rexx, you can immediately move into the object-oriented world. Use the object- The fact that object-oriented Rexx is a super-set of oriented Rexx interpreters and program proce- durally. Then add in object-oriented features as classic Rexx means that if you know classic Rexx, you you learn them. Over time, at whatever pace can immediately move into the object-oriented world. suits you, you can leverage Rexx to transition to fully object-oriented programming. This is preter a decade ago. IBM has since open- A company named Kilowatt Software offers an ideal way for mainframe scripters to grow sourced this interpreter and turned over its an alternative object-oriented free Rexx. into object-oriented programming. enhancement and maintenance to the Rexx Called roo!, this interpreter is also a true Language Association. Renamed “Open super-set of standard, classic Rexx. It offers JAVA-COMPATIBLE REXX Object Rexx,” or “ooRexx” for short, this the same features as Open Object Rexx, but is product is a true super-set of classic Rexx. based on an entirely different class library and As Java programming spread in the late Any standard procedural Rexx program will uses different syntax for object-oriented fea- 1990s, the inventor of Rexx, Michael run, without change, under Open Object Rexx. tures. Those interested in object Rexx will Cowlishaw, saw another opportunity. Java ooRexx adds all the features of object-ori- want to check out both ooRexx and roo! to see brought key benefits to programmers, through ented programming to Rexx.
Recommended publications
  • Chapter 12 Calc Macros Automating Repetitive Tasks Copyright
    Calc Guide Chapter 12 Calc Macros Automating repetitive tasks Copyright This document is Copyright © 2019 by the LibreOffice Documentation Team. Contributors are listed below. You may distribute it and/or modify it under the terms of either the GNU General Public License (http://www.gnu.org/licenses/gpl.html), version 3 or later, or the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0/), version 4.0 or later. All trademarks within this guide belong to their legitimate owners. Contributors This book is adapted and updated from the LibreOffice 4.1 Calc Guide. To this edition Steve Fanning Jean Hollis Weber To previous editions Andrew Pitonyak Barbara Duprey Jean Hollis Weber Simon Brydon Feedback Please direct any comments or suggestions about this document to the Documentation Team’s mailing list: [email protected]. Note Everything you send to a mailing list, including your email address and any other personal information that is written in the message, is publicly archived and cannot be deleted. Publication date and software version Published December 2019. Based on LibreOffice 6.2. Using LibreOffice on macOS Some keystrokes and menu items are different on macOS from those used in Windows and Linux. The table below gives some common substitutions for the instructions in this chapter. For a more detailed list, see the application Help. Windows or Linux macOS equivalent Effect Tools > Options menu LibreOffice > Preferences Access setup options Right-click Control + click or right-click
    [Show full text]
  • Rexx Programmer's Reference
    01_579967 ffirs.qxd 2/3/05 9:00 PM Page i Rexx Programmer’s Reference Howard Fosdick 01_579967 ffirs.qxd 2/3/05 9:00 PM Page iv 01_579967 ffirs.qxd 2/3/05 9:00 PM Page i Rexx Programmer’s Reference Howard Fosdick 01_579967 ffirs.qxd 2/3/05 9:00 PM Page ii Rexx Programmer’s Reference Published by Wiley Publishing, Inc. 10475 Crosspoint Boulevard Indianapolis, IN 46256 www.wiley.com Copyright © 2005 by Wiley Publishing, Inc., Indianapolis, Indiana Published simultaneously in Canada ISBN: 0-7645-7996-7 Manufactured in the United States of America 10 9 8 7 6 5 4 3 2 1 1MA/ST/QS/QV/IN No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 646-8600. Requests to the Publisher for permission should be addressed to the Legal Department, Wiley Publishing, Inc., 10475 Crosspoint Blvd., Indianapolis, IN 46256, (317) 572-3447, fax (317) 572-4355, e-mail: [email protected]. LIMIT OF LIABILITY/DISCLAIMER OF WARRANTY: THE PUBLISHER AND THE AUTHOR MAKE NO REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE ACCURACY OR COM- PLETENESS OF THE CONTENTS OF THIS WORK AND SPECIFICALLY DISCLAIM ALL WAR- RANTIES, INCLUDING WITHOUT LIMITATION WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE.
    [Show full text]
  • Scripting: Higher- Level Programming for the 21St Century
    . John K. Ousterhout Sun Microsystems Laboratories Scripting: Higher- Cybersquare Level Programming for the 21st Century Increases in computer speed and changes in the application mix are making scripting languages more and more important for the applications of the future. Scripting languages differ from system programming languages in that they are designed for “gluing” applications together. They use typeless approaches to achieve a higher level of programming and more rapid application development than system programming languages. or the past 15 years, a fundamental change has been ated with system programming languages and glued Foccurring in the way people write computer programs. together with scripting languages. However, several The change is a transition from system programming recent trends, such as faster machines, better script- languages such as C or C++ to scripting languages such ing languages, the increasing importance of graphical as Perl or Tcl. Although many people are participat- user interfaces (GUIs) and component architectures, ing in the change, few realize that the change is occur- and the growth of the Internet, have greatly expanded ring and even fewer know why it is happening. This the applicability of scripting languages. These trends article explains why scripting languages will handle will continue over the next decade, with more and many of the programming tasks in the next century more new applications written entirely in scripting better than system programming languages. languages and system programming
    [Show full text]
  • 10 Programming Languages You Should Learn Right Now by Deborah Rothberg September 15, 2006 8 Comments Posted Add Your Opinion
    10 Programming Languages You Should Learn Right Now By Deborah Rothberg September 15, 2006 8 comments posted Add your opinion Knowing a handful of programming languages is seen by many as a harbor in a job market storm, solid skills that will be marketable as long as the languages are. Yet, there is beauty in numbers. While there may be developers who have had riches heaped on them by knowing the right programming language at the right time in the right place, most longtime coders will tell you that periodically learning a new language is an essential part of being a good and successful Web developer. "One of my mentors once told me that a programming language is just a programming language. It doesn't matter if you're a good programmer, it's the syntax that matters," Tim Huckaby, CEO of San Diego-based software engineering company CEO Interknowlogy.com, told eWEEK. However, Huckaby said that while his company is "swimmi ng" in work, he's having a nearly impossible time finding recruits, even on the entry level, that know specific programming languages. "We're hiring like crazy, but we're not having an easy time. We're just looking for attitude and aptitude, kids right out of school that know .Net, or even Java, because with that we can train them on .Net," said Huckaby. "Don't get fixated on one or two languages. When I started in 1969, FORTRAN, COBOL and S/360 Assembler were the big tickets. Today, Java, C and Visual Basic are. In 10 years time, some new set of languages will be the 'in thing.' …At last count, I knew/have learned over 24 different languages in over 30 years," Wayne Duqaine, director of Software Development at Grandview Systems, of Sebastopol, Calif., told eWEEK.
    [Show full text]
  • Creating Java Applications Using Netrexx
    SG24-2216-00 Creating Java Applications Using NetRexx September 1997 IBML International Technical Support Organization SG24-2216-00 Creating Java Applications Using NetRexx September 1997 Take Note! Before using this information and the product it supports, be sure to read the general information in Appendix B, “Special Notices” on page 273. First Edition (September 1997) This edition applies to Version 1.0 and Version 1.1 of NetRexx with Java Development Kit 1.1.1 for use with the OS/2 Warp, Windows 95, and Windows NT operating systems. Because NetRexx runs on any platform where Java is implemented, it applies to other platforms and operating systems as well. SAMPLE CODE ON THE INTERNET The sample code for this redbook is available as nrxredbk.zip on the ITSO home page on the Internet: ftp://www.redbooks.ibm.com/redbooks/SG242216 Download the sample code and read “Installing the Sample Programs” on page 4. Comments may be addressed to: IBM Corporation, International Technical Support Organization Dept. QXXE Building 80-E2 650 Harry Road San Jose, California 95120-6099 When you send information to IBM, you grant IBM a non-exclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you. Copyright International Business Machines Corporation 1997. All rights reserved. Note to U.S. Government Users — Documentation related to restricted rights — Use, duplication or disclosure is subject to restrictions set forth in GSA ADP Schedule Contract with IBM Corp. Contents Figures . xi Tables . xv Preface . xvii How This Document is Organized ................................ xviii The Team That Wrote This Redbook ...............................
    [Show full text]
  • Safe, Fast and Easy: Towards Scalable Scripting Languages
    Safe, Fast and Easy: Towards Scalable Scripting Languages by Pottayil Harisanker Menon A dissertation submitted to The Johns Hopkins University in conformity with the requirements for the degree of Doctor of Philosophy. Baltimore, Maryland Feb, 2017 ⃝c Pottayil Harisanker Menon 2017 All rights reserved Abstract Scripting languages are immensely popular in many domains. They are char- acterized by a number of features that make it easy to develop small applications quickly - flexible data structures, simple syntax and intuitive semantics. However they are less attractive at scale: scripting languages are harder to debug, difficult to refactor and suffers performance penalties. Many research projects have tackled the issue of safety and performance for existing scripting languages with mixed results: the considerable flexibility offered by their semantics also makes them significantly harder to analyze and optimize. Previous research from our lab has led to the design of a typed scripting language built specifically to be flexible without losing static analyzability. Inthis dissertation, we present a framework to exploit this analyzability, with the aim of producing a more efficient implementation Our approach centers around the concept of adaptive tags: specialized tags attached to values that represent how it is used in the current program. Our frame- work abstractly tracks the flow of deep structural types in the program, and thuscan ii ABSTRACT efficiently tag them at runtime. Adaptive tags allow us to tackle key issuesatthe heart of performance problems of scripting languages: the framework is capable of performing efficient dispatch in the presence of flexible structures. iii Acknowledgments At the very outset, I would like to express my gratitude and appreciation to my advisor Prof.
    [Show full text]
  • REXX Parsing for Today’S Slides and Other Webinars Visit: PARSE Forms
    REXX Parsing For today’s slides and other webinars visit: www.themisinc.com/webinars PARSE Forms PARSE ARG template Parameters passed to program or subroutine PARSE EXTERNAL template Read from Terminal (TSO/E, VM only) PARSE NUMERIC template Current NUMERIC settings (TSO/E, VM only) PARSE PULL template Remove data from REXX STACK PARSE SOURCE template Information about the current program PARSE VALUE expression WITH template Information comes from expression PARSE VAR name template Parse one variable into other variables PARSE VERSION template Information about the REXX interpreter General Rules for Parsing • Parsing processes the data string from left to right • If there is more data than defined variables, the last variable receives ALL the remaining data • If there are more variables than data, the remaining variables are set as null • A period (.) may be used as a “placeholder” to bypass setting a variable PARSE VAR Keyword PARSE [UPPER] VAR origin template Use designated variable as input to template PARSING Example origin_data = ‘This is the original data’ PARSE VAR origin_data var1 var2 var3 var1 = This var2 = is var3 = the original data PARSING Example #2 origin_data = ‘This is the original data’ PARSE VAR origin_data var1 . var3 var1 = This var3 = original data PARSING Example #3 origin_data = ‘This is the original data’ PARSE VAR origin_data var1 var2 var3 . var1 = This var2 = is var3 = the PARSING Example #4 origin_data = ‘This is the original data’ PARSE VAR origin_data var1 “the” var3 . var1 = This is var3 = original NOTE: The placeholder (.) removes the last bit of data as space-delimited. Parsing Example Evaluate the following PARSE template: • What will dsn and member contain? dsname = "'SYS1.PROCLIB(JES2)'" PARSE VAR dsname "'" dsn '(' member ')' .
    [Show full text]
  • Complementary Slides for the Evolution of Programming Languages
    The Evolution of Programming Languages In Text: Chapter 2 Programming Language Genealogy 2 Zuse’s Plankalkül • Designed in 1945, but not published until 1972 • Never implemented • Advanced data structures – floating point, arrays, records • Invariants 3 Plankalkül Syntax • An assignment statement to assign the expression A[4] + 1 to A[5] | A + 1 => A V | 4 5 (subscripts) S | 1.n 1.n (data types) 4 Minimal Hardware Programming: Pseudocodes • Pseudocodes were developed and used in the late 1940s and early 1950s • What was wrong with using machine code? – Poor readability – Poor modifiability – Expression coding was tedious – Machine deficiencies--no indexing or floating point 5 Machine Code • Any binary instruction which the computer’s CPU will read and execute – e.g., 10001000 01010111 11000101 11110001 10100001 00010101 • Each instruction performs a very specific task, such as loading a value into a register, or adding two binary numbers together 6 Short Code: The First Pseudocode • Short Code developed by Mauchly in 1949 for BINAC computers – Expressions were coded, left to right – Example of operations: 01 – 06 abs value 1n (n+2)nd power 02 ) 07 + 2n (n+2)nd root 03 = 08 pause 4n if <= n 04 / 09 ( 58 print and tab 7 • Variables were named with byte-pair codes – E.g., X0 = SQRT(ABS(Y0)) – 00 X0 03 20 06 Y0 – 00 was used as padding to fill the word 8 IBM 704 and Fortran • Fortran 0: 1954 - not implemented • Fortran I: 1957 – Designed for the new IBM 704, which had index registers and floating point hardware • This led to the idea of compiled
    [Show full text]
  • The Design of the REXX Language
    The design of the REXX language by M. F. Cowlishaw One way of classifying computer languagesis by two (consciously or otherwise) to be easy to compile or classes: languages needing skilled programmers, and easy to interpret, it is designed (with the help of personal languages usedby an expanding population of general users. REstructured extended executor feedback from hundreds of users) to be easy to use. (REXX) isa flexible personal language designed with particular attention to feedback from its users. It has Three major factors affect the usability of a language. proved to be effective and easyto use, yet it is suffi- First, the basic concepts of a language affect its ciently general and powerfulto fulfil theneeds of many demanding professional applications.REXX is system syntax, grammar, and consistency. Second, the his- and hardware independent,so that it has been possi- tory and development of a language determine its ble to integrate it experimentally into several operating function, usability, and completeness. Third, but systems. Here REXX isused for such purposes as com- quite independently, the implementation of a lan- mand and macro programming, prototyping, educa- guage affects its acceptability, portability, and distri- tion, and personal programming. This paper introduces REXX and describes the basic design principles that bution. This paper introduces REXX and then dis- were followed in developingit. cusses basic concepts and developmental history as applied to the design of the REXX language. There are several experimental implementations of the REXX language within IBM for both large and small machines. One of these, by the author, has omputer languages may be classified in many become a part of the Virtual Machine/System Prod- ways.
    [Show full text]
  • IBM Tivoli Netview for Z/OS Programming: PL/I and C, Describes How to Write Command Processors and Installation Exit Routines for the Netview Product Using PL/I and C
    IBM Tivoli NetView for z/OS Version 6 Release 1 Programming: PL/I and C SC27-2860-00 IBM Tivoli NetView for z/OS Version 6 Release 1 Programming: PL/I and C SC27-2860-00 Note Before using this information and the product it supports, read the information in “Notices” on page 317. This edition applies to version 6, release 1 of IBM Tivoli NetView for z/OS (product number 5697-NV6) and to all subsequent versions, releases, and modifications until otherwise indicated in new editions. © Copyright IBM Corporation 1997, 2011. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Figures ....................................xi About this publication .............................xiii Intended audience .................................xiii Publications ...................................xiii IBM Tivoli NetView for z/OS library .........................xiii Related publications ...............................xv Accessing terminology online ............................xv Using NetView for z/OS online help .........................xvi Using LookAt to look up message explanations ......................xvi Accessing publications online ............................xvii Ordering publications ..............................xvii Accessibility ..................................xvii Tivoli technical training ...............................xvii Tivoli user groups ................................xviii Downloads ...................................xviii Support information................................xviii
    [Show full text]
  • Open Source - Who Cares and Why?
    Open Source - Who Cares and Why? Al Williams Session 8480 SHARE 103, New York, NY August 20, 2004 http://lily.garden.et-test.psu.edu/~alw/whyopen.pdf Agenda What is Open Source? What is it being used for? Who is using Open Source? Open Source Myths? What does this mean? What is Open Source? Open Source Is Application, program, or utility where The computer instructions (code, source) are provided with the program Licensed in such a way that it can be improved, enhanced, or localized freely Isn’t necessarily zero cost Popular revolution - some good work being done More lengthly definition at http://www.opensource.org Open Source Initiative The Open Source Initiative is now a California public benefit (not-for- profit) corporation Prompted by Netscape source code availability press release: http://wp.netscape.com/newsref/pr/newsrelease558.html http://www.opensource.org/ It’s Free, Right? Lots of software is free to download Not necessarily cost-free Need to have programmers to support yourself Need to have infrastructure to participate in development Can be resold by vendors who add value May need to pay for support from a vendor Some free software isn’t open source If You Want Free Software Free Software Foundation Open Source and Free http://www.fsf.org New Idea? No, our operating systems used to be source maintained HASP CMS We were familiar with source management SHARE has a history of sharing improvements in this area (mods) Perhaps Open Source is a new opportunity for us Circle of Life? Twenty-four years ago our favorite vendor extolled the value of Object Code Only control your system programmers reduce maintenance cost improve security and reliability Now Open Source is in (again) control your destiny share development effort match your business needs support “Open Standards” How is it Developed? Several formal projects (Foundries) What’s a Foundry? Foundries provide a place for end-users, developers and other interested parties to communicate, discuss new ideas, and learn about new software and technologies which may benefit them.
    [Show full text]
  • Pipelines Guide and Reference
    Pipelines Guide and Reference Ed Tomlinson Jeff Hennick René Jansen Version 4.01-GA of March 20, 2021 THE REXX LANGUAGE ASSOCIATION NetRexx Programming Series ISBN 978-90-819090-3-7 Publication Data ©Copyright The Rexx Language Association, 2011- 2021 All original material in this publication is published under the Creative Commons - Share Alike 3.0 License as stated at http://creativecommons.org/licenses/by-nc-sa/3.0/us/legalcode. The responsible publisher of this edition is identified as IBizz IT Services and Consultancy, Amsteldijk 14, 1074 HR Amsterdam, a registered company governed by the laws of the Kingdom of The Netherlands. This edition is registered under ISBN 978-90-819090-3-7 ISBN 978-90-819090-3-7 9 789081 909037 I Contents The NetR Programming Series i 1 Introduction 1 2 The Pipeline Concept 2 2.1 What is a Pipeline? 2 2.2 Stage 2 2.3 Device Driver 3 3 Running pipelines 4 3.1 Configuration 4 3.2 From the NetREXX Workspace (nrws) with direct execution 5 3.3 From the command line with direct execution 6 3.4 Precompiled Pipelines 6 3.5 Compiled from an .njp file 7 3.6 Compiled from an .njp file with additional stage definitions in NetREXX 7 4 Example Session 8 5 Write your own Filters 12 6 More advanced Pipelines 14 7 Device Drivers 15 8 Record Selection 17 9 Filters 18 10 Other Stages 19 11 Multi-Stream Pipelines 20 12 Pipeline Stalls 22 13 How to use a pipe in a NetR program 24 II 14 Giving commands to the operating system 27 14.1 Built-ins 27 15 TCP/IP Networking 28 16 Selecting from relational databases 30 17 The Pipes Runner 31 18 The Pipes Compiler 32 19 Built-in Stages 33 20 Differences with CMS Pipelines 34 Index 83 III The NetR Programming Series This book is part of a library, the NetR Programming Series, documenting the NetREXX programming language and its use and applications.
    [Show full text]