home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / rexl / whatsnew.21 < prev   
Text File  |  1992-08-16  |  7KB  |  149 lines

  1.  
  2.      WHATSNEW.21:           What's new in version 2.1 of RExL:
  3.      ------------           ----------------------------------
  4.  
  5. 1.  New language features:
  6.  
  7.     Direct  access  to  database   fields  through  `@fieldname'  and
  8.     `@$fieldstr' construction.  This feature also  supports access to
  9.     multiple   databases  by   using  `@dbase.fieldname'.   (See  the
  10.     ADDRESS.RXL application for a few examples.)
  11.  
  12. 2.  New functions:
  13.  
  14.     DTdayofyear() : returns day of year for given date
  15.     HELP()        : switch help on and off
  16.     OSdriveok()   : tests if specified drive is ready
  17.     PUSHSCR()     : stores contents of screen to memory
  18.     POPSCR()      : restores contents of screen from memory
  19.     DBrseek()     : Seeks records in alternate data files
  20.  
  21. 3. New functions in editor:
  22.  
  23.    a. Block delete, move and copy  in main editor. This operates in a
  24.       similar manner to the ordinary scrap buffer, except it operates
  25.       on blocks of  text, rather than on strings  of characters. Note
  26.       that the breakpoint character in  version 2.00, the triple line
  27.       character, `≡'  CHAR$(240), is now used  to indicate that there
  28.       is  text in  the line  buffer and  the breakpoint character has
  29.       been changed to the small box character, `■' CHAR$(254).
  30.  
  31.    b. New menu options:
  32.  
  33.        i. `New' file option in file menu: For clearing out the editor
  34.            and starting a new file.
  35.  
  36.       ii. `Write to'  option in  file menu:  For  writing the current
  37.           application  to  a  new  file,  and  then opening the newly
  38.           created file.
  39.  
  40.      iii. `Default  screen'  option  in  edit  menu: For  selecting a
  41.           default screen. When the screen  designer is creating a new
  42.           screen, the default screen will be loaded automatically.
  43.  
  44.       iv. `Runtime stack  size' option  in options  menu:  For  stack
  45.           intensive applications, the runtime-debugger stack size can
  46.           now be specified.
  47.  
  48.    c. Direct hotkey to debugger on <Ctrl-F9> and runtime on <F9>.
  49.  
  50.    d. Faster and  more accurate (see below) field  handling in screen
  51.       designer.
  52.  
  53.    e. Hotkey for box drawing  in screen designer and more information
  54.       in the screen designer status line (on <Ctrl-S>).
  55.  
  56.    f. The help file now requires about  half as much memory in 2.1 as
  57.       it did in 2.0.
  58.  
  59. 4. New functions in runtime-debugger:
  60.  
  61.    a. Validation of date and time input fields.
  62.  
  63.    b. Smart screen swapping in  debugger. The debugger can now detect
  64.       if  the line  being executed  can change  the screen,  and will
  65.       swap only when necessary (can be toggled on and off).
  66.  
  67.    c. The debugger  also has a new list, the  call stack, to show the
  68.       current inference chain.
  69.  
  70.    d. The size of the runtime stack can be set by a  new command line
  71.       option.
  72.  
  73.    e. The debugger  `Animate execution'  hotkey has  been moved  from
  74.       <Alt-F7> to <Alt-F4> for conformity with other debuggers.
  75.  
  76. 5. An all-new new postfix compiler has been added to the set of tools
  77.    available. This  program takes a RExL  application image, converts
  78.    the internal  format to a much  more efficient one and  places the
  79.    converted code  with the screen  file in DOS  executable file. The
  80.    resulting file can be distributed  as a standalone application and
  81.    does not need the application image  file, the screen file nor any
  82.    of the  various runtime modules. Speed  increases are typically of
  83.    the order of 200 to 400 percent, depending on the application.
  84.  
  85. 6. Note that your old configuration file (REXL.CFG) is not compatible
  86.    with the new one. RExL will display an error if you load RExL with
  87.    an old config file in the current directory.
  88.  
  89.    Also, your  application files will  have to exported  from earlier
  90.    versions using  the ASCII|Save file menu  option and then reloaded
  91.    into version 2.1 using the ASCII|Load file option. This is because
  92.    of changes in the internal listing format.
  93.  
  94. 6. All  RExL  executable  files  now  have integral  proprietry virus
  95.    checking  code which  will  detect  executable file  infection for
  96.    about 95% of known viruses.
  97.  
  98.  
  99. Changes and bugfixes from version 2.00 :
  100. ----------------------------------------
  101.  
  102. 1. The  syntax  checker  failed  to  flag  an  error when a  function
  103.    requiring a  numeric parameter was  passed a function  returning a
  104.    string (it  worked ok when  passed a string  constant or a  string
  105.    variable). In certain very  obscure expressions unary minuses were
  106.    not recognised as such.
  107.  
  108. 2. The box  draw in the screen designer failed  to clear the contents
  109.    of  an  `overwrite'  box  if  insert  mode  had  been toggled in a
  110.    previous line drawing operation.
  111.  
  112. 3. In  the screen designer, a  field move operation would  generate a
  113.    spurious `Area crosses fields' error  message when the moved block
  114.    overlaid fields  which were already  contained in the  block being
  115.    moved. The field movement code has been entirely rewritten.
  116.  
  117. 4. Function upper  case/lower case did not work  in debugger. In 2.1,
  118.    it is preset to the same value as that in the editor.
  119.  
  120. 5. Extra  blank lines were  written at the  end of every  rule in the
  121.    ASCII listing when a listing had been loaded and then re-saved.
  122.  
  123. 6. Under certain conditions, a reference search for a variable in the
  124.    variable  list would  return some  incorrect rule  references, and
  125.    miss out others. This was caused by an late change in the internal
  126.    listing format which was  overlooked  in  the  variable  reference
  127.    location code.
  128.  
  129. 8. Certain times caused rounding  errors when passing values back and
  130.    forth between  DTtimevalue(), DTtime$() and  other time functions.
  131.    Further minor rounding inaccuracies occurred in the variable watch
  132.    window in  the debugger when  viewing certain numbers.  Values are
  133.    now displayed to a maximum of 15 significant digits.
  134.  
  135. 9. Rules whose first line was blank were not interpreted correctly by
  136.    the inference engine when looped using While and BackTo.
  137.  
  138. 10. The rules  regarding what constitutes valid dates  and times have
  139.     been tightened up. The rules used in 2.00 sometimes permitted odd
  140.     and incorrectly formatted strings to be passed as valid.
  141.  
  142. 11. DBselndx() and  DBseldbf() now  return 1  for success  and 0  for
  143.     failure, instead of the previously selected database/index file.
  144.  
  145. 12. The operation of <Ctrl-Left> and <Ctrl-Right> during string input
  146.     in the  editor and runtime  modules has been  changed and is  now
  147.     more intuitive.
  148.  
  149.