関数は「どう呼ばれうるのか」も考えて仕様を設計すると良い