Compare and contrast tagged and tagless toy interpreter implementations using "tagged unions" and "generalized algebraic data types", respectively, in Scala.