50 / 58
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ HKT (Higher-Kinded Types) ΡΠΌΡΠ»ΡΡΠΈΡ Π² TypeScript?
Higher-Kinded Types (HKT) β ΡΡΠΎ ΡΠΈΠΏΡ, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ-ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°ΠΌΠΈ (Π½Π΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ). TypeScript Π½Π°ΡΠΈΠ²Π½ΠΎ ΠΈΡ
Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ: Π½Π΅Π»ΡΠ·Ρ Π½Π°ΠΏΠΈΡΠ°ΡΡ type Apply<F, A> = F<A>. ΠΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ HKT ΡΠ΅ΡΠ΅Π· ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ Ρ placeholder-ΠΏΠΎΠ»Π΅ΠΌ ΠΈ ΡΡΡΠΊ Ρ declaration merging ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π· ΠΏΠ°ΡΡΠ΅ΡΠ½ type-class dictionary. ΠΡΠΎ Π½ΡΠΆΠ½ΠΎ Π΄Π»Ρ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΉ Π²ΡΠΎΠ΄Π΅ Functor, Monad, Traversable.