1. 19 Mar, 2015 1 commit
  2. 05 Mar, 2015 1 commit
  3. 11 Jul, 2014 1 commit
    • Martin Clochard's avatar
      Hack to prevent eval-match from decomposing quantified records · 698ca990
      Martin Clochard authored
        This is to prevent quantified records from being decomposed by
        eval_match. e.g, assert { forall x:t. ... } was previously
        transformed to assert { forall x1:t1, x2:t2, x3:t3. ... } if x was
        a record type with fields x1,x2,x3. This changed the
        instantiation pattern, which could be harmful.
      698ca990
  4. 14 Mar, 2014 1 commit
  5. 18 Jan, 2014 1 commit
  6. 10 Nov, 2013 1 commit
  7. 26 Oct, 2013 1 commit
    • Andrei Paskevich's avatar
      Pattern: add compile_bare which does not require known_map · 43aeab83
      Andrei Paskevich authored
      In pattern compilation, we only need to know the full list of
      constructors for a given type, whenever
      1. we want to check that a symbol used in a pattern is indeed
         a constructor;
      2. we want to check for non-exhaustive matching and return an
         example of a non-covered pattern, if any.
      Thus, we need to give Pattern.compile access to the current
      known_map whenever we check new declarations in Decl or Mlw_decl.
      However, once we have checked the patterns, we do not need the
      full constructor lists just to compile the match expressions.
      Just knowing the number of constructors (provided in ls_constr)
      is enough to detect non-exhaustive matching during compilation.
      43aeab83
  8. 28 Sep, 2013 1 commit
  9. 06 Mar, 2013 1 commit
  10. 21 Oct, 2012 1 commit
  11. 20 Oct, 2012 1 commit
    • Andrei Paskevich's avatar
      simplify copyright headers · 11598d2b
      Andrei Paskevich authored
      + create AUTHORS file
      + fix the linking exception in LICENSE
      + update the "About" in IDE
      + remove the trailing whitespace
      + inflate my scores at Ohloh
      11598d2b
  12. 12 Oct, 2012 1 commit
  13. 18 Sep, 2012 1 commit
  14. 31 Aug, 2012 1 commit
  15. 09 Jun, 2012 1 commit
  16. 09 Apr, 2012 1 commit
  17. 18 Mar, 2012 1 commit
    • Andrei Paskevich's avatar
      separate abstract types and logic symbols · 1b769a78
      Andrei Paskevich authored
      - put abstract types and aliases in Dtype of tysymbol
      - put (recursive) algebraic types in Ddata of (ts,constr list) list
      - put abstract function/predicate symbols in Dparam of lsymbol
      - put defined logic symbols in Dlogic of (ls,ls_definition) list
      1b769a78
  18. 26 Feb, 2012 1 commit
  19. 25 Feb, 2012 1 commit
  20. 08 Feb, 2012 2 commits
  21. 22 Sep, 2011 1 commit
  22. 02 Sep, 2011 1 commit
  23. 01 Jul, 2011 1 commit
  24. 03 Jun, 2011 1 commit
  25. 31 May, 2011 1 commit
  26. 30 May, 2011 1 commit
    • Andrei Paskevich's avatar
      rework eval_match · 132bd08d
      Andrei Paskevich authored
      - in particular, we simplify function definitions before testing
      them for linearity (this allows to inline array updates which are
      defined via a record update {| a with map = a.map[i <- v] |}).
      We really need to add some memoization here, otherwise we might
      pay too much.
      132bd08d
  27. 25 May, 2011 1 commit
  28. 24 May, 2011 2 commits
  29. 23 May, 2011 1 commit
  30. 20 May, 2011 1 commit