progs/parser-combinators/comb1.sc
changeset 956 ae9782e62bdd
parent 954 eda0ccf56c72
child 959 64ec1884d860
--- a/progs/parser-combinators/comb1.sc	Fri Nov 17 20:06:43 2023 +0000
+++ b/progs/parser-combinators/comb1.sc	Tue Nov 28 11:42:31 2023 +0000
@@ -149,9 +149,6 @@
 
 // A parser for arithmetic expressions (Terms and Factors)
 
-"1 + 2 * 3"
-"(1 + 2) * 3"
-{
 lazy val E: Parser[String, Int] = {
   (T ~ p"+" ~ E).map{ case ((x, _), z) => x + z } ||
   (T ~ p"-" ~ E).map{ case ((x, _), z) => x - z } || T }
@@ -159,7 +156,8 @@
   (F ~ p"*" ~ T).map{ case ((x, _), z) => x * z } || F }
 lazy val F: Parser[String, Int] = {
   (p"(" ~ E ~ p")").map{ case ((_, y), _) => y } || NumParserInt }
-}
+
+println(E.parse_all("2*2*2"))
 println(E.parse_all("1+3+4"))
 println(E.parse("1+3+4"))
 println(E.parse_all("4*2+3"))