fix bug in passing correct expression length
add class printer (half done)