packages feed

deepseq-bounded-0.6.0.2: changelog.txt

NOTE: My real "changelog" (a private document) is
over 8000 lines long, and I haven't really taken pains
to assure that this summary is complete.

The transition-5-6-7.html file probably contains better
information. It is in the ./HTML directory of the source
distribution, or online at
http://www.fremissant.net/deepseq-bounded/transition-5-6-7.html
(most up to date).

0.6.0.1 -> 0.6.0.2
 - VACANT_HASH flag removed (permanent value = False)
 - further decrufting of Compile_new_grammar.hs
 - HASKELL98_FRAGMENT tested a bit more (compiles at least,
   and the tests run, but there's still no H98 parser...)
 - manual NFData instance of Pattern (instead of generic deriving)
   so can use it to force non-interleaving of output with warnings,
   even in H98 (and has other uses when debugging)
 - a bit of sanitising of .cabal flag descriptions, and of NFDataP.handleAttrs
 - a few incidental bug fixes; and a few recognised but not yet fixed...

0.6.0.0 -> 0.6.0.1
 - bugfixes so can build with NEW_IMPROVED_PATTERN_GRAMMAR set False
 - got rid of three transient flags, which are now "permanently defaulted"
   to the values shown:
     NEW_SEMICOLON_TYPE_LIST = True
     NEW_CONCRETE_WI_AND_WS = True
     TYPE_CONSTRAINTED_NODES_USE_UNESCAPED_SPACE_AS_TYPE_LIST_SEPARATOR = False
   (To read about these, consult the 0.6.0.0 hackage page which documents
   these flags; all of them are departures from the new grammar as published.)
 - decrufting of Compile_new_grammar.hs

** 0.5.5 -> 0.6.0.0
 - many misc. bug fixes
 - much polishing of documentation (corrections, elaborations, refinements)
 - renamed module "...Bounded.Generics" to "...Bounded.Generic"
 - changed the pattern concrete syntax slightly (now more compact)
    - refer to http://fremissant.net/deepseq-bounded/grammar.html
    - more than "slightly", in the end!
 - added nice data family FF :)
 - changed PatNode so all constructors take a single parameter of
   (new) type PatNodeAttrs
 - several new capabilities (refer to the API docs for PatNodeAttrs)
 - simplified the PatNode type itself
 - using attoparsec to build the pattern DSL parser
 - PatAlg.hs -> PatUtil.hs
 - isSubPatOf -> subPat
    - I hesitated to shed the "is", but the Bool result value
      pretty much clears up any possible ambiguity there
    - the ambiguity (which still remains) is, which is the
      subpattern, which the host pattern, as the types don't
      help you there!
       - but we're pretty safe, corresponds to infix use as
         if it were the mathematical inclusion symbol
 - type constraints are now handled as a prefix modifier like
   any other (except that internally they still have their
   own PatNode's TI, TR etc.)
 - more...