Metropoli BBS
VIEWER: change.log MODE: TEXT (ASCII)
===============================================================================
==========================                         ============================
==========================     VERSION HISTORY     ============================
==========================                         ============================
===============================================================================


     For easy reference, this history is presented in reverse order (most
     recent version first).  Remember:  if you have previously registered
     Parse-O-Matic, you can  self-register  any trial (test-drive) copies
     we create for a period of two years.  Thus, your small investment in
     the initial registration can provide you with a lot of free updates.
     Since we do not automatically ship new versions, we encourage you to
     drop by our BBS at 514-345-8654 every few months, to see what's new.

+-----------------------------------------------------------------------------+
|                                                                             |
|    Most of the enhancements to Parse-O-Matic are inspired by POM users.     |
|    We charge a nominal fee for custom work, but we will usually provide     |
|    a discount if the requirement seems to be beneficial to other users.     |
|    POM's evolution has been guided almost entirely by our customers.        |
|                                                                             |
+-----------------------------------------------------------------------------+


------ ------------------------------------------------------------------------
 VER.  WHAT'S NEW IN THIS VERSION
------ ------------------------------------------------------------------------

3.20A  Parsing of multiple input files into one output file
         DOS wildcards are now permitted in POM command for input file name
           For example:  POM XYZ.POM *.TXT OUTPUT.TXT
         New NEXTFILE command skips to next input file
         New predefined variable $COMMAND, showing current POM command
       New PEEL command
         Works like PARSE, but removes parsed text from source variable
       New SOUND command
         Sets error-message sound or generates a sound
       The DONE and READNEXT commands now have optional comparisons
         For example:  DONE x = y
       Restructured example files as an interactive tutorial
       Enhancements for unattended operation
         Log file (POMLOG.TXT) records processing, and any errors
         Error and warning messages pause for a minute, then the program ends
       Fixed problem with ELSE statements nested two deep

------ ------------------------------------------------------------------------
 VER.  ENHANCEMENTS IN PREVIOUS VERSIONS
------ ------------------------------------------------------------------------

3.11A  DBF file enhancements
         Improved reporting of DbF fields when tracing
         Corrected data alignment error that affected some DbF files

3.10A  New ELSE command
         Allows BEGIN/ELSE/END blocks
       New READNEXT command
         Reads next line from input file, maintaining current place in POM file
       New SETLEN command
         Sets a variable to the length of a value (e.g. "XYZ" is length "3")
       New DONE command (useful only in BEGIN/ELSE/END blocks)
         Jumps to the end of the POM file; equivalent to IGNORE "X" = "Y"
       New ~ comparator ("does not contain")
       PARSE returns a null value if given impossible parsing task
         Example: PARSE x "FRED/MARY" "1*/" "2*/" (problem: no second slash)
       Maximum number of variables and literals increased to 1000 (was 225)

3.00A  New PARSE command
         You can now parse free-form data (including comma-delimited files)
       New APPEND command
         Allows you to concatenate up to four values
       Data in output buffer (via OUT) is now flushed at end of input file
         You can now use POM to create binary and fixed-record-length files
       Varied comparators (equals, not equals, less than, contains, etc.)
         Affects the commands IF, IGNORE, ACCEPT, BEGIN, OUT[END]
         For example:  IF x > y THEN z = "YES"

       ------------------------------------------------------------
       NOTICE REGARDING CHANGES REQUIRED IN YOUR EXISTING POM FILES
       ------------------------------------------------------------

       This notice involves a change in the behaviour of IGNORE and ACCEPT.

       With the addition of varied comparators, you may have to change some of
       your old POM files.  The IGNORE and ACCEPT commands were considered
       "true if the string contains the specified text".  In other words, they
       performed a "contains" comparison rather than an "equals" comparison.
       (IF, BEGIN and OUT[END] used an "equals" comparison.)  IGNORE and ACCEPT
       now default to an "equals" comparison.

       There are two situations in which you must modify an IGNORE or ACCEPT:

       (1)  If you padded the line with "=" (for clarity or aesthetics), yet
            you meant "contains", the line should be changed.  For example:

            IGNORE $FLINE[1 10] = "YES"    (old style, using "=" for clarity)
            IGNORE $FLINE[1 10] ^ "YES"    (new style, using "contains" symbol)

       (2)  If you omitted the "=" character, and you want to do a "contains"
            comparison, you must insert the "contains" symbol:

            IGNORE $FLINE[1 10] "YES"      (old style, stated tersely)
            IGNORE $FLINE[1 10] ^ "YES"    (new style, using "contains" symbol)

       If you are comparing two strings of equal length, there is no need to
       modify an IGNORE or ACCEPT.  For example:  IGNORE $FLINE[1 3] "YES"
       will continue to work properly, since either a "contains" or "equals"
       comparison will produce the same result.

2.71B  Fixed SPLIT bug
         POM quit early if file length was an exact multiple of 32767

2.71A  Added PROPER command
       Updated manual to explain licensing options

2.70C  Minor fix to unregistered (trial copy) reminder

2.70A  POM can now read DBF (DBase) files directly
       New ASCII literals (using the # character)
       New TRACE, OUTHDG and PAGELEN commands
       Documented the /Q command-line switch
       User manual expanded to 30 pages; new examples (walk-throughs) provided

2.60   New BEGIN and END commands (blocked "IF" operations)
         Command lines may now be indented for clarity
       New predefined variable $SPLIT
         This indicates which CHOP or SPLIT segment you are on (1, 2, 3 etc.)
       New look-up processing
         New LOOKUP, LOOKSPEC, LOOKCOLS, LOOKFILE commands
         New /L start-up option
       Improved error detection and reporting
       Comparison operation is now optional for OUT and OUTEND

2.52   Added new symbol $TAB; fixed operation of $BRR and $BRL
       New provisions for international registration

2.51   Fixed Program Error MV-P-2 caused by padding with tabs instead of spaces

2.50   CHOP command breaks up fixed-length (non-text) files
       User manual restructured and partially rewritten

2.40   SPLIT command breaks up long (over 255 characters) input lines

2.33   New /Q (quiet) function:  type POM /? for explanation
       Fixed bug: long output lines (>255) occasionally would lose some text

2.32   Fix to CHANGE to correct lock-up when matching single-character string
       Added registration via credit card
       Added new version of SEE to allow full browsing of wide documents
       While tracing, processing display now shows precise line number

2.31   MINLEN now supports zero-length lines
         Default MINLEN is, however, still "1"

2.30   Output (via OUT and OUTEND) can now be more than 255 characters
         However, no individual OUT or OUTEND can output a line longer than 255
       New commands:  PAD, INSERT
       Ease-of-use changes
         More informative processing display
         Variable names are no longer case sensitive
         Improved error checking
         Added another example to documentation

2.20   Provided 2-year self-registration for registered users
       Increased number of variables and literals from 100 to 225
       Allowed "=", "THEN" and "ELSE" to improve readability
       New commands:  SET, ACCEPT
       Now possible to trace variables by name (SET POM=var/var/var...)
         SET POM=T (older versions) is now specified as SET POM=ALL
       Improved documentation (more examples)

2.10   First public release

2.00   Custom version; not released to public

1.00   Custom version; not released to public

[ RETURN TO DIRECTORY ]