progs/rev.scala
author Christian Urban <christian.urban@kcl.ac.uk>
Tue, 30 Jun 2020 01:31:14 +0100
changeset 730 18fee9d3b6a8
parent 408 5322e1c46890
permissions -rw-r--r--
update

def rev(r: Rexp) : Rexp = r match {
  case ZERO => ZERO
  case ONE => ONE
  case CHAR(c) => CHAR(c)
  case ALT(r1, r2) => ALT(rev(r1), rev(r2))
  case SEQ(r1, r2) => SEQ(rev(r2), rev(r1))
  case STAR(r) => STAR(rev(r))
}