File:
[local] /
rpl /
man /
rpl.1.in
Revision
1.29:
download - view:
text,
annotated -
select for diffs -
revision graph
Sun Oct 5 19:53:16 2014 UTC (10 years, 7 months ago) by
bertrand
Branches:
MAIN
CVS tags:
rpl-4_1_27,
rpl-4_1_26,
rpl-4_1_25,
rpl-4_1_24,
rpl-4_1_23,
rpl-4_1_22,
rpl-4_1_21,
rpl-4_1_20,
rpl-4_1_19,
HEAD
Correction d'un bug majeur dans XOR (table de vérité) et ajout de EQV.
1: .\" Manual page for the RPL/2 language
2: .\" 04.19.2006
3: .TH RPL/2 1 "@DATE@" JKB-Labs "RPL/2 user manual"
4: .SH NAME
5: Reverse Polish Lisp/2 release @VERSION@,
6: .br
7: half-compiled high-level language using shared libaries
8: and mainly aiming at scientific calculations and complex algorithms
9: .SH SYNOPSIS
10: .B rpl
11: [\-acdDhilnpPsv] [\-A data] [\-S script] [\-t level] [program]
12: .SH DESCRIPTION
13: The
14: .B rpl
15: sequencer allows either the execution of a RPL/2 program or the opening
16: of an interactive session to enter commands directly
17: .SH OPTIONS
18: .TP
19: .B -a
20: analyzes program and sends preprocessor output to standard output
21: .br
22: .TP
23: .B -A
24: sends parameters to main program
25: .br
26: .TP
27: .B -c
28: allows creation of a
29: .I rpl-core
30: file, providing a way to debug a program
31: .br
32: .TP
33: .B -d
34: debugs memory allocations inside RPL/2. Do not use if you do not
35: know what you do!
36: .br
37: .TP
38: .B -D
39: launches RPL/2 in daemon mode
40: .br
41: .TP
42: .B -h
43: shows a summary of available options
44: .br
45: .TP
46: .B -i
47: runs the RPL/2 sequencer in interactive mode. This option can't be used
48: with a program name as argument
49: .br
50: .TP
51: .B -l
52: prints the user licence of the software
53: .br
54: .TP
55: .B -n
56: ignores HUP signal
57: .br
58: .TP
59: .B -p
60: precompiles scripts before execution
61: .br
62: .TP
63: .B -P or -PP
64: computes profile data
65: .br
66: .TP
67: .B -s
68: disables splash screen
69: .br
70: .TP
71: .B -S
72: executes script on command line
73: .br
74: .TP
75: .B -t
76: enables tracing mode. Each internal operation is echoed on standard
77: output
78: .br
79: .TP
80: .B -v
81: prints the version number
82: .br
83: .RE
84: .SH "EXIT STATUS"
85: The sequencer returns a value of 0 if no error occurs when running a
86: program, else it returns a nonzero value.
87: .SH "PREREQUISITES AND VARIOUS ADVICES"
88: RPL_TMP_PATH env variable is used to specify the location of tempfiles.
89: If this variable is not set, RPL/2 tries to use /tmp, /var/tmp or ./.
90: It is also recommended to
91: use
92: \fIgnuplot\fR,
93: \fITeX/LaTeX\fR,
94: \fIdvips\fR and
95: \fIgv\fR in association with RPL/2, to get advanced graphical
96: capabilities
97: .SH "RELATED STANDARDS"
98: The RPL/2 sequencer is compliant with the HP-28S calculator user manual,
99: and with the HP-28S itself, in its 2BB version (C) HP 1986-1987.
100: Some operations dealing with complex numbers are not following the
101: definitions from HP, because they are bogus. The main such operations
102: are transposition and scalar product.
103: .SH "DELIMITERS"
104: .br
105: .TP
106: .B "none"
107: scalar, integer or real number, coded with at least 64 bits;
108: .br
109: .TP
110: .B "( )"
111: complex number, coded with at least 128 bits;
112: .br
113: .TP
114: .B "#"
115: binary integer, 64 bits of length;
116: .TP
117: .B "<< >>"
118: user-defined function, or equation (expressed in RPN);
119: .br
120: .TP
121: .B "' '"
122: algebraic equation or variable name;
123: .br
124: .TP
125: .B "[ ]"
126: scalar vector;
127: .br
128: .TP
129: .B "[[ ]]"
130: scalar matrix;
131: .br
132: .TP
133: .B "<[ ]>"
134: table;
135: .br
136: .TP
137: .B """ """
138: character string;
139: .br
140: .TP
141: .B "{ }"
142: list containing various objects. A list might contain other lists;
143: .TP
144: .br
145: .B "/* */"
146: comment;
147: .br
148: .TP
149: .B "//"
150: comment running to the end of a line;
151: .br
152: .SH "INSTRUCTIONS"
153: We list in this section the build-in instructions of the language. Some
154: might be written in several ways; the alternatives ways are listed
155: between parenthesis. Definitions between parenthesis in a structure are
156: optional. Instructions written in upper case are not case-sensitive.
157: .br
158: .TP
159: .B "CONTROL STRUCTURES"
160: IF/THEN/(ELSEIF/THEN)/(ELSE)/END, IFT, IFTE,
161: SELECT/CASE/THEN/END/(DEFAULT)/END
162: .br
163: .TP
164: .B "ERROR HANDLING"
165: CLRERR, ERRM, ERRN, IFERR/THEN/(ELSE)/END
166: .br
167: .TP
168: .B "LOOPS PROVIDING A COUNT"
169: FOR/(CYCLE)/(EXIT)/NEXT, FOR/(CYCLE)/(EXIT)/STEP, FORALL/(CYCLE)/(EXIT)/NEXT
170: .br
171: .TP
172: .B "LOOPS WITHOUT COUNT"
173: START/(CYCLE)/(EXIT)/NEXT, START/(CYCLE)/(EXIT)/STEP
174: .br
175: .TP
176: .B "UNDEFINED LOOPS"
177: DO/(EXIT)/UNTIL/(EXIT)/END, WHILE/(EXIT)/REPEAT/(EXIT)/END
178: .br
179: .TP
180: .B "INPUT/OUTPUT"
181: BEEP, CLMF, DISP, INPUT, KEY, PROMPT
182: .br
183: .TP
184: .B "DEBUGGING"
185: CONT, HALT, SST
186: .br
187: .TP
188: .B "STACK HANDLING"
189: CLEAR, COPY, DEPTH, DROP, DROP2, DROPN, DUP, DUP2, DUPN, EDIT, OVER, PICK,
190: ROLL, ROLLD, ROT, SWAP
191: .br
192: .TP
193: .B "WORKING WITH VARIABLES"
194: ->, CLUSR, PARAMETER, PRIVATE, PROTECT,
195: PURGE, RCEQ, RCL, RECALL, SAVE, SCONJ, SHARED,
196: SINV, SNEG, STATIC, STEQ, STO, STO+,
197: STO-, STO*, STO/, STORE, UNPROTECT, VARIABLE, VARS, VISIT, VOLATILE
198: .br
199: .TP
200: .B "ARITHMETICAL OPERATIONS AND ELEMENTARY CALCULUS"
201: +, -, *, /, ^ (**), =, %, %CH, %T,
202: ABS, ARG, C->R, CEIL, CONJ, DECR, DER,
203: DFT, EVAL, EXP, EXPM, FACT, FFT, FLOOR,
204: FP, IDFT,
205: IFFT, IM, INCR, INT, INV, IP, MANT, MAX, MCLRIN, MIN, MOD, NEG, ->NUM,
206: P->R, ->Q, R->C, R->P, RE, RELAX, SIGN, SQ, SQRT, TAYLR, XPON, XROOT
207: .br
208: .TP
209: .B "CONSTANTS"
210: e, FALSE, i, infinity, PI, TRUE
211: .br
212: .TP
213: .B "FORMATTING"
214: ENG, FIX, RND, SCI, STD, TRNC
215: .br
216: .TP
217: .B "LOGICAL AND BINARY OPERATIONS"
218: <, <= (=<), <>, >, >= (=>), ==,
219: AND, ASL, ASR, B->R, BIN, CF, DEC, EQV, FC?, FC?C, FC?S, FS?, FS?C, FS?S,
220: HEX, IN, NOT, OCT, OR, R->B,
221: RCLF, RCWS, RL, RLB, RR, RRB, SAME, SF, SL, SLB, SR, SRB, STOF,
222: STWS, XOR
223: .br
224: .TP
225: .B "TRIGONOMETRY"
226: ACOS, ASIN, ATAN, COS, D->R, DEG, ->HMS, HMS->,
227: HMS-, HMS+, R->D, RAD, SIN, TAN
228: .br
229: .TP
230: .B "LOGARITHMS"
231: ACOSH, ALOG, ASINH, ATANH, COSH, LN, LNP1, LOG,
232: SINH, TANH
233: .br
234: .TP
235: .B "SPECIAL FUNCTIONS"
236: BESSEL, GAMMA
237: .br
238: .TP
239: .B "STATISTICS"
240: CLS, COLS, COMB, CORR, COV, DRWS, MAXS, MEAN, MINS, NRAND, NS, PCOV, PERM,
241: PSDEV, PVAR, RAND, RCLS, RDGN,
242: RDZ, S-, S+, SCLS, SDEV, SPAR, STOS, SX, SX2, SXY, SY,
243: SY2, TOT,
244: UTPC, UTPF, UTPN, UTPT, VAR, XCOL, YCOL
245: .br
246: .TP
247: .B "DEALING WITH MATRIX AND VECTOR"
248: ->ARRAY (->ARRY), ARRAY-> (ARRY->), CNRM, COL+, COL-, COL->, ->COL, CON, COND,
249: CROSS, CSWP, DET, DOT, DIAG->, ->DIAG, EGV, EGVL,
250: GEGV, GEGVL, GET, GETC, GETI, GETR,
251: GLEGV, GREGV, IDN, LCHOL, LEGV, LQ, LSQ, LU, MAX, MIN,
252: PUT, PUTC, PUTI, PUTR, QR, RANK,
253: RCI, RCIJ, RDM, REGV, RNRM, ROW+, ROW-, ROW->, ->ROW,
254: RSD, RSWP, SCHUR, SIZE, SQ, SVD, SVL, TRN, UCHOL
255: .br
256: .TP
257: .B "DEALING WITH TABLES"
258: CRTAB, GET, L->T, PUT, T->L, ->TABLE, TABLE->
259: .br
260: .TP
261: .B "LISTS"
262: GET, GETI, HEAD, L->T, ->LIST, LIST->, POS, PUT, PUTI, REPL,
263: REVLIST, SIZE, SORT, SUB, T->L, TAIL
264: .br
265: .TP
266: .B "STRINGS"
267: CHR, CURRENC, LCASE, NUM, POS, RECODE, REGEX,
268: REPL, RGDL, RGDR, SIZE, SREV, ->STR, STR->, SUB,
269: TOKENIZE, TRIM, UCASE
270: .br
271: .TP
272: .B "EXPRESSIONS HANDLING"
273: OBGET, OBSUB, EXGET, EXSUB
274: .br
275: .TP
276: .B "FILE AND SOCKET HANDLING"
277: APPEND, BACKSPACE, CLOSE, CREATE, DELETE, FORMAT, INQUIRE, LOCK, OPEN, POLL,
278: READ, REWIND, SYNC, TARGET, UNLOCK, WFLOCK, WFSOCK, WRITE
279: .br
280: .TP
281: .B "GRAPHICAL OUTPUT AND PRINTING"
282: *D, *H, *S, *W,
283: AUTOSCALE, AXES, CENTR, CLLCD, CR, DEPND, DGTIZ, DRAW, DRAX, ERASE, EYEPT,
284: FUNCTION, HISTOGRAM, INDEP,
285: LABEL, LCD->, ->LCD, LINE,
286: LOGSCALE, MARK, NEWPLANE, PAPER,
287: PARAMETRIC, PERSIST, PLOT, PLOTTER, PMAX, PMIN, POLAR, PPAR, PR1, PRINT,
288: PRLCD,
289: PRMD, PRST, PRSTC, PRUSR, PRVAR, REDRAW, RES, SCATTER, SCALE, SLICE,
290: SLICESCALE, TITLE,
291: WIREFRAME
292: .br
293: .TP
294: .B "LIBRARIES"
295: EXTERNALS, REMOVE, USE
296: .br
297: .TP
298: .B "PROCESS"
299: ATEXIT, ATPOKE, CLRATEXIT, CLRATPOKE,
300: CLRFUSE, CLRMTX, CLRSMPHR, CLRSWI, CONTINUE, CRITICAL/END,
301: CRMTX, CRSMPHR, CSTOP, DAEMONIZE,
302: DETACH, FUSE, ISWI, MTXLOCK, MTXSTATUS, MTXTRYLOCK, MTXUNLOCK,
303: NRPROC, PEEK, POKE, PROCID, RCLSWI, RECV, RFUSE, RSTOP, SCHED,
304: SEND, SMPHRDECR, SMPHRGETV, SMPHRINCR, SMPHRTRYDECR,
305: SPAWN, STOP, STOSWI, SUSPEND,
306: SWI, SWILOCK, SWIQUEUE, SWISTATUS,
307: SWIUNLOCK, WFACK, WFDATA, WFPOKE, WFPROC, WFSWI, YIELD
308: .br
309: .TP
310: .B "MISC"
311: <<, >>, ABORT, ALARM, BACKTRACE, CIPHER,
312: CLRCNTXT, COMPRESS, CONVERT, COPYRIGHT, DATE, DIGEST, DROPCNTXT,
313: DUPCNTXT, HELP, IMPLICIT, ITRACE, JDATE, KILL, LAST, LOCALIZATION, LOGGER, MEM,
314: MEMLOCK, MEMUNLOCK,
315: PSHCNTXT, PSHPRFL, PULCNTXT, PULPRFL, RDATE, RESTART, RETURN,
316: SPLASH, SWAPCNTXT, SYSEVAL, TIME, TYPE, UNCOMPRESS,
317: VERIFY, VERSION, WAIT, WARRANTY, WORKDIR
318: .br
319: .TP
320: .B "DATABASES"
321: SQLCONNECT, SQLDISCONNECT, SQLQUERY
322: .br
323: .TP
324: .B "PREPROSSESSING"
325: #date, #define, #defeval, #else, #endif, #error, #eval, #file, #if,
326: #ifdef, #ifeq, #ifndef, #ifneq, #include, #line, #mode, #undef, #warning
327: .br
328: .RE
329: .SH "USEFUL LINKS"
330: .TP
331: .B http://www.rpl2.net
332: official WWW page of RPL/2;
333: .br
334: .TP
335: .B jkb@systella.fr
336: the author's email address;
337: .br
338: .TP
339: .B rpl2@rayleigh.systella.fr
340: RPL/2 mailing-list, useful to ask some advice, report bugs and talk
341: about new features
CVSweb interface <joel.bertrand@systella.fr>