added initial support for computing types