home *** CD-ROM | disk | FTP | other *** search
/ PC Consument 1998 January / PCC11998.bin / demos / euphor.exe / RELNOTES.DOC < prev    next >
Encoding:
Text File  |  1997-03-20  |  10.2 KB  |  276 lines

  1.             ---------------------------
  2.                 Euphoria Version 1.5 
  3.                   March 21, 1997
  4.                    Release Notes 
  5.             ---------------------------
  6.  
  7.  Version 1.5 Official Release:
  8.  
  9.  * In addition to handling sequences of characters, the library routines 
  10.    upper() and lower() now handle atoms and arbitrarily-complex sequences
  11.    (and they've been shrunk to just ONE line of code each).
  12.    
  13.  * Performance improvement: hex constants in the range #2000000 to #3FFFFFFF, 
  14.    and decimal constants in the range 1000000000 to 1073741823 were being 
  15.    stored internally as floating-point numbers. They are now stored as machine 
  16.    integers to save space and time.
  17.    
  18.  * Some further improvements were made to the documentation.
  19.  
  20.  
  21.  Version 1.5 beta-2, March 1997:
  22.  
  23.  * The following library routines have been added. They are described fully
  24.    in library.doc.
  25.    
  26.         allow_break - lets you prevent control-c/control-break from terminating
  27.                       your program
  28.         
  29.         check_break - lets you detect that control-c/control-break has been
  30.                       pressed
  31.  
  32.         mem_copy    - fast routine for copying a block of memory
  33.         
  34.         mem_set     - fast routine for setting a block of memory to a value
  35.  
  36.         atom_to_float32 - convert an atom to 32-bit IEEE floating-point format
  37.         
  38.         atom_to_float64 - convert an atom to 64-bit IEEE floating-point format
  39.         
  40.         float32_to_atom - convert from 32-bit IEEE format to an atom
  41.         
  42.         float64_to_atom - convert from 64-bit IEEE format to an atom
  43.         
  44.         get_all_palette - get the palette values for all colors 
  45.  
  46.         save_bitmap - create a .BMP file, given a palette and a 2-d sequence 
  47.                       of sequences of any size
  48.  
  49.  * The editor, ed, will no longer terminate when control-c/control-break are
  50.    pressed.
  51.  
  52.  * The accuracy of the time-profiler was improved significantly.
  53.  
  54.  * The documentation was clarified in many places.
  55.  
  56.  * "Bucket sort" was added to allsorts.ex.
  57.  
  58.  * without warning / with warning was removed from image.e. It could interfere
  59.    with your own use of "without warning".
  60.  
  61.  * BUG FIXED: A bug was fixed in the ex.exe storage allocator. It could, in 
  62.    very rare situations, cause a program to crash.
  63.  
  64.  
  65.  Version 1.5 beta-1, February, 1997:
  66.  
  67.  * The following library routines have been added. They are described fully
  68.    in library.doc.
  69.         
  70.         save_screen - saves all or part of the screen as a .BMP file
  71.                       
  72.         arctan      - arctangent 
  73.         
  74.         and_bits    - bitwise AND 
  75.         or_bits     - bitwise OR
  76.         xor_bits    - bitwise XOR
  77.         not_bits    - bitwise NOT
  78.     
  79.     get_vector  - get address of current interrupt handler
  80.     set_vector  - set new address for interrupt handler
  81.     lock_memory - lock a region of memory so it can't be swapped out
  82.  
  83.  * A demo program has been added that shows how to redirect a hardware 
  84.    interrupt to your own machine-code handler. See demo\hardint.ex
  85.    
  86.  * The trace screen is updated much faster in graphics modes. Also, in modes 
  87.    that can only show 40 characters or less of text per line, the line number 
  88.    has been dropped so there's more room to display your source code.
  89.  
  90.  * Registration information has been moved to a new directory called REGISTER.
  91.    The program HOW2REG.EX will assist you in choosing the most convenient
  92.    way to register or upgrade. It can even make an order form for you.
  93.    
  94.  * Help text displayed in ed is now shown in a new edit window, so you can 
  95.    continue to view your program while reading the help text.
  96.  
  97.  * A customizable command (F12) has been added to ed. It's set up to 
  98.    comment-out the current line, but you can easily change it to perform
  99.    any series of keystrokes. See ed.doc.
  100.  
  101.  * Euphoria will switch to a clear, text-mode screen before printing
  102.    your "crash message" - see crash_message().
  103.    
  104.  * Some extra optimizations have been added. Many programs now run a few 
  105.    percent faster, particularly on Pentium systems. 
  106.  
  107.  * Warnings about "the value assigned to variable x is not used" have been
  108.    eliminated. They were almost always just a nuisance, and did not
  109.    indicate a real problem. You will still be warned about variables or 
  110.    constants that you declare but never use.
  111.  
  112.  * The "Press Enter" prompt that would sometimes appear after an error has 
  113.    been eliminated.
  114.     
  115.  * The time profiling feature has been improved since the alpha release.
  116.    It now requires less memory. If you got a "subprogram is too large" 
  117.    error, try again, it will probably work now.
  118.  
  119.  * install.ex now handles the case of no autoexec.bat file, or no 
  120.    PATH command in autoexec.bat, and gives a better warning if you 
  121.    try to run install.ex again after you've already installed.
  122.  
  123.  * BUG FIXED: The line number information on a run-time error trace-back
  124.    was often incorrect for programs larger than about 5000 statements.
  125.    The time profile for such a program could also show incorrect values.
  126.  
  127.  * BUG FIXED: bind would fail when the last line of a file was lacking 
  128.    a \n character. (with ed or MS-DOS edit this can't happen, but it can 
  129.    with some other editors)
  130.  
  131.  * BUG FIXED: bind ..\..\myprog  would fail to automatically add the 
  132.    ".ex" suffix to myprog
  133.  
  134.  * BUG FIXED: characters greater than 127 inside a double-quoted string
  135.    had 2's complement negative values (they would still print ok).
  136.    Inside a single-quoted constant they were positive as they should be.
  137.  
  138.  * BUG FIXED: During tracing, pokes to the screen would display characters 
  139.    immediately on the trace screen, instead of the main output screen.
  140.    Similarly, peeks would read from the trace screen instead of from the
  141.    main screen.
  142.  
  143.  
  144.  Version 1.5 alpha, December 1996:
  145.  
  146.  * You can now get accurate time profiles, in addition to the statement-count
  147.    profiles that were previously available. Use: with profile_time
  148.  
  149.  * You can use tick_rate() to control the rate at which clock-tick
  150.    interrupts occur on your system while your program is running.
  151.    This lets you improve the precision of the time() routine, as well as
  152.    giving you more accurate time profiles.
  153.    
  154.  * ex.exe now uses 4 bytes less memory for each floating-point number and
  155.    4 bytes less memory for each sequence. e.g. a value such as: {1.3, -8.9}
  156.    would require 12 bytes less memory.
  157.  
  158.  * The "Viper" video card is now better supported for SVGA modes.
  159.  
  160.  * display_image() and save_image() have been sped up by about 5 to 10
  161.    percent.
  162.    
  163.  * BUG FIXED: ex.exe might crash when a variable was initialized with 
  164.    extremely large amounts of data at the top-level of a program.
  165.    
  166.  
  167.  Version 1.4b, October 1996:
  168.  
  169.  * mset.ex has a more visible selector box on it's grid. It has also been
  170.    sped up by having it write out an entire row of pixels with each call
  171.    to pixel().
  172.  
  173.  * ed.ex now allows special characters greater than ASCII 127 to be entered by
  174.    pressing the ALT key and typing digits on the numeric keypad.
  175.  
  176.  * ed will now display the error message and line of error even if the 
  177.    offending file was included using a filename extension of ".E" rather than
  178.    the standard ".e".
  179.  
  180.  * eprint.ex now resets the printer back to normal after printing in 
  181.    condensed mode.
  182.  
  183.  * BUG FIXED: Assignment statements of the form:  s[a..b] = i
  184.    where i has an integer value, were performed correctly but with
  185.    a side-effect that could cause the program to crash later on. 
  186.  
  187.  * BUG FIXED: poke(a, s) where s is a sequence containing some non-integer 
  188.    values, was failing to convert floating-point values to integers and was not 
  189.    complaining about sequence values contained in s.
  190.  
  191.  * BUG FIXED: In some cases bind.ex was not automatically adding ".ex" to the 
  192.    file name when you tried to bind a program that was not in the current 
  193.    directory.
  194.  
  195.  
  196.  Version 1.4a, July 1996:
  197.  
  198.  * crash_message() library routine added to machine.e. See library.doc.
  199.  
  200.  * Programs bound by registered users will now produce run-time error 
  201.    diagnostics regardless of the size of the program.
  202.  
  203.  * Extra information was added to the documentation regarding:
  204.       - system()
  205.       - abort()
  206.       - get_mouse()
  207.       - installing Euphoria when there isn't much memory available 
  208.       - binding and shrouding
  209.  
  210.  * shroud.bat has a new option "-full_keywords" to let you shroud a program
  211.    but not reduce keywords to a single-byte. This can help you to decipher
  212.    ex.err dumps generated against bound or shrouded code.
  213.       
  214.  * Several other very minor improvements were made in the documentation and
  215.    example programs.
  216.  
  217.  * BUG FIXED: If you selected both "with profile" and "with trace" then the 
  218.    "last 25 lines executed" portion of ex.err would not appear.
  219.  
  220.  * BUG FIXED: A couple of minor bugs were fixed in bind.ex. 
  221.  
  222.  
  223.  Highlights of Previous Releases:
  224.  
  225.  Version 1.4, May 1996:
  226.  
  227.  * You can now convert any Euphoria program into a stand-alone .exe file.
  228.    
  229.  * The separate DOS4GW.EXE DOS extender file has been eliminated. 
  230.  
  231.  * Windows 95 long filename support 
  232.  
  233.  * DOS software interrupts
  234.  
  235.  * New utility programs: key.ex, where.ex, ascii.ex, guru.ex
  236.  
  237.  * New demo program: dosint.ex
  238.  
  239.  * New library routines: set_rand(), use_vesa() 
  240.    
  241.  * You can peek or poke an entire sequence of bytes  
  242.  
  243.  * Editor enhancements
  244.  
  245.  * Reduction in space overhead for sequences   
  246.  
  247.  
  248.  Version 1.3, June 1995:
  249.  
  250.  * You can now edit multiple files using multiple edit windows. 
  251.    
  252.  * 20 new library routines were added 
  253.  
  254.  * Graphics performance was greatly improved.
  255.  
  256.  
  257.  Version 1.2, March 1994:
  258.   
  259.   * A problem that prevented Euphoria from running in a DOS prompt under 
  260.     Windows was eliminated.
  261.    
  262.  
  263.  Version 1.1, January 1994:
  264.   
  265.   * Several language features and demo programs were added.
  266.  
  267.  
  268.  Version 1.0, July 1993:
  269.   
  270.   * Euphoria was first released after 3 years of research and development
  271.     and 6 months of Beta testing. Many of the ideas behind Euphoria came
  272.     from Robert Craig's Master's Thesis in Computer Science at the University
  273.     of Toronto. That thesis was strongly influenced by the work of John Backus
  274.     on functional programming (FP) languages.
  275.     
  276.