home *** CD-ROM | disk | FTP | other *** search
/ The Developer Connection…ice Driver Kit for OS/2 3 / DEV3-D1.ISO / docs / rexxbase.bok < prev    next >
Encoding:
Text File  |  1993-08-15  |  13.6 KB  |  345 lines

  1. 70000%%%%Rexxbase%%%%(C) Copyright IBM Corp. 1992
  2. 70001%%%%Rexxbase%%%%Cover
  3. 70003%%%%Rexxbase%%%%Version Notice
  4. 70004%%%%Rexxbase%%%%Notices
  5. 70005%%%%Rexxbase%%%%Trademarks
  6. 70006%%%%Rexxbase%%%%Double-Byte Character Set (DBCS)
  7. 70007%%%%Rexxbase%%%%About This Book
  8. 70008%%%%Rexxbase%%%%Before You Begin
  9. 70009%%%%Rexxbase%%%%What You Need
  10. 70010%%%%Rexxbase%%%%What You Need to Know
  11. 70011%%%%Rexxbase%%%%Who Should Read This Guide
  12. 70012%%%%Rexxbase%%%%How This Guide Is Structured
  13. 70013%%%%Rexxbase%%%%Introduction to REXX
  14. 70014%%%%Rexxbase%%%%Features of REXX
  15. 70015%%%%Rexxbase%%%%Ease of Use
  16. 70016%%%%Rexxbase%%%%Free Format
  17. 70017%%%%Rexxbase%%%%Interpreted
  18. 70018%%%%Rexxbase%%%%Built-in Functions
  19. 70019%%%%Rexxbase%%%%Typeless Variables
  20. 70020%%%%Rexxbase%%%%Parsing Capabilities
  21. 70021%%%%Rexxbase%%%%Debugging
  22. 70022%%%%Rexxbase%%%%REXX and the OS/2 Program
  23. 70023%%%%Rexxbase%%%%About REXX and SAA
  24. 70024%%%%Rexxbase%%%%About Programming
  25. 70025%%%%Rexxbase%%%%If You Have Never Written a Computer Program
  26. 70026%%%%Rexxbase%%%%If You Are Already Familiar With Another Language
  27. 70027%%%%Rexxbase%%%%Exercises and Examples
  28. 70028%%%%Rexxbase%%%%The REXX Reference
  29. 70029%%%%Rexxbase%%%%How REXX Works
  30. 70030%%%%Rexxbase%%%%Basics
  31. 70031%%%%Rexxbase%%%%A Computer Conversation
  32. 70032%%%%Rexxbase%%%%Creating Your First Program
  33. 70033%%%%Rexxbase%%%%Running the Program
  34. 70034%%%%Rexxbase%%%%Problems
  35. 70035%%%%Rexxbase%%%%Stopping a Program
  36. 70036%%%%Rexxbase%%%%What Goes into a Program
  37. 70037%%%%Rexxbase%%%%Comments
  38. 70038%%%%Rexxbase%%%%First-line Comments
  39. 70039%%%%Rexxbase%%%%Keyword Instructions
  40. 70040%%%%Rexxbase%%%%Clauses
  41. 70041%%%%Rexxbase%%%%Literal Strings
  42. 70042%%%%Rexxbase%%%%Uppercase Translation
  43. 70043%%%%Rexxbase%%%%Variables
  44. 70044%%%%Rexxbase%%%%Fixing Syntax Errors
  45. 70045%%%%Rexxbase%%%%Test Yourself
  46. 70046%%%%Rexxbase%%%%Answers:
  47. 70047%%%%Rexxbase%%%%Summary
  48. 70048%%%%Rexxbase%%%%Advanced Topics
  49. 70049%%%%Rexxbase%%%%More about Clauses
  50. 70050%%%%Rexxbase%%%%Types of Clauses
  51. 70051%%%%Rexxbase%%%%Null Clauses
  52. 70052%%%%Rexxbase%%%%Labels
  53. 70053%%%%Rexxbase%%%%Instructions
  54. 70054%%%%Rexxbase%%%%For More Information
  55. 70055%%%%Rexxbase%%%%Variables
  56. 70056%%%%Rexxbase%%%%Basics
  57. 70057%%%%Rexxbase%%%%Handling Data with Symbols
  58. 70058%%%%Rexxbase%%%%Names and Values
  59. 70059%%%%Rexxbase%%%%Assignments
  60. 70060%%%%Rexxbase%%%%Displaying the Value of a Variable
  61. 70061%%%%Rexxbase%%%%Naming Variables
  62. 70062%%%%Rexxbase%%%%Test Yourself
  63. 70063%%%%Rexxbase%%%%Answers:
  64. 70064%%%%Rexxbase%%%%Other Assignments
  65. 70065%%%%Rexxbase%%%%Assigning User Input
  66. 70066%%%%Rexxbase%%%%Assigning an Expression Result
  67. 70067%%%%Rexxbase%%%%Summary
  68. 70068%%%%Rexxbase%%%%Advanced Topics
  69. 70069%%%%Rexxbase%%%%Variables as Symbols
  70. 70070%%%%Rexxbase%%%%Constants and Variables
  71. 70071%%%%Rexxbase%%%%Using Compound Symbols
  72. 70072%%%%Rexxbase%%%%Test Yourself
  73. 70073%%%%Rexxbase%%%%Answers:
  74. 70074%%%%Rexxbase%%%%A Scoreboard Array
  75. 70075%%%%Rexxbase%%%%Stems and Tails
  76. 70076%%%%Rexxbase%%%%Filling a Two-Dimensional Array
  77. 70077%%%%Rexxbase%%%%Variables in Programs and Subroutines
  78. 70078%%%%Rexxbase%%%%Special Variables
  79. 70079%%%%Rexxbase%%%%SYMBOL()Function
  80. 70080%%%%Rexxbase%%%%PROCEDURE Instruction
  81. 70081%%%%Rexxbase%%%%PROCEDURE EXPOSE Instruction
  82. 70082%%%%Rexxbase%%%%Other Types of Data Storage
  83. 70083%%%%Rexxbase%%%%Expressions
  84. 70084%%%%Rexxbase%%%%Basics
  85. 70085%%%%Rexxbase%%%%Transforming Data
  86. 70086%%%%Rexxbase%%%%Terms
  87. 70087%%%%Rexxbase%%%%Basic Operators
  88. 70088%%%%Rexxbase%%%%Operator Precedence
  89. 70089%%%%Rexxbase%%%%Using Functions
  90. 70090%%%%Rexxbase%%%%Comparing Data
  91. 70091%%%%Rexxbase%%%%Testing for True or False
  92. 70092%%%%Rexxbase%%%%Combining Expressions
  93. 70093%%%%Rexxbase%%%%Using Comparisons for Program Control
  94. 70094%%%%Rexxbase%%%%Using Expressions in Instructions
  95. 70095%%%%Rexxbase%%%%Tracing Evaluation
  96. 70096%%%%Rexxbase%%%%Summary
  97. 70097%%%%Rexxbase%%%%Advanced Topics
  98. 70098%%%%Rexxbase%%%%Precedence
  99. 70099%%%%Rexxbase%%%%Using Parentheses
  100. 70100%%%%Rexxbase%%%%Test Yourself
  101. 70101%%%%Rexxbase%%%%Answers:
  102. 70102%%%%Rexxbase%%%%More about Numbers
  103. 70103%%%%Rexxbase%%%%Concatenation
  104. 70104%%%%Rexxbase%%%%Substring Functions
  105. 70105%%%%Rexxbase%%%%Getting Pieces of Strings
  106. 70106%%%%Rexxbase%%%%Finding Lengths of Strings
  107. 70107%%%%Rexxbase%%%%Parsing
  108. 70108%%%%Rexxbase%%%%Comparisons
  109. 70109%%%%Rexxbase%%%%Comparing Numbers
  110. 70110%%%%Rexxbase%%%%Comparing Characters
  111. 70111%%%%Rexxbase%%%%Normal Comparison
  112. 70112%%%%Rexxbase%%%%Test Yourself
  113. 70113%%%%Rexxbase%%%%Answers:
  114. 70114%%%%Rexxbase%%%%Strict Comparisons
  115. 70115%%%%Rexxbase%%%%Boolean Operators
  116. 70116%%%%Rexxbase%%%%Test Yourself
  117. 70117%%%%Rexxbase%%%%Answer
  118. 70118%%%%Rexxbase%%%%Translating and Converting Data
  119. 70119%%%%Rexxbase%%%%Number Systems
  120. 70120%%%%Rexxbase%%%%Using Functions to Convert Data
  121. 70121%%%%Rexxbase%%%%Commands
  122. 70122%%%%Rexxbase%%%%Basics
  123. 70123%%%%Rexxbase%%%%Environment
  124. 70124%%%%Rexxbase%%%%From REXX to the OS/2 Program
  125. 70125%%%%Rexxbase%%%%Issuing a Command Expression
  126. 70126%%%%Rexxbase%%%%Echoing of OS/2 Commands:
  127. 70127%%%%Rexxbase%%%%Issuing a Command to Call a .CMD File
  128. 70128%%%%Rexxbase%%%%Using Variables
  129. 70129%%%%Rexxbase%%%%Using Quotes
  130. 70130%%%%Rexxbase%%%%To Summarize
  131. 70131%%%%Rexxbase%%%%ADDRESS Instruction
  132. 70132%%%%Rexxbase%%%%Test Yourself
  133. 70133%%%%Rexxbase%%%%Answers:
  134. 70134%%%%Rexxbase%%%%From the OS/2 Program to REXX
  135. 70135%%%%Rexxbase%%%%Reading Return Codes
  136. 70136%%%%Rexxbase%%%%More and Better Traps
  137. 70137%%%%Rexxbase%%%%The REXXTRY Program
  138. 70138%%%%Rexxbase%%%%Summary
  139. 70139%%%%Rexxbase%%%%Advanced Topics
  140. 70140%%%%Rexxbase%%%%REXX and Batch Files
  141. 70141%%%%Rexxbase%%%%Subcommand Processing
  142. 70142%%%%Rexxbase%%%%Trapping Command Errors
  143. 70143%%%%Rexxbase%%%%Instructions and Conditions
  144. 70144%%%%Rexxbase%%%%Disabling Traps
  145. 70145%%%%Rexxbase%%%%Using SIGNAL ON ERROR
  146. 70146%%%%Rexxbase%%%%Using CALL ON ERROR
  147. 70147%%%%Rexxbase%%%%A Common Error-handling Routine
  148. 70148%%%%Rexxbase%%%%Using PMREXX
  149. 70149%%%%Rexxbase%%%%Starting the PMREXX Program
  150. 70150%%%%Rexxbase%%%%The RxMessageBox Function
  151. 70151%%%%Rexxbase%%%%The PMREXX Trace Option
  152. 70152%%%%Rexxbase%%%%Program Control
  153. 70153%%%%Rexxbase%%%%Basics
  154. 70154%%%%Rexxbase%%%%Changing the Flow of a Program
  155. 70155%%%%Rexxbase%%%%Grouping Instructions
  156. 70156%%%%Rexxbase%%%%Testing Conditions
  157. 70157%%%%Rexxbase%%%%Simple Branching
  158. 70158%%%%Rexxbase%%%%Using DO...END for Multiple Clauses
  159. 70159%%%%Rexxbase%%%%Test Yourself
  160. 70160%%%%Rexxbase%%%%Answer
  161. 70161%%%%Rexxbase%%%%Two Paths:ELSE
  162. 70162%%%%Rexxbase%%%%The SELECT Instruction
  163. 70163%%%%Rexxbase%%%%Multiple Choice
  164. 70164%%%%Rexxbase%%%%Test Yourself
  165. 70165%%%%Rexxbase%%%%Answers
  166. 70166%%%%Rexxbase%%%%Repetitive Tasks
  167. 70167%%%%Rexxbase%%%%Conditional Loops
  168. 70168%%%%Rexxbase%%%%DO FOREVER with the LEAVE Instruction
  169. 70169%%%%Rexxbase%%%%DO WHILE Instruction
  170. 70170%%%%Rexxbase%%%%DO UNTIL Instruction
  171. 70171%%%%Rexxbase%%%%To Summarize
  172. 70172%%%%Rexxbase%%%%Test Yourself
  173. 70173%%%%Rexxbase%%%%Answers:
  174. 70174%%%%Rexxbase%%%%Using IF, SELECT, and DO
  175. 70175%%%%Rexxbase%%%%Using Counters to Exit Loops
  176. 70176%%%%Rexxbase%%%%Bigger Steps
  177. 70177%%%%Rexxbase%%%%Different Steps
  178. 70178%%%%Rexxbase%%%%Test Yourself
  179. 70179%%%%Rexxbase%%%%Answers:
  180. 70180%%%%Rexxbase%%%%Exiting a Program
  181. 70181%%%%Rexxbase%%%%Summary
  182. 70182%%%%Rexxbase%%%%Advanced Topics
  183. 70183%%%%Rexxbase%%%%Nesting IF Instructions
  184. 70184%%%%Rexxbase%%%%Nested IF and SELECT
  185. 70185%%%%Rexxbase%%%%Dangling ELSE
  186. 70186%%%%Rexxbase%%%%Test Yourself
  187. 70187%%%%Rexxbase%%%%Answer
  188. 70188%%%%Rexxbase%%%%NOP Instruction
  189. 70189%%%%Rexxbase%%%%ITERATE Instruction
  190. 70190%%%%Rexxbase%%%%Compound DO Instructions
  191. 70191%%%%Rexxbase%%%%Nested Loops
  192. 70192%%%%Rexxbase%%%%Program Structure
  193. 70193%%%%Rexxbase%%%%Basics
  194. 70194%%%%Rexxbase%%%%Subroutines
  195. 70195%%%%Rexxbase%%%%CALL Instruction
  196. 70196%%%%Rexxbase%%%%RETURN Instruction
  197. 70197%%%%Rexxbase%%%%Test Yourself
  198. 70198%%%%Rexxbase%%%%Answer
  199. 70199%%%%Rexxbase%%%%External Subroutines
  200. 70200%%%%Rexxbase%%%%Using Arguments
  201. 70201%%%%Rexxbase%%%%ARG() Function
  202. 70202%%%%Rexxbase%%%%Subroutines and Data
  203. 70203%%%%Rexxbase%%%%Summary
  204. 70204%%%%Rexxbase%%%%Advanced Topics
  205. 70205%%%%Rexxbase%%%%Structured Programming
  206. 70206%%%%Rexxbase%%%%Function Calls
  207. 70207%%%%Rexxbase%%%%Creating a Function
  208. 70208%%%%Rexxbase%%%%Comparing Subroutines and Functions
  209. 70209%%%%Rexxbase%%%%Using a Call of the Other Kind
  210. 70210%%%%Rexxbase%%%%Jumps
  211. 70211%%%%Rexxbase%%%%SIGNAL Instruction
  212. 70212%%%%Rexxbase%%%%Condition Traps
  213. 70213%%%%Rexxbase%%%%Using CALL ON
  214. 70214%%%%Rexxbase%%%%Useful Functions
  215. 70215%%%%Rexxbase%%%%Parsing
  216. 70216%%%%Rexxbase%%%%Basics
  217. 70217%%%%Rexxbase%%%%Conversations
  218. 70218%%%%Rexxbase%%%%Prompting the User for Input
  219. 70219%%%%Rexxbase%%%%Test Yourself
  220. 70220%%%%Rexxbase%%%%Answers:
  221. 70221%%%%Rexxbase%%%%Getting Data When the Program Starts
  222. 70222%%%%Rexxbase%%%%Multiple-Variable Assignment
  223. 70223%%%%Rexxbase%%%%Checking for Input Errors
  224. 70224%%%%Rexxbase%%%%Using a Placeholder
  225. 70225%%%%Rexxbase%%%%Test Yourself
  226. 70226%%%%Rexxbase%%%%Answers:
  227. 70227%%%%Rexxbase%%%%Parsing Variables and Expressions
  228. 70228%%%%Rexxbase%%%%Parsing Numeric Data
  229. 70229%%%%Rexxbase%%%%Summary
  230. 70230%%%%Rexxbase%%%%Advanced Topics
  231. 70231%%%%Rexxbase%%%%Parsing with Patterns
  232. 70232%%%%Rexxbase%%%%Literal String Patterns
  233. 70233%%%%Rexxbase%%%%Character Position
  234. 70234%%%%Rexxbase%%%%Absolute Position
  235. 70235%%%%Rexxbase%%%%Relative Position
  236. 70236%%%%Rexxbase%%%%Variables in Patterns
  237. 70237%%%%Rexxbase%%%%To Summarize
  238. 70238%%%%Rexxbase%%%%String Functions
  239. 70239%%%%Rexxbase%%%%Getting Pieces
  240. 70240%%%%Rexxbase%%%%Editing
  241. 70241%%%%Rexxbase%%%%Deleting
  242. 70242%%%%Rexxbase%%%%Formatting
  243. 70243%%%%Rexxbase%%%%Counting
  244. 70244%%%%Rexxbase%%%%Comparing
  245. 70245%%%%Rexxbase%%%%Finding Positions
  246. 70246%%%%Rexxbase%%%%Examples
  247. 70247%%%%Rexxbase%%%%Arithmetic
  248. 70248%%%%Rexxbase%%%%Basics
  249. 70249%%%%Rexxbase%%%%About REXX Numbers
  250. 70250%%%%Rexxbase%%%%Checking Input Numbers
  251. 70251%%%%Rexxbase%%%%Calculating
  252. 70252%%%%Rexxbase%%%%Addition and Subtraction
  253. 70253%%%%Rexxbase%%%%Multiplication and Powers
  254. 70254%%%%Rexxbase%%%%Division
  255. 70255%%%%Rexxbase%%%%Range and Precision
  256. 70256%%%%Rexxbase%%%%Exponential Notation
  257. 70257%%%%Rexxbase%%%%Test Yourself
  258. 70258%%%%Rexxbase%%%%Answer
  259. 70259%%%%Rexxbase%%%%Formatting Output
  260. 70260%%%%Rexxbase%%%%Summary
  261. 70261%%%%Rexxbase%%%%Advanced Topics
  262. 70262%%%%Rexxbase%%%%Putting Numbers into Columns
  263. 70263%%%%Rexxbase%%%%Formatting Errors
  264. 70264%%%%Rexxbase%%%%Rounding Errors
  265. 70265%%%%Rexxbase%%%%Test Yourself
  266. 70266%%%%Rexxbase%%%%Answer
  267. 70267%%%%Rexxbase%%%%Conventional and Scientific Notation
  268. 70268%%%%Rexxbase%%%%Fixed-point (Conventional) Notation
  269. 70269%%%%Rexxbase%%%%Floating-point (Scientific) Notation
  270. 70270%%%%Rexxbase%%%%Test Yourself
  271. 70271%%%%Rexxbase%%%%Answers:
  272. 70272%%%%Rexxbase%%%%Changing Precision
  273. 70273%%%%Rexxbase%%%%Rounding and Precision
  274. 70274%%%%Rexxbase%%%%Comparing Numbers
  275. 70275%%%%Rexxbase%%%%Powers (** Operator)
  276. 70276%%%%Rexxbase%%%%Test Yourself
  277. 70277%%%%Rexxbase%%%%Answers
  278. 70278%%%%Rexxbase%%%%A Square-Root Function
  279. 70279%%%%Rexxbase%%%%Input and Output
  280. 70280%%%%Rexxbase%%%%Basics
  281. 70281%%%%Rexxbase%%%%A Stream of Information
  282. 70282%%%%Rexxbase%%%%Text File Processing
  283. 70283%%%%Rexxbase%%%%LINEOUT() Function
  284. 70284%%%%Rexxbase%%%%Calling LINEOUT()
  285. 70285%%%%Rexxbase%%%%Writing Data to a File
  286. 70286%%%%Rexxbase%%%%Reading Data from a File
  287. 70287%%%%Rexxbase%%%%LINEIN() Function
  288. 70288%%%%Rexxbase%%%%LINES() Function
  289. 70289%%%%Rexxbase%%%%Resetting the Read Position
  290. 70290%%%%Rexxbase%%%%Printing a Text File
  291. 70291%%%%Rexxbase%%%%Sending Special Characters
  292. 70292%%%%Rexxbase%%%%CHAROUT() Function
  293. 70293%%%%Rexxbase%%%%A Printout Program
  294. 70294%%%%Rexxbase%%%%To Summarize
  295. 70295%%%%Rexxbase%%%%STREAM() Function
  296. 70296%%%%Rexxbase%%%%Queues
  297. 70297%%%%Rexxbase%%%%Lists of Data
  298. 70298%%%%Rexxbase%%%%Putting Data on a Queue
  299. 70299%%%%Rexxbase%%%%Reading the Queue
  300. 70300%%%%Rexxbase%%%%QUEUED Function
  301. 70301%%%%Rexxbase%%%%Summary
  302. 70302%%%%Rexxbase%%%%Advanced Topics
  303. 70303%%%%Rexxbase%%%%More about Data Streams
  304. 70304%%%%Rexxbase%%%%Default Streams
  305. 70305%%%%Rexxbase%%%%Parsing Default Input
  306. 70306%%%%Rexxbase%%%%STREAM() Function
  307. 70307%%%%Rexxbase%%%%Getting Information about a Stream
  308. 70308%%%%Rexxbase%%%%Opening and Closing Streams
  309. 70309%%%%Rexxbase%%%%Accessing Data within a Stream
  310. 70310%%%%Rexxbase%%%%More about Queues
  311. 70311%%%%Rexxbase%%%%Examples
  312. 70312%%%%Rexxbase%%%%Program Style
  313. 70313%%%%Rexxbase%%%%Basics
  314. 70314%%%%Rexxbase%%%%Consider the Data
  315. 70315%%%%Rexxbase%%%%Test Yourself
  316. 70316%%%%Rexxbase%%%%Answer
  317. 70317%%%%Rexxbase%%%%Define the Tasks
  318. 70318%%%%Rexxbase%%%%Reconsider the Data
  319. 70319%%%%Rexxbase%%%%Create Modules
  320. 70320%%%%Rexxbase%%%%Planning the Program
  321. 70321%%%%Rexxbase%%%%Designing Loops
  322. 70322%%%%Rexxbase%%%%Conclusion
  323. 70323%%%%Rexxbase%%%%Putting It All Together
  324. 70324%%%%Rexxbase%%%%Testing and Debugging
  325. 70325%%%%Rexxbase%%%%Using TRACE
  326. 70326%%%%Rexxbase%%%%TRACE Symbols
  327. 70327%%%%Rexxbase%%%%Interactive Debugging
  328. 70328%%%%Rexxbase%%%%Summary
  329. 70329%%%%Rexxbase%%%%Advanced Topics
  330. 70330%%%%Rexxbase%%%%Making Programs Easy to Read
  331. 70331%%%%Rexxbase%%%%Using REXX with Applications
  332. 70332%%%%Rexxbase%%%%Basics
  333. 70333%%%%Rexxbase%%%%Customizing OS/2 Programs
  334. 70334%%%%Rexxbase%%%%Accessing Command Environments
  335. 70335%%%%Rexxbase%%%%Using External Functions
  336. 70336%%%%Rexxbase%%%%Summary
  337. 70337%%%%Rexxbase%%%%Advanced Topics
  338. 70338%%%%Rexxbase%%%%The REXXUTIL external function package
  339. 70339%%%%Rexxbase%%%%Functions that Replace Commands
  340. 70340%%%%Rexxbase%%%%Functions for Saving Information
  341. 70341%%%%Rexxbase%%%%Using the Screen
  342. 70342%%%%Rexxbase%%%%Using the Screen (continued)
  343. 70343%%%%Rexxbase%%%%Seaching Functions
  344. 70344%%%%Rexxbase%%%%Additional RexxUtil Functions
  345.