1. 25 Apr, 2019 1 commit
  2. 11 Feb, 2019 1 commit
  3. 16 Oct, 2018 1 commit
  4. 14 Oct, 2018 1 commit
  5. 14 Jun, 2018 1 commit
  6. 17 May, 2018 1 commit
  7. 11 Jan, 2018 1 commit
  8. 10 Jun, 2017 1 commit
    • Andrei Paskevich's avatar
      Mlw: slightly generalize the rules for overloading · 084211c1
      Andrei Paskevich authored
      A symbol is now considered overloadable if it satisfies
      the following conditions:
        - it has at least one parameter
        - it is non-ghost and has fully visible result
        - all of its parameters are non-ghost and have the same type
        - its result is either of the same type as its parameters
          or it is a monomorphic immutable type.
      
      An overloadable symbol can be combined with other symbols of the
      same arity and overloading kind. Otherwise, the new symbol shadows
      the previously defined ones.
      
      This generalisation allows us to overload symbols such as "size"
      or "length", and also symbols of arbitraty non-zero arity.
      
      I am reluctant to generalize this any further, because then we
      won't have reasonable destructible signatures for type inference.
      084211c1
  9. 06 Jun, 2017 1 commit
  10. 03 Jun, 2017 1 commit
  11. 24 Apr, 2017 1 commit
  12. 12 Apr, 2017 1 commit
  13. 15 Feb, 2017 1 commit
  14. 14 Feb, 2017 1 commit
  15. 15 Mar, 2016 3 commits
  16. 13 Sep, 2015 1 commit
  17. 22 Aug, 2015 1 commit
  18. 19 Aug, 2015 1 commit
  19. 18 Aug, 2015 1 commit
    • Andrei Paskevich's avatar
      cloning: instantiate type symbols into types · c06bc445
      Andrei Paskevich authored
      this removes the ugly hack of creating an ad-hoc type alias symbol
      for substitutions like "clone T with type t 'a = list (int, 'a)".
      
      If a type symbol "t1 'a 'b 'c" is instantiated into a type of the
      form "t2 'a 'b 'c", then the metas that mention the type symbol "t1"
      are preserved, and "t1" is replaced with "t2". Otherwise, all such
      metas disappear in the cloned theory.
      c06bc445
  20. 06 Aug, 2015 2 commits
  21. 28 Jul, 2015 1 commit
  22. 05 Jul, 2015 1 commit
  23. 29 Jun, 2015 1 commit
  24. 25 Jun, 2015 1 commit
  25. 24 Jun, 2015 2 commits
  26. 19 Jun, 2015 1 commit
  27. 18 Jun, 2015 1 commit