File:  [local] / rpl / man / rpl.1.in
Revision 1.31: download - view: text, annotated - select for diffs - revision graph
Fri Dec 21 10:56:05 2018 UTC (5 years, 3 months ago) by bertrand
Branches: MAIN
CVS tags: rpl-4_1_34, rpl-4_1_33, rpl-4_1_32, rpl-4_1_31, rpl-4_1_30, rpl-4_1_29, HEAD
Série de patches pour compiler correctement avec gcc 8.x.

    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, RECORD, 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: NBRCPUS,
  304: NRPROC, PEEK, POKE, PROCID, RCLSWI, RECV, RFUSE, RSTOP, SCHED,
  305: SEND, SMPHRDECR, SMPHRGETV, SMPHRINCR, SMPHRTRYDECR,
  306: SPAWN, STOP, STOSWI, SUSPEND,
  307: SWI, SWILOCK, SWIQUEUE, SWISTATUS,
  308: SWIUNLOCK, WFACK, WFDATA, WFPOKE, WFPROC, WFSWI, YIELD
  309: .br
  310: .TP
  311: .B "MISC"
  312: <<, >>, ABORT, ALARM, BACKTRACE, CIPHER,
  313: CLRCNTXT, COMPRESS, CONVERT, COPYRIGHT, DATE, DIGEST, DROPCNTXT,
  314: DUPCNTXT, HELP, IMPLICIT, ITRACE, JDATE, KILL, LAST, LOCALIZATION, LOGGER, MEM,
  315: MEMLOCK, MEMUNLOCK,
  316: PSHCNTXT, PSHPRFL, PULCNTXT, PULPRFL, RDATE, RESTART, RETURN,
  317: SPLASH, SWAPCNTXT, SYSEVAL, TIME, TYPE, UNCOMPRESS,
  318: VERIFY, VERSION, WAIT, WARRANTY, WORKDIR
  319: .br
  320: .TP
  321: .B "DATABASES"
  322: SQLCONNECT, SQLDISCONNECT, SQLQUERY
  323: .br
  324: .TP
  325: .B "PREPROSSESSING"
  326: #date, #define, #defeval, #else, #endif, #error, #eval, #file, #if,
  327: #ifdef, #ifeq, #ifndef, #ifneq, #include, #line, #mode, #undef, #warning
  328: .br
  329: .RE
  330: .SH "USEFUL LINKS"
  331: .TP
  332: .B http://www.rpl2.net
  333: official WWW page of RPL/2;
  334: .br
  335: .TP
  336: .B jkb@systella.fr
  337: the author's email address;
  338: .br
  339: .TP
  340: .B rpl2@rayleigh.systella.fr
  341: RPL/2 mailing-list, useful to ask some advice, report bugs and talk
  342: about new features

CVSweb interface <joel.bertrand@systella.fr>