progs/app51.scala
author cu
Wed, 25 Oct 2017 00:05:59 +0100
changeset 528 68fab15cd6fb
parent 399 5c1fbb39c93e
permissions -rw-r--r--
updated
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
399
5c1fbb39c93e updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 261
diff changeset
     1
def OPT(r: Rexp) = ALT(r, ONE)
7
73cf4406b773 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     2
261
24531cfaa36a updated handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 93
diff changeset
     3
def NTIMES(r: Rexp, n: Int) : Rexp = n match {
399
5c1fbb39c93e updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 261
diff changeset
     4
  case 0 => ONE
261
24531cfaa36a updated handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 93
diff changeset
     5
  case 1 => r
24531cfaa36a updated handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 93
diff changeset
     6
  case n => SEQ(r, NTIMES(r, n - 1))
24531cfaa36a updated handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 93
diff changeset
     7
}
24531cfaa36a updated handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 93
diff changeset
     8