first of javascript implementation of sicp