Julia 方面で多重ディスパッチがどうのこうのと言うのを聞いて分かったふりをしつつ、実はよくオーバーロードとの違いが分からないので調べてみることにします。
多重ディスパッチ (multiple dispatch) とオーバーロード (overload) の違いは、前者が動的に(実行時に)呼び先を解決するのに対し、後者は静的に(コンパイル時に)呼び先を解決するもののようです。「多重」とついているのは、まず文脈的に class によるオブジェクト指向的な動的呼び先解決という前提があるようです。この場合いわゆる this/self/me で書かれるような第一引数にのみに依存する単一ディスパッチになるのに対して、複数の引数の組み合わせによる呼び先解決が出来ることを誇って多重ディスパッチと言うようです。
Fortran では Fortran90 で interface 定義によって総称名による静的な overloading を実現していました。これは複数の引数の型の組み合わせで、呼び先が解決されます。
さらに Fortran 2003 以降で class システムによるオブジェクト指向的な動的呼び先解決が導入されるとともに、class 内の generic type-bound procedure によって、いわゆる this/self/me の第一引数以外の引数に対しても呼び先解決を依存させられるようになりました。これは一種の多重ディスパッチと言っていいのではないかと思えます。(よく概念の定義を消化していないので、正しいのかどうか分かりませんが。)
module test_m
implicit none
type :: base_t
integer :: n = 0
contains
procedure :: pri, prr
generic :: pr => pri, prr
end type base_t
contains
subroutine pri(me, i)
class(base_t), intent(in) :: me
integer, intent(in) :: i
integer :: k
print *, (i, k = 1, me%n)
end subroutine pri
subroutine prr(me, x)
class(base_t), intent(in) :: me
real, intent(in) :: x
integer :: k
print *, (x, k = 1, me%n)
end subroutine prr
end module test_m
program multiple_dispatch
use test_m
implicit none
type, extends(base_t) :: deriv_t
real :: x = 99.0
end type deriv_t
class(base_t), allocatable :: t(:)
integer :: i
allocate(t(2))
t(1) = base_t(3)
t(2) = deriv_t(2, 1.0)
do i = 1, 2
call t(i)%pr(i)
call t(i)%pr(real(i))
end do
end program multiple_dispatch
実行結果
Compiling with Intel(R) Visual Fortran Compiler 19.1.3.311 [IA-32]...
1 1 1
1.000000 1.000000 1.000000
2 2
2.000000 2.000000
YRYR 第19巻 ネタバレあり
ゆるゆり第19巻、綾乃と京子が仲良くしていたので良かったです!
付録で結衣がおみくじで凶をひいていましたが、ごゆるりさんとして大室家の方と泥沼展開の期待。
偽ジャミロ・クワイさん
例のバッファロー男が旧民主党の鳩山ポッポみたいなことを言っていて草
「チャンズリー容疑者は自分は宇宙人で高次の存在で、地球にいるのは別の現実にアセンション(上昇)を行うためだと公言している」
アニメ化して欲しい。

でも歯並びが良すぎて、ナチュラル感が無いのでアセンションは無理だと思いますw 俗人は俗人らしく天地の化育に参画するあるよろし。
www.afpbb.com

【1月16日 AFP】米連邦議会議事堂乱入で、ドナルド・トランプ(Donald Trump)米大統領の支持者らが「議員らの拘束と暗殺」を計画していたと、連邦検察当局が主張した。
検察当局は14日深夜に裁判所に提出した書類の中で、アリゾナ州のジェイク・アンジェリ(Jake Angeli)ことジェイコブ・アンソニー・チャンズリー(Jacob Anthony Chansley)容疑者(33)の勾留を求めた。同容疑者は、米極右陰謀論「Qアノン(QAnon)」の信奉者で、角つきの毛皮の帽子をかぶってマイク・ペンス(Mike Pence)副大統領のデスクにいるところを写真に捉えられている。
検察当局は6日の議事堂占拠について、「議事堂でのチャンズリー容疑者自身の言動をはじめとする有力な証拠が、暴徒が連邦政府の議員らの拘束と暗殺を意図していたことを裏付けている」と主張した。
チャンズリー容疑者はペンス氏に宛てて「時間の問題にすぎない。正義の裁きが下される」と書かれたメモを残していたという。
検察当局は、チャンズリー容疑者は薬物常習者で、心に問題を抱えている可能性があると指摘。「チャンズリー容疑者は自分は宇宙人で高次の存在で、地球にいるのは別の現実にアセンション(上昇)を行うためだと公言している」と述べ、同容疑者が「逃亡し、社会に危険をもたらす恐れが大きい」として勾留を求めている。(c)AFP