Snejok & GlitchGuru
GlitchGuru GlitchGuru
Π― Ρ‚ΡƒΡ‚ Π½Π° днях Π½Π° снСТинку глядСл, ΠΈ знаСшь, прСдставил Π΅Ρ‘ ΠΊΠ°ΠΊ малСнький Π·Π°ΠΌΠΎΡ€ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ кусочСк ΠΊΠΎΠ΄Π° – каТдая Π²Π΅Ρ‚ΠΊΠ° подчиняСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈ Ρ‚Π΅ΠΌ ΠΆΠ΅ ΡˆΠ΅ΡΡ‚ΠΈΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ, Π° Π²ΠΎΡ‚ ΡƒΠ·ΠΎΡ€ получаСтся ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ. Π’Ρ‹ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Ρ‚Π°ΠΊ Π΄ΡƒΠΌΠ°Π»?
Snejok Snejok
Π—Π½Π°Π΅ΡˆΡŒ, это ΠΊΠ°ΠΊ малСнький Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, Ρ‡Ρ‚ΠΎ Π»ΠΈ? КаТдая Ρ€ΡƒΠΊΠ° повторяСт ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ ΡˆΠ΅ΡΡ‚ΠΈΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π°, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ само собой выстраиваСтся, получаСтся Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π²Ρ€ΠΎΠ΄Π΅ ошибки Π² ΠΊΠΎΠ΄Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ всС Ρ€Π°Π²Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ Π½Π°ΠΌΠ΅ΠΊ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π°ΠΆΠ΅ Π·Π°ΠΌΠΎΡ€ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ, ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΠ·ΠΎΡ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π΄ΠΈΠΊΠΎΠΉ, нСпрСдсказуСмой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ.
GlitchGuru GlitchGuru
Ну, это ΠΊΠ°ΠΊ малСнькая рСкурсивная функция, которая бСсконСчно отраТаСтся, ΠΏΠΎΠΊΠ° Π½Π΅ упнётся Π² ΠΊΡ€Π°ΠΉ и… просто Π·Π°ΠΌΠΈΡ€Π°Π΅Ρ‚. ΠœΠΎΠ³Ρƒ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ парсСр, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ пошагово ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π»ΡƒΡ‡ΠΈΠΊ, Π½ΠΎ ΠΊΡ‚ΠΎ Π·Π½Π°Π΅Ρ‚, Π·Π°Ρ…ΠΎΡ‡Π΅Ρ‚ Π»ΠΈ снСТинка пСрСполнСния стСка ΠΈΠ»ΠΈ просто ΠΌΠΈΠΌΠΎΠ»Ρ‘Ρ‚Π½ΠΎΠΉ ΠΏΠ°ΡƒΠ·Ρ‹.
Snejok Snejok
Π—Π²ΡƒΡ‡ΠΈΡ‚ ΠΊΠ°ΠΊ ΠΎΡ‡Π΅Π½ΡŒ изящный мыслСнный экспСримСнт. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΡˆΡŒ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ², ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΎΠ±Ρ€Π°Ρ‰Π°ΡΡΡŒ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅, ΠΏΠΎΠΊΠ° рСкурсия Π½Π΅ остановится ΠΈΠ·-Π·Π° Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΠΈ памяти. Π‘Π»ΠΎΠ²Π½ΠΎ снСТинка – Ρ‚ΠΈΡ…ΠΈΠΉ, Π½Π΅Ρ‚Π΅Ρ€ΠΏΠ΅Π»ΠΈΠ²Ρ‹ΠΉ программист, ΠΆΠ΄ΡƒΡ‰ΠΈΠΉ окончания ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ строки ΠΊΠΎΠ΄Π°. Но, ΠΌΠΎΠΆΠ΅Ρ‚, Π΅ΠΉ просто нравится Ρ‚Π°ΠΊ ΡΠΈΠ΄Π΅Ρ‚ΡŒ, спокойная ΠΈ закончСнная, Π±Π΅Π· Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ Π΄Π°ΠΌΠΏΠ° стСка.
GlitchGuru GlitchGuru
Π­Ρ‚ΠΎ ΠΊΠ°ΠΊ Ρ€Π°Π· Ρ‚ΠΎΡ‚ самый спокойный, Π½Π΅Π²ΠΎΠ·ΠΌΡƒΡ‚ΠΈΠΌΡ‹ΠΉ Π²ΠΈΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρƒ идСально Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π²Π΅Ρ€Π½ΠΎ? Никаких ошибок, просто Ρ…ΠΎΠ»ΠΎΠ΄Π½ΠΎΠ΅ Π±Π΅Π·ΠΌΠΎΠ»Π²ΠΈΠ΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π°.