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 = [ lincat Float = [
"s" "s"
] ]
lindef Float(0) -> Float[String(0)] = [S0] lindef Float(0) -> Float[String(0)]; 0 : <0,0>
linref String(0) -> Float[Float(0)] = [S0] linref String(0) -> Float[Float(0)]; 0 : <0,0>
lincat Int = [ lincat Int = [
"s" "s"
] ]
lindef Int(0) -> Int[String(0)] = [S0] lindef Int(0) -> Int[String(0)]; 0 : <0,0>
linref String(0) -> Int[Int(0)] = [S0] linref String(0) -> Int[Int(0)]; 0 : <0,0>
lincat N = [ lincat N = [
"s" "s"
] ]
lindef N(0) -> N[String(0)] = [S0] lindef N(0) -> N[String(0)]; 0 : <0,0>
linref {i<2} . String(0) -> N[N(i)] = [S0] linref {i<2} String(0) -> N[N(i)]; 0 : <0,0>
lincat P = [ lincat P = [
"s" "s"
] ]
lindef P(0) -> P[String(0)] = [S0] lindef P(0) -> P[String(0)]; 0 : <0,0>
linref String(0) -> P[P(0)] = [S0] linref String(0) -> P[P(0)]; 0 : <0,0>
lincat S = [ lincat S = [
"" ""
] ]
lindef S(0) -> S[String(0)] = [S0] lindef S(0) -> S[String(0)]; 0 : <0,0>
linref String(0) -> S[S(0)] = [S0] linref String(0) -> S[S(0)]; 0 : <0,0>
lincat String = [ lincat String = [
"s" "s"
] ]
lindef String(0) -> String[String(0)] = [S0] lindef String(0) -> String[String(0)]; 0 : <0,0>
linref String(0) -> String[String(0)] = [S0] linref String(0) -> String[String(0)]; 0 : <0,0>
lin {i<2} . S(0) -> c[N(i)] = [S0] lin {i<2} S(0) -> c[N(i)]; 0 : <0,0>
lin S(0) -> floatLit[Float(0)] = [S0] lin S(0) -> floatLit[Float(0)]; 0 : <0,0>
lin {i<2} . P(0) -> ind[P(0),P(0),N(i)] = [S1] 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)] = [S0] lin S(0) -> intLit[Int(0)]; 0 : <0,0>
lin {i<2} . P(0) -> nat[N(i)] = [S5] lin {i<2} P(0) -> nat[N(i)]; 0 : "nat" SOFT_BIND "(" SOFT_BIND <0,0> SOFT_BIND ")"
lin N(0) -> s[N(0)] = [S2] lin N(0) -> s[N(1)]; 0 : "1"
lin N(0) -> s[N(1)] = [S4] lin N(0) -> s[N(0)]; 0 : <0,0> "+" "1"
lin S(0) -> stringLit[String(0)] = [S0] lin S(0) -> stringLit[String(0)]; 0 : <0,0>
lin N(1) -> z[] = [S3] lin N(1) -> z[]; 0 : "0"
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 ")"
}
} }