вот не пример завтипов, но то, что сложно описать без нужных возможностей
некая функция принимает объект с люыми (но известными во время компиляции) ключами, где все элементы имеют тип forall A. E -> A, нужно отдать функцию E -> B, где B - тот самый объект с теми же ключами, но значения элементов - A