phino-0.0.158: test-resources/evaluate-packs/dataizes-what-a-morph-operand-of-the-same-entry-brought-down.yaml
# SPDX-FileCopyrightText: Copyright (c) 2025 Objectionary.com
# SPDX-License-Identifier: MIT
---
# yamllint disable rule:line-length
# The entry morphs the body of 'v' and dataizes what the morph came to, the
# way the 'L_entry' of the lowering of EO wants both the object a body morphs
# into and the data that object dataizes to (#2139). An operand of 'dataize'
# naming the meta 'morph' bound runs as a line once that meta is bound, so
# one entry does what took the 'L_entry' and the 'L_root' of EO two. The
# protocol writes the line of 'πΏ2' right after the line of 'π1' it read,
# commented with the dataization of that meta, while 'πΏ1', reading '$', still
# comes down before every operand of 'morph'.
symbolic: |
- Ξ»: L_entry
morph:
π1: $.v.Ο
dataize:
πΏ1: $.n
πΏ2: π1
π: β¦ Ο β¦ β¦ Ξ» β€ π β§ β§
location: 'Q.y'
input: 'β¦ y β¦ β¦ n β¦ β¦ Ξ» β€ π1 β§, v β¦ β¦ Ο β¦ Ξ¦.t β§, Ξ» β€ L_entry β§.Ο, t β¦ β¦ Ξ β€ 2A- β§ β§'
result: 'π2:Ξ»'
protocol: |
π(Ξ¦.y):
πΌ(L_entry):
π»(ΞΎ.n):
πΏΒ·1Β·1 := π»(π1:Ξ»)
πΏ1Β·1 := πΏΒ·1Β·1 # π»(ΞΎ.n)
π(ΞΎ.v.Ο):
morphed πΒ·1Β·1 := 2A-:Ξ
π1Β·1 := 2A-:Ξ # π(ΞΎ.v.Ο)
π»(π1):
πΏΒ·1Β·2 := 2A-
πΏ2Β·1 := πΏΒ·1Β·2 # π»(π1)
πΒ·1Β·2 := π2:Ξ»:Ο # π
π(πΒ·1Β·2):
morphed πΒ·1Β·3 := π2:Ξ»:Ο
πΒ·1Β·4 := πΒ·1Β·3 # π(πΒ·1Β·2)
morphed πΒ·0Β·1 := π2:Ξ»