定義
ジェネリック関数(generic function)とは、渡される引数のクラスに応じて、自分自身(=generic function)のために予め定義された複数のメソッドからいずれかを選んで実行する関数のことである。
即ち、「関数名(引数)」という、字面上は全く同じ形式で呼び出されながら、引数のクラスによって(=いわば呼び出される文脈によって)、実際には別の処理を実行する関数のことである。
例えばsummary()、print()などがジェネリック関数である。
Javaのようなオブジェクト指向言語におけるメソッドのオーバーロード(多重定義)に相当する機能である。ちなみにJavaでは引数の数と型でオーバーロードされたメソッドを識別する。
コメント