I implemented Strategy Pattern using of YACI[1]
I forked original YACI from github and created a branch - hfdplua.
In this branch, I will implement GoF's patterns and I will make a test suit for YACI using of these patterns implementations.
After I finished making a test suite I will submit the pull request to the host of YACI.
You said virtual function is not supported by lua. But YACI supports it though it would be too much complicated and never simple.
Without virtual function feature, I believe almost no GoF patterns could be implemented.
I received many OO library recommendations but YACI is one which has virtual function. I didn't search enough for other libraries but, until now YACI is the only one.
(If not please let me know. I am talking to the people provided me the library recommendations for this)
And If anyone should find any problem from my Strategy pattern implementation, please let me know.
This is almost my first time to make a lua program.
One thing I am not sure of is 'require' sentence. I don't know about environment and module, so I am not sure of my using of 'require' sentences.
Sincerely
Journeyer