some work on script compiler