home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format 74 / af074a.adf / archives / af74a2.lzx / ARcalcV2.0 / Docs / English / Arcalc.doc < prev    next >
Encoding:
Text File  |  1995-06-08  |  26.5 KB  |  717 lines

  1.  
  2.  
  3.  
  4.  
  5. Introduction
  6. ************
  7.  
  8.    `ARcalc' is a program, developed for the Amiga series of computers,
  9. that emulates a scientific calculator. `ARcalc' can be used with any
  10. Amiga model running a version of the operating system greater then 1.3.
  11.  
  12.    Version 2.1 of the operating system introduces a localization
  13. feature which allows programmers to write programs that are able to
  14. comunicate with the user in the language he chooses. `ARcalc' is able
  15. to make use of this feature, and is distributed with the files needed
  16. to localize the calculator menu items and error messages in a number of
  17. languages.  I decided not to localize the button labels, because even
  18. on a real calculator these are not usually localized.
  19.  
  20.    `ARcalc' provides almost every feature you might expect from a
  21. scientific calculator, including binary, hexadecimal and octal base
  22. calculation.  The trigonometric functions can be applied to values
  23. measured in degrees, radians, or decimal degrees; numbers can be
  24. rappresented in scientific notation, with fixed decimal point (allowing
  25. you to choose the number of decimal digits), or as a combination of
  26. formats. Every computation is performed with an internal double
  27. precision.
  28.  
  29.    The current release of `ARcalc' is version 2.0.
  30.  
  31.    Version 1.0 was never released, and was not localized. Version 1.11
  32. had some bugs fixed.  Versione 1.12 added iconization features (by
  33. pressing the "Icn" button that replaces the "Inf" button of previous
  34. versions). Version 2.0 adds the ability to cycle-jump over public
  35. screens, an ARexx port, standard AmigaDOS argument parsing, the ability
  36. to evaluate an expression specified on the command line without opening
  37. its interface.
  38.  
  39.    Remember that `ARcalc' does not work with versions of the operating
  40. system lower than 2.0; if you try to start it using an earlier version
  41. of the operating system, nothing will happen.
  42.  
  43.  
  44. Using ARcalc
  45. ************
  46.  
  47.    The program can be started from Workbench or Shell. It looks like a
  48. standard calculator, sitting on a public screen screen, in which you
  49. should recognise the display and the keyboard. To avoid confusion, the
  50. word `keys' will be used to indicate the Amiga keyboard keys, while the
  51. word `buttons' will be used to indicate the `ARcalc' keyboard keys.
  52.  
  53.    You may start `ARcalc' from shell with the following template:
  54.  
  55.    `ARcalc FONT/K,SIZE/K/N,SCREEN/K,EVAL/K'
  56.  
  57.    Note that the standard AmigaDOS argument parsing is a new feature of
  58. `ARcalc' V2.0.
  59.  
  60.    You can vary the font and font size used to display `ARcalc'. The
  61. font used, as many other initial characteristic that we will see later,
  62. is defined in a configuration file called `ARcalc.config' that would
  63. have to resides in the same directory as the `ARcalc' program. If this
  64. file is not present `ARcalc' uses the same font as Workbench. Starting
  65. from Shell, you can specify an alternate font by typing:
  66.  
  67.    `ARcalc FONT=<font name> SIZE=<Y dimension>'
  68.  
  69.    `ARcalc' will override the config file default, and will try to open
  70. the specified font. The font chosen is used for the keyboard labels and
  71. for the display, but not for the `ARcalc' menus.  It is also possible
  72. to change the font after the calculator has been started, using the
  73. `Set font ...' item in the `Settings' submenu of the `Project' menu.
  74. (*Note ARcalc menus::.)
  75.  
  76.    You can open the calculator on a different public screen by using
  77. the SCREEN parameter, as in the following example:
  78.  
  79.    `ARcalc SCREEN myscreen'
  80.  
  81.    If You just need to do a little shell calculation, you can use the
  82. EVAL parameter. By typing
  83.  
  84.    `ARcalc EVAL <expression>'
  85.  
  86.    the result of the evaluation will be printed on the CLI without
  87. opening `ARcalc' interface.
  88.  
  89.    `ARcalc' boot can fail for a number of reasons (not enough memory,
  90. font chosen too big, errors opening libraries..); if this happens the
  91. user is informed with an appropriate error message.
  92.  
  93.    The main feature of `ARcalc' is the ability to type complex
  94. expressions in the same way they are usually written. This can be done
  95. using either the Amiga keyboard or the `ARcalc' keyboard. You can see
  96. the expression you are typing at the top of the display; this is called
  97. the "edit area".  You can edit the expression using either the tipical
  98. Amiga string gadget shortcuts or the special `ARcalc' editing buttons.
  99.  
  100.    To calculate the result of the given expression, you have only to
  101. press the `RETURN' key, or to click the `=' button; the result will be
  102. displayed on the right side of the bottom of the display. This is
  103. called the "result area".  `ARcalc' uses the result area also to show
  104. you its messages about syntax or miscalculation errors.
  105.  
  106.    Note that if a syntax error is found in the typed expression, the
  107. cursor of the edit area indicates where the error is, while if a
  108. miscalculation occurs (e.g. a division by zero) the cursor position is
  109. meaningless.  For a complete list of the syntax/miscalculation errors,
  110. *Note ARcalc menus::, of this manual.
  111.  
  112.  
  113. Detailed description of ARcalc buttons
  114. **************************************
  115.  
  116.    Let's now see the meaning of `ARcalc' buttons.  There are four
  117. button types:
  118.  
  119.  
  120. Editing buttons
  121. ===============
  122.  
  123.    You can find this kind of button in the upper right part of the
  124. calculator.  They are:
  125.  
  126. `<='
  127.      (left arrow): allows you to move the cursor of the edit area one
  128.      character left.  You can do the same thing using the corresponding
  129.      Amiga keybord key.
  130.  
  131. `=>'
  132.      (right arrow): allows you to move the cursor of the edit area one
  133.      character right.  You can do the same thing using the
  134.      corresponding Amiga keybord key.
  135.  
  136. `Del'
  137.      (Delete): allows you to delete the character the cursor is over in
  138.      the edit area. You can do the same thing using the Amiga Del key.
  139.  
  140. `Bck'
  141.      (Backspace): allows you to delete the character at the left of the
  142.      cursor in the edit area. You can do the same thing using the Amiga
  143.      <- (backspace) key.
  144.  
  145. `Clr'
  146.      (Clear): allows you to clear the edit area, loosing the expression
  147.      you was editing.  You can do the same thing with the Amiga-Left X
  148.      shortcut.
  149.  
  150.  
  151. Status buttons
  152. ==============
  153.  
  154.    This kind of button modifies the status of the calculator. The
  155. status is showed as a set of abbreviations in the lower left part of
  156. the display; this is called the "status area". Note that the global
  157. state when you start `ARcalc' depends on the configuration file
  158. `ARcalc.config'; if this file is not found, default values are assumed.
  159.  
  160.    The status buttons are the following:
  161.  
  162. `Bse'
  163.      (numeric BaSE): allows you to choose the base in which you are
  164.      going to work, between binary, octal, decimal or hexadecimal. The
  165.      actual setting is shown in the status area, by one of the
  166.      following abbreviations:
  167.  
  168.     `dec'
  169.           decimal base
  170.  
  171.     `hex'
  172.           hexadecimal base
  173.  
  174.     `oct'
  175.           octal base
  176.  
  177.     `bin'
  178.           binary base
  179.  
  180.      Pressing the `Bse' repeatedly cycles through the bases, in the
  181.      following order:
  182.  
  183.      `... -> dec -> hex -> bin -> oct -> ...'
  184.  
  185.      When you change base, the actual expression is automatically
  186.      cleared.  This is because every number in the expression would
  187.      change it's value in the new base. When the base is not
  188.      hexadecimal, certain buttons become redundant (e.g. the `A', `B',
  189.      `C', `D', `E', `F' keys, if you are working with decimal base).
  190.  
  191.      Also note that `ARcalc' is able to use real numbers only in
  192.      decimal base; if you work in a different base you must use only
  193.      integer numbers. This implies that many functions, although still
  194.      available, are meaningless (e.g. the `sin(X)' function still
  195.      works, but X must be integer, and it returns only 0 or 1).  If the
  196.      `ARcalc.config' file is not present when starting, the decimal
  197.      base is used by default.
  198.  
  199. `Fse'
  200.      (Fixed,Scientific,normal): this button allows you to choose the
  201.      notation in which the results are shown. Pressing `Fse' repeatedly
  202.      cycles through the following options:
  203.  
  204.      `Fixed': indicated by the `fix' abbreviation; the results are
  205.      shown as numbers with a fixed number of decimal digits. You can
  206.      fix the number of decimal digits using the `Fix' button.
  207.  
  208.      `Scientific': indicated by the `sci' abbreviation; the results are
  209.      shown in the scientific form. Note that the number of digits fixed
  210.      with the `Fix' button is not longer related to the number of
  211.      decimal digits, instead it indicates the number of significant
  212.      digits.
  213.  
  214.      `normal': indicated by the `nor' abbreviation; the results are
  215.      shown using whichever of the above notations generates the
  216.      shortest string.
  217.  
  218.      Note that by changing format, the result shown in the result area
  219.      changes its format also. If the `ARcalc.config' file is not
  220.      present when starting, the normal format is used by default.
  221.  
  222. `Drg'
  223.      (Degrees, Radiant, Decimal Degrees (Grad)): this button allows you
  224.      to choose the measuring system unit for arcs in trigonometrical
  225.      functions.  Pressing `Drg' repeatedly cycles through the following
  226.      options:
  227.  
  228.         * `Degrees': indicated by the `deg' abbreviation.
  229.  
  230.         * `Radians': indicated by the `rad' abbreviation.
  231.  
  232.         * `Decimal Degrees': indicated by the `grad' abbreviation.
  233.  
  234.      If the `ARcalc.config' file is not present when starting, radians
  235.      are used by default.
  236.  
  237. `Fix'
  238.      (fix significant digits): this button allows you to fix the number
  239.      of significant digits or decimal digits, depending on the chosen
  240.      format. When you press this button in the result area you will see
  241.      the following display:
  242.  
  243.      `Set number of digits (0 - 9)'
  244.  
  245.      Now you should press one of the digit buttons of `ARcalc', from 0
  246.      to 9, fixing in this way the number of digits; if you press a
  247.      different button, nothing happen, the operation is aborted keeping
  248.      the same number of digits as before. Note that it does not matter
  249.      how many digits you fix: every calculation is performed in an
  250.      internal double precision format. If the `ARcalc.config' file is
  251.      not present when starting, the number of digits is fixed to 9 by
  252.      default.
  253.  
  254. `Inv'
  255.      (Inverse function): this button allows you to obtain the inverse
  256.      functions. When you press it, the `inv' abbreviation is displayed
  257.      in the status area: if the next button you press indicates a
  258.      function, and if is possible to invert this function, then you
  259.      will get it; otherwise the `Inv' press produces no effects.
  260.  
  261. `Hyp'
  262.      (Hyperbolic function): this button allows you to obtain the
  263.      hyperbolic functions.  When you press it, in the status area you
  264.      can see the `Hyp' abbreviation: if the next button you press
  265.      indicates a trigonometrical function, then you will get its
  266.      corresponding hyperbolic function; otherwise the `Hyp' pression
  267.      produces no effects.
  268.  
  269.  
  270. Text buttons
  271. ============
  272.  
  273.    This kind of button allows you to insert digits, functions, etc. in
  274. the expression. You can also do this using the Amiga keyboard, but
  275. these buttons offer a convenient shortcut. Note that the expression
  276. parser is not case sensitive, so you can type it in upper or lower
  277. case. The text buttons are:
  278.  
  279. `log'
  280.      if pressed alone produces the string `Log(', indicating the
  281.      *logarithm* function (using base 10); if you press `Inv' before,
  282.      you obtain the string `10^'.
  283.  
  284. `ln'
  285.      if pressed alone produces the string `Ln(', indicating the *natural
  286.      logarithm* function (using base e); if you press `Inv' before, you
  287.      obtain the string `e^'.
  288.  
  289. `x2'
  290.      if pressed alone produces the string `^2', indicating the square;
  291.      if you press `Inv' before, you obtain the string `Sqrt('
  292.      indicating the *squareroot* function.
  293.  
  294. `mod'
  295.      when pressed, produces the string `Mod(' indicating the function
  296.      *modulus*. `Mod(A,B)' is the remainder of the division A/B.
  297.  
  298. `sin'
  299.      if pressed alone produces the string `Sin(' indicating the
  300.      trigonometric function *sine*; if you press `Inv' before, you
  301.      obtain the string `ArcSin(', indicating the *arcsine* function;
  302.      note that result of these functions depends on the measuring
  303.      system unit chosen. If you press `Hyp' before, you obtain the
  304.      string `Sh(' or `ArcSh(', indicating the *hyperbolic sine* and its
  305.      inverse function;
  306.  
  307. `cos'
  308.      if pressed alone produces the string `Cos(', indicating the
  309.      trigonometric function *cosine*; if you press `Inv' before, you
  310.      obtain the string `ArcCos(' indicating the *arccosine* function;
  311.      note that result of these functions depends on the measuring
  312.      system unit chosen. If you press `Hyp' before, you obtain the
  313.      string `Ch(' or `ArcCh(' indicating the *hyperbolic cosine* and
  314.      its inverse function;
  315.  
  316. `tan'
  317.      if pressed alone produces the string `Tan(', indicating the
  318.      trigonometric function *tangent*; if you press `Inv' before, you
  319.      obtain the string `ArcTan(' indicating the *arctangent* function;
  320.      note that result of these functions depends on the measuring
  321.      system unit chosen. If you press `Hyp' before, you obtain the
  322.      string `Th(' or `ArcTh(' indicating the *hyperbolic tangent* and
  323.      its inverse function;
  324.  
  325. `and'
  326.      when pressed, produces the string `and' indicating the binary
  327.      *and* operator. The operand are implicitely forced to 32-bit
  328.      integers, before performing the operation.
  329.  
  330. `or'
  331.      when pressed, produces the string `or' indicating the binary *or*
  332.      operator. The operand are implicitely forced to 32-bit integers,
  333.      before performing the operation.
  334.  
  335. `not'
  336.      when pressed, produces the string `not' indicating the binary
  337.      *not* pre-operator. The operand are implicitely forced to 32-bit
  338.      integers, before performing the operation.
  339.  
  340. `xor'
  341.      when pressed, produces the string `xor' indicating the binary
  342.      *xor* operator. The operand are implicitely forced to 32-bit
  343.      integers, before performing the operation.
  344.  
  345. `fct'
  346.      when pressed, produces the string `Fact(' indicating the
  347.      *factorial* function.
  348.  
  349. `rnd'
  350.      when pressed, produces the string `Rnd(' indicating a
  351.      *one-parameter* function, for the generation of a pseudo-random
  352.      number. If x is the value of the parameter, the number will be
  353.      generated in the range `[0,X]' if X`>0', in the range `[X,0]'
  354.      otherwise.
  355.  
  356. `( & )'
  357.      these buttons produce the corresponding character.
  358.  
  359. `pi'
  360.      this button produces the string `Pi' indicating the symbolic
  361.      constant `PI', whose internal value is `3.14159265358979323846'
  362.  
  363. `e'
  364.      this button produces the string `e' indicating the symbolic
  365.      constant `e' (Napier's constant), whose internal value is
  366.      `2.718281828459045'.
  367.  
  368. `0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F'
  369.      when pressed,these buttons produce the corresponding character,
  370.      indicating a digit. Obviously, when you compose an expression, the
  371.      number interpretation depend on the numeric base you have set.
  372.      Note that all these keys will always work, even if in some bases
  373.      they should not be used.
  374.  
  375. `Exp'
  376.      this button produces the `E' character, that you have to use to
  377.      type a number in exponential form. This character is not different
  378.      from the e indicating the Napier's constant, or from the `E' digit
  379.      in hexadecimal base; its interpretation depend on the context in
  380.      which it is found.
  381.  
  382. `,'
  383.      this button produces the corresponding character, needed to
  384.      separate the arguments of a function. Only the `Mod(A,B)' function
  385.      has more than one argument, so you may feel that using keyboard is
  386.      sufficient, however this button has been included to preserve the
  387.      ability to use the calculator only by mouse.
  388.  
  389. `+,-,*,/,^'
  390.      these buttons produce the corresponding character, indicating the
  391.      *sum*, *difference, product, ratio* and *power* operators. Note
  392.      that the minus sign can also be used as a preoperator to modify
  393.      the sign of an operator.
  394.  
  395. `v,w,x,y,z'
  396.      these buttons produce the corresponding character, indicating one
  397.      of the five `ARcalc' variables. If, during the expression
  398.      evaluation, `ARcalc' finds one of this variables, it use its
  399.      current value.  To learn how to assign a value to a variable, see
  400.      the description of the `sto' button.
  401.  
  402.  
  403. Special buttons
  404. ===============
  405.  
  406.    This class consist of the buttons with special functionalities.
  407. These buttons are:
  408.  
  409. `sto'
  410.      allows you to store the value of the expression currently beingin
  411.      edited in a variable. When you press this button, the following
  412.      message is shown in the value area:
  413.  
  414.      `choose var. to store:'
  415.  
  416.      You should now press one of the five variable buttons: if you do,
  417.      the expression will be evaluated, and the result will be assigned
  418.      to the variable you chose. If you press any other button, instead
  419.      of a variable one, there is no effect.
  420.  
  421. `cpy'
  422.      this button allows you to insert, in the expression you are
  423.      editing, the value of the preceding evaluation, visible in the
  424.      value area.
  425.  
  426. `get'
  427.      this buttons allows you to copy a text from the Amiga clipboard, to
  428.      the edit area. In this way you can cut an expression from an
  429.      application, and inport it to `ARcalc', ready to be evaluated.
  430.      You can do the same using the `Paste Expression' item in the
  431.      `Clipboard' menu.
  432.  
  433. `put'
  434.      this buttons allows you to copy the value visible in the value area
  435.      to the Amiga clipboard (as a string). In this way you can cut the
  436.      result of an evaluation from `ARcalc', and paste it in an other
  437.      application.  You can do the same using the `Cut Result' item in
  438.      the `Clipboard' menu.
  439.  
  440. `='
  441.      by pressing this button, you start the expression evaluation. If no
  442.      syntax/evaluation errors are encountered, the result will be shown
  443.      in the value area, otherwise an error message will be shown in the
  444.      same area.  Note that, depending on the `AutoCLR' flag, the
  445.      expression text may or may not be cleared after the evaluation.
  446.      The `AutoCLR' flag value can be changed using the `AutoCLR' item
  447.      in the `Setting' submenu of the `Project' menu (*Note ARcalc
  448.      menus::.)
  449.  
  450.  
  451. ARcalc menus
  452. ************
  453.  
  454.    `ARcalc' has two menus, named as `Project' and `Clipboard' (using
  455. english localization).
  456.  
  457.    The `Project' menu has the following items:
  458.  
  459. `Settings'
  460.      this is a submenu with items as follows:
  461.  
  462.     `Set Font ...'
  463.           allows you to modify the font actually used to show the
  464.           calculator, using a standard Amiga font requester. If the
  465.           font you choose is too big, an error requester appears,
  466.           informing you about it. Note that the new font will not be
  467.           used the next time you start `ARcalc' if you do not use the
  468.           `Save defaults' option.
  469.  
  470.     `Use WB font'
  471.           this allows you to use the Workbench font, instead of one
  472.           chosen with the preceding item. Note that this is different
  473.           from using the previous item and specifying the Workbench
  474.           font. With this item, if you save the defaults, when the
  475.           calculator is started it looks for the current Workbench
  476.           font, that might have been changed from the last time you
  477.           used `ARcalc'.
  478.  
  479.     `AutoCLR'
  480.           this item acts like a switch, allowing to set the `AutoCLR'
  481.           flag on or off. If the flag is on, after every evaluation,
  482.           preformed with the `=' or `sto' buttons, or with the `RETURN'
  483.           key, the text of the expression in the edit area is cleared.
  484.           If this flag is off, the text is not cleared, allowing to
  485.           make changes to it and evaluate again.
  486.  
  487.     `Save defaults'
  488.           allows you to save some calculator settings in a file named
  489.           `ARcalc.config'. When `ARcalc' is started, it looks for this
  490.           file, and adopts the settings specified within it. The
  491.           following settings are saved:
  492.  
  493.              * Position of the calculator on the screen
  494.  
  495.              * Font (and Y dimension) used.
  496.  
  497.              * `AutoCLR' flag status
  498.  
  499.              * `ARcalc' status (numeric base, arc measuring system unit,
  500.                numeric format, number of significant digits).
  501.  
  502. `Jump'
  503.      This item is has been added in V2.0 of `ARcalc'; when you select it
  504.      `ARcalc' jumps on the next public screen available.
  505.  
  506. `About ...'
  507.      it shows a requester with informations about the program and its
  508.      author. The same function is performed by the `Inf' button in
  509.      `ARcalc'.
  510.  
  511. `Quit'
  512.      quits the program. The same effect is obtained pressing the
  513.      `ARcalc' CloseWindow gadget.
  514.  
  515.    The `Clipboard' menu has the following items:
  516.  
  517. `Cut Result'
  518.      copies the most recently evaluated result to the Amiga clipboard.
  519.      The same effect is obtained pressing the `ARcalc' `put' button.
  520.  
  521. `Paste Expression'
  522.      copies text from the Amiga clipboard to the edit area, skipping
  523.      non-alphanumeric characters. The same function is performed by the
  524.      `ARcalc' `get' button.
  525.  
  526.  
  527. Syntax/evaluation errors
  528. ************************
  529.  
  530.    Here is a detailed description of `ARcalc' error messages, shown in
  531. the result area of the display:
  532.  
  533.  
  534. Syntax errors
  535. =============
  536.  
  537.    * `Invalid Operator': after a valid operand, `ARcalc' found a
  538.      sequence of symbols not recognised as a valid operator.
  539.  
  540.    * `Missing digits in number': there are no digits after a decimal
  541.      point.
  542.  
  543.    * `Invalid Exponent': the exponent of a number written in the
  544.      exponential format, is too big, is missing, or is incorrect.
  545.  
  546.    * `Missing parenthesis': opened parenthesis has not been closed.
  547.  
  548.    * `Unknown operand': where an operand is expected, an unknown
  549.      sequence of symbols is found.
  550.  
  551.    * `Missing Operand': the expression is ended by an operator.
  552.  
  553.    * `Too many digits': in the numer there are too many digits.
  554.  
  555.  
  556. Evalutation errors
  557. ==================
  558.  
  559.    * `Underflow': during the evaluation the value has become too small
  560.      to be represented with a double precision format.
  561.  
  562.    * `Overflow' or `invalid number': during the evaluation the value
  563.      has become too big to be rappresented with a double precision
  564.      format.
  565.  
  566.    * `Division by zero': the divisor of a division must not be zero
  567.  
  568.    * `Division by zero in Modulus': the second argument of the Mod
  569.      function must not to zero
  570.  
  571.    * `ArcSin() argument out of domain': the argument of this function
  572.      must be in the range [-1,1]
  573.  
  574.    * `ArcCos() argument out of domain': the argument of this function
  575.      must be in the range [-1,1]
  576.  
  577.    * `ArcCh() argument out of domain': the argument of this function
  578.      must be >= 1
  579.  
  580.    * `ArcTh() argument out of domain': the argument of this function
  581.      must be in the range (-1,1) (excluding the limits themselves)
  582.  
  583.    * `Logarithm argument must be positive': the Ln() and Log() functions
  584.      are defined only for positive arguments.
  585.  
  586.    * `Sqrt() argument must not be negative': Sqrt() function is defined
  587.      only for argument >= 0
  588.  
  589.    * `Fact() argument must not be negative' the factorial function is
  590.      defined only for argument >= 0
  591.  
  592.  
  593. AREXX support
  594. *************
  595.  
  596.    Starting from version 2.0 `ARcalc' have a built in AREXX port called
  597. "ARCALCPORT".  You may write AREXX scripts or programs (like function
  598. plotters) using `ARcalc' as a function evaluation engine.
  599.  
  600.    `ARcalc' will ignore any command sent to its port if the OPTIONS
  601. RESULT flag is not set.
  602.  
  603.    Some AREXX command may fail. You may know if the command failed
  604. looking at the RC variable: if its value is 0 then the command didn't
  605. fail. If RC is not zero then the command failed.  In such case, and
  606. only from an AREXX script, a message explaining the problem may be found
  607. in the `ARCALC_ERROR' variable.
  608.  
  609.    You may find some little script in the AREXX directory of the
  610. distribution archive.
  611.  
  612.    Here follow the commands supported by `ARcalc':
  613.  
  614.    `EVAL' <expression>     Evaluate the given expression. The result will
  615. be in the RESULT variable if RC is     not zero. Otherwise you will find
  616. the error in the ARCALC_ERROR variable.
  617.  
  618.    `SETVAR' <variable> <expression>     Evaluate the given expression and
  619. put the result value in the given <variable>. The variable     may
  620. be one of the following: "u", "v", "w", "x", "y", "z". You may use
  621. these variables     to store temporary values in a complex computation. As
  622. for the previous command, in     case of error you may take a look
  623. to the ARCALC_ERROR variable.
  624.  
  625.    `GETVAR' <variable>     Return the value of the given variable in the
  626. RESULT variable of your script.
  627.  
  628.    `SETBASE' <base>     Set the given base. <base> can be "dec", "hex",
  629. "oct" or "bin". After you set a base     all the numbers involved in the
  630. expressions (and the results) are expressed in that base.
  631.  
  632.    `SETDRG' <drg>     Set the arc unit for trigonometric functions. <drg>
  633. can be "deg","rad" or "grad".
  634.  
  635.    `SETFIX' <digits>     Set the number of decimal digit. <digits> can be a
  636. number between 0 and 9.
  637.  
  638.    `SETFSE' <mode>     Set the notation in which the results are shown.
  639. <mode> can be "nor","fix" or "sci".
  640.  
  641.    `QUIT'     Quit `ARcalc'
  642.  
  643.  
  644. To do in the future
  645. *******************
  646.  
  647.    Version 2.0 implements the AREXX port previously mentioned in this
  648. chapter. Now...  any other suggestions are welcome.
  649.  
  650.  
  651. Acknowledgements
  652. ****************
  653.  
  654.    I wish to thank some people, for the help they have given me:
  655.  
  656.    * Marco Caimi, Federica Colla, Paolo Silvera, Marco Zandonadi, for
  657.      the beta testing of the program;
  658.  
  659.    * Steve McKinty for the english revision of this manual (I modified
  660.      something after his revision, so maybe it is not still perfect);
  661.  
  662.    * Reinhard Spisser for converting the doc in TexInfo;
  663.  
  664.    * All my *official localizers*, that made possible to distribute
  665.      `ARcalc' with so many languages:
  666.  
  667.         * Steve McKinty (english)
  668.  
  669.         * Reinhard Spisser (german)
  670.  
  671.         * Frank Bignone (french)
  672.  
  673.         * Fer de Jong (dutch)
  674.  
  675.         * Hannu Helminen (finnish)
  676.  
  677.         * Anders Hammarquist (swedish)
  678.  
  679.         * Soeren Berg Hansen (danish)
  680.  
  681.    * All the "Amiga comunity" of the Computer Science department,
  682.      University of Milan for their entusiasm that helped me much to
  683.      finish this project.
  684.  
  685.  
  686. Program and distribution notes
  687. ******************************
  688.  
  689.    `ARcalc V2.0' is a shareware program, (C) 1994,1995 Roberto Attias.
  690. You may freely distribute it as long as all of its files are included
  691. in their original form without additions, deletions, or modifications
  692. of any kind, and only a nominal fee is charged for its distribution; if
  693. you like it and use it, please be kind enough to send me $10 for my
  694. efforts. If you don't think this program is useful enough to pay for
  695. it, please, at least e-mail (or mail) me to tell me what you think of
  696. it, and suggest how can I improve it.
  697.  
  698.    This software is provided "AS IS" without any warranty of any kind,
  699. either expressed or implied. By using ``ARcalc'', you agree to accept
  700. the entire risk as to the quality and performance of the program.
  701.  
  702.    Any suggestions, comments, or complaints are welcome.
  703.  
  704.  
  705. How to reach the author
  706. ***********************
  707.  
  708.      e-mail: attias@ghost.sm.dsi.unimi.it
  709.      FIDO: 2:331/301.8
  710.  
  711.      Mail: Roberto Attias
  712.      Via Lissoni, 5
  713.      I-20162 Milano MI
  714.  
  715.      Phone: +39-(0)2-6470375
  716.  
  717.