Zaslat SMS: Searching program libraries by type and proving compiler correctness by bisimulation /