I previously discussed the expression problem could be solved with various patterns
including the
visitor pattern and using
a procedural approach. It is interesting to note that JRuby used to use a
visitor pattern but switched to a procedural approach to improve performance.
You can read about it
here.
This is a side note in the article since what they want to do is convert Ruby to
run as byte code similar to how
JPython works.