phino-0.0.152: test-resources/evaluate-packs/stands-the-data-of-a-term-into-unknowns.yaml
# SPDX-FileCopyrightText: Copyright (c) 2025 Objectionary.com
# SPDX-License-Identifier: MIT
---
# A 'symbolize' line reduces nothing: it stands the data of a term another line
# of the entry has already bound into unknowns, so a normal form reached from a
# literal is written the way one reached from an unknown is written and the two
# of them compare as expressions. Here π1 came from a literal and π2 from a
# value nobody worked out: after the stage both of them carry β¦ Ξ» β€ π β§ where
# they differ. What is known about each fresh symbol stands on a line of its
# own, since a π is the name of a Ξ» function and nothing binds bytes to it, and
# a term that carried no datum at all passes through as it was. The comments of
# the two pairs of lines are what tells them apart: a 'morph' operand is
# commented with the judgment that reduced it and the term it was reduced from,
# 'π(ΞΎ.a)', where a 'symbolize' line names the meta it was told to stand and no
# judgment at all, since none ran (#1306).
symbolic: |
- Ξ»: L_join
morph:
π1: $.a
π2: $.b
symbolize:
π3: π1
π4: π2
π: β¦ l β¦ π3 β§
location: 'Q.y'
input: 'β¦ y β¦ β¦ a β¦ β¦ Ξ β€ 01- β§, b β¦ β¦ Ξ» β€ π7 β§, Ξ» β€ L_join β§.l β§'
result: 'π8:Ξ»'
protocol: |
π(Ξ¦.y):
πΌ(L_join):
π1Β·1 := 01-:Ξ # π(ΞΎ.a)
π2Β·1 := π7:Ξ» # π(ΞΎ.b)
π»(π8:Ξ») == 01-
π3Β·1 := π8:Ξ» # π1
π4Β·1 := π2Β·1 # π2
πΒ·1Β·1 := π8:Ξ»:l # π
πΒ·1Β·2 := π8:Ξ»:l # π(πΒ·1Β·1)