This feature produced counterintuitive behavior and confused users.
See discussion at #770.
As pointed out by @tydeu, it is not too much work to write `Id.run <|`
before the `do` when we want to use the `do` notation in pure code.
closes#770
Sebastian suggested moving the macro guide from Mathlib4 upstream into the Lean 4 manual (called `macro_overview.md` here). There was some discussion about where to put it; the section on metaprogramming seemed like the most appropriate place. I did a little bit of reorganizing to make some items more discoverable (e.g. the user-defined notation section).
* add arith
* Fixup based on Sebastian's feedback
* style nits
* add explanation about parsing precedence
* add Sebastian's suggest test case
Add the test case into the example to make sure we parse a*b+c as well
as a+b*c correctly.
* grammar pass
* Update doc/tutorial/metaprogramming-arith.md
Co-authored-by: Sebastian Ullrich <sebasti@nullri.ch>
* Update doc/tutorial/metaprogramming-arith.md
Co-authored-by: Sebastian Ullrich <sebasti@nullri.ch>
* use pretty arrows, 2 spaces, [Arith| ... ]
* typo: :+ and :* had sneaked back in
* Update doc/tutorial/metaprogramming-arith.md
Co-authored-by: Wojciech Nawrocki <wjnawrocki+gh@protonmail.com>
* Update doc/tutorial/metaprogramming-arith.md
Co-authored-by: Wojciech Nawrocki <wjnawrocki+gh@protonmail.com>
* Update doc/tutorial/metaprogramming-arith.md
Co-authored-by: Wojciech Nawrocki <wjnawrocki+gh@protonmail.com>
* Update doc/tutorial/metaprogramming-arith.md
Co-authored-by: Gabriel Ebner <gebner@gebner.org>
* move all #print to #check
Co-authored-by: Sebastian Ullrich <sebasti@nullri.ch>
Co-authored-by: Wojciech Nawrocki <wjnawrocki+gh@protonmail.com>
Co-authored-by: Gabriel Ebner <gebner@gebner.org>
* fix msys2 windows build so the windows apps support utf-8 file paths.
* use windres to compile default-manifest.o
* windres is in binutils.
* stop modifying default-manifest.o
* copy to stage0
* fix semicolon joining of lists in add_custom_target
* undo changes to stage0 as per CR feedback.
* fix makefile
* fix: revert cmakelists.txt COMMAND_EXPAND_LISTS change
* fix: msys2 dependencies
* add unit test for decoding UTF-8 chars to prove "lean.exe" can read utf-8 encoded files where utf-8 is also used in the file name.
* fix: utf-8 test by using windows-2022
* fix: do we really need cmake 3.11 or will 3.10 do?
* nope, really does require cmake 11.