dissociate program main function to driver, called via lua