1. 28 Sep, 2018 1 commit
    • Raphael Rieu-Helft's avatar
      Add support for partial functions · 17ed1270
      Raphael Rieu-Helft authored
      Program functions can be declared as partial with "let/val partial".
      Similarly to "diverges", partial code cannot be ghost, however it does not need to be
      explicitly specified as partial.
      
      Fixes #184.
      17ed1270
  2. 23 Sep, 2018 1 commit
  3. 18 Sep, 2018 1 commit
  4. 12 Sep, 2018 1 commit
  5. 11 Sep, 2018 1 commit
    • Guillaume Melquiond's avatar
      Remove handcrafted error messages (fix issues #150 and #172). · ce21b6c1
      Guillaume Melquiond authored
      Short story: it was a source of bugs, there was only one handcrafted
      message over 650, and, to quote François Pottier, "you seem to have
      misunderstood what the various commands do".
      
      Long story: the proper steps to update the error messages after modifying
      the parser are
      
      1. update the old states with --update-errors
      2. generate the new states with --list-errors
      3. compare the old and new states with --compare-errors
      4. manually reconcile the differences between the old and new states
      5. write error messages for the new states
      6. add %on_error_reduce and go back to step 1, if step 5 is too hard
      7. check that the error messages for the old states are still meaningful
      8. check that the set of states is both correct (--compile-errors) and
         complete (--compare-errors)
      
      We were doing only step 1 and half of step 8. Doing the other half of
      step 8 would have prevented issue #172 from occurring. But that would have
      meant doing step 4 after each parser modification, which was never done.
      Note that step 2 is so expensive that it is impossible to perform step 8
      during continuous integration.
      
      Given the work needed to update the error messages after a syntax change,
      I don't think we can reliably use them until WhyML no longer evolves.
      ce21b6c1
  6. 05 Sep, 2018 1 commit
  7. 30 Aug, 2018 1 commit
  8. 12 Jul, 2018 3 commits
  9. 11 Jul, 2018 2 commits
  10. 27 Jun, 2018 1 commit
  11. 24 Jun, 2018 3 commits
  12. 22 Jun, 2018 1 commit
  13. 20 Jun, 2018 1 commit
  14. 15 Jun, 2018 2 commits
  15. 05 Jun, 2018 1 commit
  16. 04 Jun, 2018 1 commit
  17. 01 Jun, 2018 1 commit
  18. 31 May, 2018 1 commit
  19. 30 May, 2018 2 commits
  20. 29 May, 2018 1 commit
  21. 25 May, 2018 1 commit
  22. 24 May, 2018 1 commit
  23. 15 May, 2018 2 commits
  24. 14 May, 2018 1 commit
  25. 04 May, 2018 4 commits
  26. 03 May, 2018 4 commits