Что-то много эмоций и мало логики.
Понятие полиморфизм означает применимость функции к разным типам.
Поскольку эрланг бестиповый язык, никакого полиморфизма в нем не может быть по определению.
Вот это > poly_function( { A, B } ) -> ...; > poly_function( [ A, B ] ) -> ...;
не полиморфная фунция.
Применить же сопоставление в одной и той же функции к спискам и кортежам в типизированном языке не получится.
И еще о терминологии. Термины "параметрический полиморфизм" и "полиморфизм ad-hoc" реально используются, а вот "динамический/статический полиморфизм" -нет. Говорят о динамической или статической диспетчеризации.