MINERVA1.2

The release contains many changes for ease of use and functional extensions:

  1. This version executes on Java 1.1 and on Java 1.2.

    Support for the Java 1.0 API was discontinued, (thus e.g. JDK1.0.2, Internet Explorer 3.0 and Netscape Navigator 3.0 are not sufficient for MINERVA.)

  2. Internationalization MINERVA now accepts the parameter -encoding Encoding to open all files for reading/writing in a given character encoding by default.

    MINERVA now accepts the parameter -syntax strict|classic to use unicode character mapping vs ascii-only for reading.

    open/3/4 accepts an option encoding(Encoding) to open individual files in the specified encoding. Encoding is e.g. 8859_1, EUCJIS, SJIS, UnicodeLittle etc for ascii, euc, sjis, and little-endian unicode respectively.

    open/3/4 accepts an option syntax(Syntax) to open individual files in the specified encoding. Syntax is strict or classic for unicode mapping or ascii-only mapping of characters.

    For *.mpk MINERVA package files their encoding can be specified in the using *.msp MINERVA Startup Properties file with entries encoding.Interface=Encoding like:

    	file.system.mpk=stdlib/system.mpk
    	file.gui.mpk=gui/gui.mpk
    	encoding.system.mpk=8859_1
    	encoding.guibuilder.mpk=8859_1
    

  3. User defined arithmetic functions:
    	foo(x,2).
    	?- N is foo(x) + 1.
    

  4. Loading of program files from URLS like
    	load('ftp://machine/file.mbc')
    	load('http://machine/file.mbc')
    	load('directory/file.mbc')
    

  5. minervar MINERVA Archiver - Application bundling tool for compact and fast loading applets and applications. Generates a *.mca MINERVA Compressed Archive file from the libraries and other files referenced in a *.msp file.

    Examples:

    	minervar minerva
    	minervar myservice
    

    Such a bundle may contain various files and is primarily intended for *.mbc MINERVA binary code files. It should contain one package package.main. This will be loaded if no file (-l option) with a main/1 definition is specified. It is expected that this package contains a predicate main/1 which will serve as the entry to the application.

    MINERVA knows the parameter -c Name, used to announce a *.mca file to MINERVA. You should be able to notice the advantage mainly when loading over the net.

    As a result, you can now write MINERVA applets that require only two HTTP GET operations, thus dramatically decreasing loading times over networked connections.

  6. A new predicate get_property(+Name, -Value) delivers the value of a property defined in the *.msp MINERVA startup property file.

    Example:

    	get_property('license.licensee', Owner).
    

  7. reflect package. This package facilitates on-the-fly access to any Java library. If a number is required for a method or constructor, a MINERVA number is acceptable, for a string an atom, for an array a list, for a boolean the atom 'true' or 'false'.

    Objects can be created with constructors, arrays with create_array/3.

  8. major extension of the interface from Java to MINERVA. This modification is not backward compatible to previous releases of MINERVA.

  9. revision and extension of the online documentation

  10. more tests on a wider range of platforms

  11. easier installation with most examples executable via both file:/ and http:// addresses.

  12. faster character processing (atom_chars/2, get_char/1/2, put_char/1/2)

You have feedback on this release or requests for the next? Please let us know!


Darueber read on...