Permalink
Commits on Jul 4, 2013
  1. Added cidredebug keyword to form declarations that enable/disable CID…

    …RE debugging flags dynamically during sort checking, e.g.:
    
          cidredebug true
          cidredebug false
    committed Jul 4, 2013
  2. Fixed boolean return value of Cidre.check and Cidre.make so that it i…

    …s true if there were no warnings (or errors).
    committed Jul 4, 2013
Commits on Nov 10, 2011
Commits on Nov 5, 2011
  1. Fixed issue #3 by using a "try and see" approach and giving a big war…

    …ning when giving up due an instance being too large. Currently "too large" is 50,000 intersections being introduced in one instance. The l10 code currently includes an example where about 4,000 are required if the sort constraints are removed.
    
    Suffice to say it's hard to give good feedback with such instances around.  Optimizing instantiation using extra non-strictly-bidirectional information should improve this situation in nearly all cases.
    committed Nov 5, 2011
  2. Fixed issue #4 by keeping the sort instances in constructor pattern-s…

    …orts so that when it "punts" on difficult instantiations, it uses the original sort for the constructor rather than inappropriately using the default sort.
    
    It won't crash anymore, but the sorts assigned to pattern variables when it punts are still less accurate than they could be.  Next I'll be implementing a warning when this happens, and add a "try and see" approach with a configurable limit to determine which instantiations are feasible.
    
    Also fixed an embarrassing tyvar ordering error in the last commit.  Sort instantiators need to be in the order of their *last* occurrences in the sort scheme.  This is more natural than first occurrences - particularly when applying constructors since then the order matches the order of the datatype parameters.
    committed Nov 5, 2011
  3. Fixing instances in pattern residuals, but found a type variable orde…

    …r issue when checking cmlib/coroutines.
    committed Nov 5, 2011
Commits on Nov 4, 2011
  1. Implemented Rob's suggestion of explicit sort instantiation via the s…

    …yntax:
    
             v (*[[ sort1, sort2, ..., sortn ]]*)
             c (*[[ sort1, sort2, ..., sortn ]]*)
    
    So far this is only implemented for variable and contructor expressions, and only for the simple case where there's a single set of instantiators.  The instantiators appear in the order of their first occurrences in the sort of v or c.
    committed Nov 4, 2011
Commits on Oct 31, 2011
  1. Properly fixed the standard basis. Aside from rare bugs, it should be…

    … correct, complete, solid and most of the optional parts are included too. (I hope I don't have to do this process again.)
    
    Also fixed some bugs related to variance and abstract lattices.  As a result, vectors and vector slices can be ascribed (co-)variance in the basis files - as can user defined sorts.
    committed Oct 31, 2011
Commits on Oct 27, 2011
  1. Merge pull request #6 from robsimmons/master

    See previous comment, which I should have put here.
    committed Oct 27, 2011
  2. Fixed issue #11 - some old code was breaking a sort into conjuncts pr…

    …ior to calling "RefObject.isInstance", causing it to fail.
    committed Oct 27, 2011
  3. @robsimmons
Commits on Oct 26, 2011
  1. @robsimmons
  2. @robsimmons
Commits on Oct 21, 2011
  1. @robsimmons
  2. Fixed bug #3 - #label atexp should be treated as a separate construct.

    Also, the basis now accummulates between calls to Cidre.make.  (Probably there should be a way to reset it also.)
    committed Oct 21, 2011
Commits on Oct 20, 2011
  1. Merge pull request #5 from robsimmons/master

    Back off on what the refined-basis list does
    committed Oct 20, 2011
  2. @robsimmons
  3. @robsimmons

    Fix old-basis-library problem

    robsimmons committed Oct 20, 2011
  4. Fixed "robs-pattern-bug" an embarrasing bug where desugared case expr…

    …essions encountered in synthesis mode were treated like ordinary applications
    committed Oct 20, 2011
Commits on Oct 19, 2011
  1. Uncommented the debug prints for RefDec.ref_match. To activate them:

        R.Flags.DEBUG_REFDEC := true
    committed Oct 19, 2011
Commits on Oct 18, 2011
  1. Final tuning for 0.9999 "beta" release.

    Mostly fixed the standard basis.  I also made the top level interface a bit friendlier, including passing to CM automatically on success.
    committed Oct 18, 2011
  2. @robsimmons
  3. @robsimmons

    Actually run stuff

    robsimmons committed Oct 18, 2011
  4. @robsimmons
Commits on Oct 16, 2011
Commits on Oct 14, 2011
  1. Implemented MLB-file based refinement checking. No dependency checkin…

    …g yet - everything is checked
    
    from scratch each time (except the standard basis).  Checking the whole c0 compiler is about 5 seconds, quite a bit of which is likely just printing all the coverage warnings.
    
    To support the c0 implementation, the standard basis stubs have been considerably updated.  However, they are still far from complete, and a more systematic approach seems desirable.
    committed Oct 14, 2011
Commits on Sep 29, 2011
  1. @robsimmons

    Fix the same bug in MLKit for a second time - needs to recognize /r a…

    …s a whitespace character. Having /r be a Whitespace and not just a VWhitespace may be a mistake but I don
    robsimmons committed Sep 29, 2011
Commits on Sep 21, 2011
  1. Updated README

    committed Sep 21, 2011