allow undefined parent when accessing nested props
use html() and comment() instead of special syntax
allow passing static values
support call expressions