support for ambient variables and ambient functions