Zulip Chat Archive
Stream: lean4
Topic: Dot placeholders in binders
Eric Wieser (Jul 03 2024 at 17:59):
A puzzle/bug report:
-- surely this should be illegal?
def foo : Nat → Nat → Nat := (fun · => ‹Nat›)
-- what does this print?
#eval foo 1 2
Damiano Testa (Jul 03 2024 at 18:15):
I am surprised that the keyboard even allows to type the definition of foo!
Kyle Miller (Jul 03 2024 at 18:17):
I think what's going on is that, for example, (fun · => 2) is fun x => (fun x => 2).
It's possible to use · here because the binders in fun syntax are arbitrary terms.
Eric Wieser (Jul 03 2024 at 18:22):
Kyle Miller said:
It's possible to use
·here because the binders infunsyntax are arbitrary terms.
:double_exclamation:
Kyle Miller (Jul 26 2024 at 23:04):
I just saw that dot in the AlphaProof example and realized this was a sneak peak :laughing: (link to Eric's comment in that thread here)
I remember you also had a question about use · being (accidentally) legal.
Last updated: May 02 2025 at 03:31 UTC