lms-clean
lms-clean copied to clipboard
Two layers of Frontend?
In the repo, we already have 2 kinds of frontends. One is the simple Frontend.scala, the other is the type-based stub.scala. It seems that the Frontend.scala is a temp/simple solution and the stub.scala is the write way to go. However, in transformation, the frontend.scala-style front end is more attractive since we do not have to handle types.
Is the ultimate solution to always have 2 layers of frontend, where the type-based frontend is user-facing and calls the simple frontend (type-less) that contains the logic of g.reflect()? If we have them, then we can always let users use the type-based frontend, and use the simple frontend in transformation.