git @ Cat's Eye Technologies Tamsin / master eg / alg-expr2.tamsin
master

Tree @master (Download .tar.gz)

alg-expr2.tamsin @masterraw · history · blame

1
2
3
4
5
6
7
# This example Tamsin program was written by Chris Pressey, and is
# hereby placed in the public domain.  It comes with NO WARRANTY.

main = expr0.
expr0 = expr1 -> E1 & {"+" & expr1 -> E2 & E1 <- add(E1,E2)} & E1.
expr1 = term -> E1 & {"*" & term -> E2 & E1 <- mul(E1,E2)} & E1.
term = "x" | "y" | "z" | "(" & expr0 -> E & ")" & E.