phino-0.0.152: test-resources/evaluate-packs/mints-past-the-symbols-a-stuck-firing-minted.yaml
# SPDX-FileCopyrightText: Copyright (c) 2025 Objectionary.com
# SPDX-License-Identifier: MIT
---
# yamllint disable rule:line-length
# The firing of 'L_inner' mints π1 for its answer and then gets stuck, since
# nothing answers a dispatch off a symbol, and '--partial' parks its site. The
# protocol keeps what that firing wrote, so π1 is spelled there already. Before
# #1738 the parked frame handed back the state it started from, the count of
# minted symbols went back with it, and 'L_outer' minted π1 once more, for
# another value. Now the count never goes back, and 'L_outer' mints π2.
symbolic: |
- Ξ»: L_inner
π: β¦ Ξ» β€ π β§.foo
- Ξ»: L_outer
morph:
π1: $.a
π: β¦ Ξ» β€ π β§
location: 'Q.y'
partial: true
input: 'β¦ y β¦ β¦ a β¦ β¦ Ξ» β€ L_inner β§.v, Ξ» β€ L_outer β§.z β§'
result: 'π2:Ξ».z'
protocol: |
π(Ξ¦.y):
πΌ(L_outer):
π(Ξ¦.aπ΅0):
πΌ(L_inner):
πΒ·2Β·1 := π1:Ξ».foo # π
π(πΒ·2Β·1):
unanswered(π1) # π(π1:Ξ»)
stuck(π1)
π1Β·1 := L_inner:Ξ».v # π(ΞΎ.a)
πΒ·1Β·1 := π2:Ξ» # π
πΒ·1Β·2 := π2:Ξ» # π(πΒ·1Β·1)
unanswered(π2) # π(π2:Ξ»)