impove select clausal compiler