View: fix test
View: prepare test
View: transform "compile" into a constructor
View: allow use of arrays in "compile"