1. 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
  2. 28 Sep, 2013 1 commit
  3. 06 Mar, 2013 1 commit
  4. 21 Oct, 2012 1 commit
  5. 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
  6. 12 Oct, 2012 1 commit
  7. 18 Sep, 2012 1 commit
  8. 31 Aug, 2012 1 commit
  9. 09 Jun, 2012 1 commit
  10. 09 Apr, 2012 1 commit
  11. 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
  12. 26 Feb, 2012 1 commit
  13. 25 Feb, 2012 1 commit
  14. 08 Feb, 2012 2 commits
  15. 22 Sep, 2011 1 commit
  16. 02 Sep, 2011 1 commit
  17. 01 Jul, 2011 1 commit
  18. 03 Jun, 2011 1 commit
  19. 31 May, 2011 1 commit
  20. 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
  21. 25 May, 2011 1 commit
  22. 24 May, 2011 2 commits
  23. 23 May, 2011 1 commit
  24. 20 May, 2011 1 commit