README 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265
  1. WELCOME TO RIGAL PROGRAMMING SYSTEM
  2. ===================================
  3. RIGAL 2.28
  4. This README file contains important, last minute information
  5. about Rigal 2.28
  6. TABLE OF CONTENTS
  7. -----------------
  8. 0. You need Turbo Pascal TPC.EXE version 6.0
  9. 1. How to install Rigal
  10. 2. List of files on the disks
  11. 3. Implementation restrictions
  12. 4. Difference between 2.28 and the previous versions
  13. 0. YOU HAVE TO OBTAIN Turbo Pascal, version 6.0
  14. --------------------------------------------------------
  15. The programming system will allow you to check and
  16. interprete RIGAL code without Turbo Pascal Compiler.
  17. In order to compile RIGAL code to efficient executable file
  18. Turbo Pascal compiler version 6.0 is necessary. File TURBO.TPL
  19. is in the distribution and it must be used during
  20. compilation with Turbo Pascal.
  21. You have to copy TPC.EXE to the directory where
  22. you installed RIGAL system.
  23. Other versions of Turbo Pascal are NOT supported.
  24. To be more sure, you can verify that the
  25. length of your file TPC.EXE is 69196 bytes.
  26. 1. HOW TO INSTALL RIGAL
  27. -----------------------
  28. At least 2 MBytes of disk memory are necessary to install Rigal.
  29. Copy all the files to any directory of your computer.
  30. C:\RIGAL directory is recommended.
  31. Look through *.BAT files and modify drive names if necessary.
  32. Copy *.BAT to any directory included in DOS PATH.
  33. 2. LIST OF FILES ON THE DISKS
  34. -----------------------------
  35. Rigal integrated environment
  36. ----------------------------
  37. RIG EXE called by RIG.BAT
  38. RIG BAT Integrated RIGAL environment Version A
  39. Built-in Text Editor, Checker and Interpreter.
  40. Default work file is WORK.RIG.
  41. You can call RIG.BAT from ANY directory,
  42. Parameter: file name without .RIG
  43. RIG1 EXE called by RIG1.BAT
  44. RIG1 BAT - same as RIG.BAT, but Version B.
  45. Includes all features of version A, the Compiler and some utilities.
  46. Command line parameters:
  47. ( for advanced users )
  48. Additionally to RIG.BAT you can add parameter /E or /D - this means
  49. using this drive as VIRTUAL .
  50. /M3000 makes common memory for fast tables
  51. available through #CALL_PAS(61-66)
  52. Command line programs
  53. ---------------------
  54. RPNT BAT - for showing Rigal object if it was previously
  55. saved to the disk.
  56. Parameters are file name and the components of the object.
  57. INT EXE called by
  58. RINT BAT - Rigal interpreter.
  59. Parameters :
  60. 1th parameter - an intermediate code file name without extension.
  61. 2nd parameter - PRINT-file name.
  62. If you want to have output to the screen - this parameter
  63. must be "s".
  64. If you don't want output - "NUL"
  65. If you want to TURN ON debugging from program start
  66. then add "+" at the end of parameter, e.g.
  67. Debugging messages go always to same PRINT-file.
  68. For advanced users:
  69. Additionally to PRINT file: you can
  70. add parameter /E or /D - this means
  71. using this drive as VIRTUAL.
  72. /M3000 makes common memory for fast tables
  73. available through #CALL_PAS(61-66)
  74. 3rd and next parameters are user's parameters. You can read
  75. them in your program if you use built_in rule #PARM(T)
  76. which will return list of parameters.
  77. If you call
  78. > RINT CODE1 s AA BB CC
  79. then #PARM(T) will return (. AA BB CC .) .
  80. RIGCHECK EXE
  81. It CHECKS Rigal program.
  82. 1st parameter - file name without extension.
  83. RIGCOMP BAT
  84. It COMPILES Rigal program.
  85. 1st parameter - file name. No extensions. No path.
  86. 2nd parameter - RIGAL distributive directory path.
  87. DOCUMENTS in ENGLISH
  88. --------------------
  89. README - this file
  90. SHORT TXT - Brief description of Rigal in ENGLISH
  91. (published in ACM Sigplan Notices, 12, 1990)
  92. LANGDESC TXT - Language description in ENGLISH
  93. USERGUID TXT - User's guide in ENGLISH
  94. For advanced users:
  95. SOURGUID TXT - Describes porting to another operating systems
  96. PROGLIST TXT - Implementation structure
  97. LABEL TXT - Label for the distributers
  98. RAPID TXT - Notes on rapid programming
  99. DOCUMENTS in RUSSIAN
  100. --------------------
  101. Note: These documents are in separate disk.
  102. They usually are NOT included !
  103. READ ME - how to read and print russian in IBM/PC
  104. OPJAZ1 TXT - Rigal language description
  105. OPJAZ2 TXT
  106. OPJAZ3 TXT
  107. RUKPRG1 TXT - Rigal Programmer's Guide
  108. RUKPRG2 TXT
  109. RUKPRG3 TXT
  110. RUKPRG4 TXT
  111. DEMO DISK
  112. ---------
  113. Note: Demo is in separate disk !
  114. DEMO BAT - Run demo film (20 minutes)
  115. RIGAL DOC - Very short description of the language
  116. README 1ST - How to run demo
  117. EXAMPLES
  118. --------
  119. WORK RIG - Simplest example
  120. EX1 RIG - takes Head and Tail of list
  121. HANOI RIG - Hanoi tower example
  122. EX2 RIG - Analysis of an arithmetical expression
  123. EX TXT - An example of expression
  124. TOYLAN RIG - Toylan language compiler and interpreter
  125. A TOY - input example for Toylan
  126. ANALYSE RIG - Small language - Analysis part
  127. BCOMP RIG - Small language - Code generation part
  128. GRAM1 RIG - Small language - Abstract tree grammar
  129. GRAM2 RIG - Small language - Source grammar
  130. INTER RIG - Small language - Interpreter
  131. EX1 TXT - Small language source example
  132. LINTA RIG - Rigal Lint demo program
  133. TLIST RIG - Fast numeric tables demo
  134. TTREE RIG - Fast atomic tables demo
  135. Files for Integrated Environment
  136. --------------------------------
  137. Note: Don't start these files from DOS command prompt !
  138. RIG_CHE EXE
  139. RIG_EDIT EXE
  140. RIG_INT EXE
  141. CMPLBEG BAT
  142. CMPLEND BAT
  143. RIG_CRF EXE
  144. RIG_LINT EXE
  145. RIG_PNT EXE
  146. Files for RIGAL Compilation
  147. ---------------------------
  148. Note: Don't start these files from DOS command prompt !
  149. ANRIG EXE 1st part of Compiler
  150. GENRIG EXE 2nd part of Compiler
  151. TPC EXE Bordland's Pascal Compiler
  152. TURBO TPL Run-time Library of Compiler
  153. USEPASU PAS User's pascal routines
  154. SCAN PAS User's scanner
  155. When Rigal Program is compiled to e.g. AAA.EXE you
  156. can press AAA and such parameters:
  157. 1st - PRINT file name - same as in RINT
  158. but "+" not allowed.
  159. | For advanced users:
  160. | Additionally to PRINT file: you can
  161. | add parameter /E or /D - this means
  162. | using this disk as VIRTUAL !
  163. | /M3000 makes common memory for fast tables
  164. | available through #CALL_PAS(61-66)
  165. 2nd and next parameters are user's
  166. parameters as in RINT.
  167. 3. IMPLEMENTATION RESTRICTIONS
  168. ------------------------------
  169. 1. LETTERS are not only A..Z,a..z,_
  170. Some symbols {,},~,`,^ and Chr(128)-Chr(255)
  171. may be (carifully) used in Rigal & PASCAL lexic.
  172. Nevertheless it is not garanteed in future versions.
  173. 2. String of text output may be only of 80 bytes width
  174. 3. Built-in rule #COPY does not exist.
  175. Use key word COPY with the same effect: $A:=COPY($B).
  176. 4. Maximum 255 variables in every rule,
  177. maximum 400 rules in programm
  178. maximum 1000 variabes active in interpreter's stack
  179. maximum 80 bytes atom length
  180. maximum 750 lines allows #CALL_PAS(4 ..) for finding coordinate
  181. maximum 3 files may be (in depth) included in Rigal program
  182. maximum 5 text files may be open by OPEN statement
  183. maximum 20000 tokens (approximately) Rigal program size.
  184. 4. DIFFERENCE BETWEEN 2.05 AND PREVIOUS VERSIONS
  185. ------------------------------------------------
  186. Difference between 1.XXX and 2.XXX versions
  187. -------------------------------------------
  188. 1. The codes of the objects saved to the disk are NOT compatible.
  189. 2. #CALL_PAS has been extended, interface description has changed
  190. Difference between 2.04 and 2.00
  191. --------------------------------
  192. 1. FORALL BRANCHES & SELECTORS added to the language
  193. 2. New #CALL_PAS(35,36,37,38) - user-oriented lexical analyser,
  194. file SCAN.PAS can be modified by the user.
  195. 3. Some implementation bugs were corrected.
  196. Diffrence between 2.28 and 2.04
  197. -------------------------------
  198. 1. Virtual page manager optimized;
  199. Speed up 20 %
  200. 2. Some source files contain {$IFDEF WIN} directive
  201. used for "Rigal for Windows" version.
  202. 3. Some errors were corrected
  203. 4. Added FLOAT arithmetic module #CALL_PAS(80)
  204. 5. Scanner receives #FATOM atoms when real numbers are processed;
  205. These numbers are represented in 6-byte format.
  206. They are printed out in 12-digit format.
  207. 6. Non-numeric atoms now can be compared in lexical order:
  208. A<B, ABC<ABCD.
  209. 7. The scanner option "modula string" switches off
  210. comments like { }. So, '{' is normal symbol, separator,
  211. when the scaner is called using 'm+p-'.
  212. 8. OPEN A 'aaa.txt+'
  213. Appends file if it exists.
  214. Rewrites it if it does not exist.
  215. NOTE: Files of 2.28 have creation time = 2.28