* Change the printing of namespaced operator to show
parenthesis around operators
* Update warning when conflicting fixities are found
* Do not warn about redundant but compatible fixities
When we encounter a delayed (explicit) function type during elaboration
of a LHS, we strip off the delay modality, continue elaboration and return a delayed version of the resulting type.
Note: defining delayed function via pattern matching is not currently
supported. Doing so will require adding a delay marker to LHSs/contexts
familiar from modal type theories. Implicit function are also currently
not supported.
Only running over "docs/" directory since it will likely have the
largest postivie impact and cause fewest issues.
Typos will do simple find-and-replace when it detects a word not in it's
dictionary. It does not have any regard for formatting based on
surrounding context. Care must be taken not no merge variable names in
same scope etc.
Typos can be driven by Github Actions:
https://github.com/crate-ci/typos/blob/master/docs/github-action.md
Tool: https://github.com/crate-ci/typos
* Add Pack to list of package managers
* Mention only Pack as package manager
Co-authored-by: G. Allais <guillaume.allais@ens-lyon.org>
---------
Co-authored-by: G. Allais <guillaume.allais@ens-lyon.org>
* [ fix ] Programmer-provided terms should be alwaysReduce
This ports Edwin's commit that fixes the original issue back to Idris
Co-authored-by: Edwin Brady <ecb10@st-andrews.ac.uk>
* [ tests ] Added regression test for #1878
* Updated CHANGELOG.md and CONTRIBUTORS
---------
Co-authored-by: Edwin Brady <ecb10@st-andrews.ac.uk>
This reverts part of commit 4febd31c67.
Moved to PR #2992, as this reverted change is separate from adding
`:doc` support for these. There is potentially more discussion to be had
in the new PR.
This is required due to `Lazy` now being a reserved compiler primitive.
N.B. This may also break other dependencies and/or tools. Notably stuff
outwith the Idris2 upstream. There's been some discussion in #2987.
Re `cast` vs. `stringToNatOrZ` in the chapter 5 tip:
`cast` from `String` to `Nat` does work in Idris 2, version 0.6.0-a75161cb2, so the first sentence is not currently correct, and there is no change needed to make the code work.
In the Discord documentation channel, z_snail suggested changing the text to merely recommend changing `cast` to `stringToNatOrZ`. This PR proposes that change. I tried to change the text as little as possible, but I made some additional, strictly speaking unnecessary revisions, where I thought they would make the wording clearer given the essential changes. I added a missing period as well.
(If the `cast` from `String` to `Nat` is destined to be removed, perhaps this PR should be ignored.)
The instructions for the exercises at the end of section 5.3.4 list several file-handling functions needed for the exercises. They were in the Prelude, but now are in `System.File.Handle` and `System.File.ReadWrite`, and I added a note about that. (`import System.File` would work for the exercise code, but the docs aren't there, so I didn't mention that. I also didn't mention there a few other definitions, in other modules, that one needs to look up to understand the functions that the book lists. I think that figuring out that one needs to find those additional docs is supposed to be part of the exercise.)
readNumber_v2 should be readNumbers_v2. I also added a remark pointing to the corresponding function definition in the book, for people who prefer to type in the definitions themselves (like me) rather than using the source files in the repo.
There's another issue with the chapter 5 tips, but I'm not sure what the right fix is, so I'll submit an issue.