support recursive variables
release 0.1.8