update the test grammar again

This commit is contained in:
Krasimir Angelov
2026-09-09 08:17:02 +02:00
parent f025a75e66
commit 79ce7825c6
2 changed files with 21 additions and 29 deletions
Binary file not shown.
+21 -29
View File
@@ -19,48 +19,40 @@ concrete basic_cnc {
lincat Float = [
"s"
]
lindef Float(0) -> Float[String(0)] = [S0]
linref String(0) -> Float[Float(0)] = [S0]
lindef Float(0) -> Float[String(0)]; 0 : <0,0>
linref String(0) -> Float[Float(0)]; 0 : <0,0>
lincat Int = [
"s"
]
lindef Int(0) -> Int[String(0)] = [S0]
linref String(0) -> Int[Int(0)] = [S0]
lindef Int(0) -> Int[String(0)]; 0 : <0,0>
linref String(0) -> Int[Int(0)]; 0 : <0,0>
lincat N = [
"s"
]
lindef N(0) -> N[String(0)] = [S0]
linref {i<2} . String(0) -> N[N(i)] = [S0]
lindef N(0) -> N[String(0)]; 0 : <0,0>
linref {i<2} String(0) -> N[N(i)]; 0 : <0,0>
lincat P = [
"s"
]
lindef P(0) -> P[String(0)] = [S0]
linref String(0) -> P[P(0)] = [S0]
lindef P(0) -> P[String(0)]; 0 : <0,0>
linref String(0) -> P[P(0)]; 0 : <0,0>
lincat S = [
""
]
lindef S(0) -> S[String(0)] = [S0]
linref String(0) -> S[S(0)] = [S0]
lindef S(0) -> S[String(0)]; 0 : <0,0>
linref String(0) -> S[S(0)]; 0 : <0,0>
lincat String = [
"s"
]
lindef String(0) -> String[String(0)] = [S0]
linref String(0) -> String[String(0)] = [S0]
lin {i<2} . S(0) -> c[N(i)] = [S0]
lin S(0) -> floatLit[Float(0)] = [S0]
lin {i<2} . P(0) -> ind[P(0),P(0),N(i)] = [S1]
lin S(0) -> intLit[Int(0)] = [S0]
lin {i<2} . P(0) -> nat[N(i)] = [S5]
lin N(0) -> s[N(0)] = [S2]
lin N(0) -> s[N(1)] = [S4]
lin S(0) -> stringLit[String(0)] = [S0]
lin N(1) -> z[] = [S3]
sequences {
S0 = <0,0>
S1 = <0,0> "&" "λ" SOFT_BIND <1,$0> SOFT_BIND "," SOFT_BIND <1,$1> "." <1,0>
S2 = <0,0> "+" "1"
S3 = "0"
S4 = "1"
S5 = "nat" SOFT_BIND "(" SOFT_BIND <0,0> SOFT_BIND ")"
}
lindef String(0) -> String[String(0)]; 0 : <0,0>
linref String(0) -> String[String(0)]; 0 : <0,0>
lin {i<2} S(0) -> c[N(i)]; 0 : <0,0>
lin S(0) -> floatLit[Float(0)]; 0 : <0,0>
lin {i<2} P(0) -> ind[P(0),P(0),N(i)]; 0 : <0,0> "&" "λ" SOFT_BIND <1,$0> SOFT_BIND "," SOFT_BIND <1,$1> "." <1,0>
lin S(0) -> intLit[Int(0)]; 0 : <0,0>
lin {i<2} P(0) -> nat[N(i)]; 0 : "nat" SOFT_BIND "(" SOFT_BIND <0,0> SOFT_BIND ")"
lin N(0) -> s[N(1)]; 0 : "1"
lin N(0) -> s[N(0)]; 0 : <0,0> "+" "1"
lin S(0) -> stringLit[String(0)]; 0 : <0,0>
lin N(1) -> z[]; 0 : "0"
}