What Makes A Good Library Function