en
Feedback
Just code IT

Just code IT

Open in Telegram

Π’Π΅Ρ€ΠΈΠΌ Π² everything-as-code. ΠžΠ±ΡΡƒΠΆΠ΄Π°Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‡ΠΈΡ‰Π΅, Ρ€Π΅Π²ΡŒΡŽΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½Π΅Π΅, Π΄Π΅ΠΏΠ»ΠΎΠΈΡ‚ΡŒ быстрСС.

Show more
1 711
Subscribers
No data24 hours
-77 days
-2230 days
Posts Archive
3D Π»Π°Π½Π΄ΡˆΠ°Ρ„Ρ‚ Π² 256 Π±Π°ΠΉΡ‚ Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ intro β€” Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… динамичСских сцСн, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ΠœΡ‹ ΡƒΠΆΠ΅ писали ΠΏΡ€ΠΎ классику ΠΆΠ°Π½Ρ€Π°, intro Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ Π² 64 ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚Π°; Π½ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с исполняСмым Ρ„Π°ΠΉΠ»ΠΎΠΌ, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 512 ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ 256 Π±Π°ΠΉΡ‚. Казалось Π±Ρ‹, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² 256 Π±Π°ΠΉΡ‚? Но Π°Π²Ρ‚ΠΎΡ€Ρ‹ 256b intro ΡƒΠΌΡƒΠ΄Ρ€ΡΡŽΡ‚ΡΡ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Ρ‚ΡŒ Π² Π½ΠΈΡ… достаточно Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ видСоряд. НапримСр, Π½Π° Π΄Π΅ΠΌΠΎΠΏΠ°Ρ‚ΠΈ Revision 2024 Π² Π½ΠΎΠΌΠΈΠ½Π°Ρ†ΠΈΠΈ 256b intro ΠΏΠΎΠ±Π΅Π΄ΠΈΠ»Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ALCATRAZ с ΠΈΡ… ΡˆΠ΅Π΄Π΅Π²Ρ€ΠΎΠΌ Remnants. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° запускаСтся Π² DOS ΠΈ написана Π½Π° языкС ассСмблСра. Π Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² тонкостях Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π΅ΠΉΠΌΠ°Ρ€ΡˆΠ΅Ρ€Π°, Ρ‡Ρ‚ΠΎ создаСт ΡΡ‚ΠΎΠ»ΡŒ Ρ€Π΅Π°Π»ΠΈΡΡ‚ΠΈΡ‡Π½ΡƒΡŽ для Ρ‚Π°ΠΊΠΎΠ³ΠΎ нСбольшого Π±ΠΈΠ½Π°Ρ€Π½ΠΈΠΊΠ° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ, ΠΌΠΎΠΆΠ½ΠΎ, скачав исходный ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, любСзно прСдоставлСнный Π°Π²Ρ‚ΠΎΡ€Π°ΠΌΠΈ. #digest

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ ΠΏΠΎΠ³Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π² мСтакомпиляторы ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½Π°ΡˆΠΈΡ… Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΉ с ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π² ИВ Π±Ρ‹Π» курс Ρ‚Π΅ΠΎΡ€ΠΈΠΈ трансляции ΠΈΠ»ΠΈ компиляторов. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, ΠΊΠ°ΠΊ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… этого курса Ρƒ доски расписывали ΠΏΠΎΡ€ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ строк Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊΠ°ΠΌΠΈ, Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² EBNF? Как ΠΈΠ·ΡƒΡ‡Π°Π»ΠΈ нисходящий ΠΈ восходящий Ρ€Π°Π·Π±ΠΎΡ€Ρ‹, ΡƒΠΏΡ€Π°ΠΆΠ½ΡΠ»ΠΈΡΡŒ с Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ парсСров Π²Ρ€ΠΎΠ΄Π΅ YACC (BISON)? Казалось ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎ описанию Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ€ΠΎΠ΄ΠΈΡ‚ΡŒ достаточно слоТный парсСр ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ транслятор Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ языка. Π£Π΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π½ΠΎ идСям мСтакомпиляторов, Ρ‚.Π΅. ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ описанию компиляторы, ΡƒΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ‚. НапримСр, мСтакомпилятор META II Π±Ρ‹Π» описан Π² 1964 Π³ΠΎΠ΄Ρƒ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, ΠΊΠ°ΠΊ Π΄Π°Π²Π½ΠΎ это Π±Ρ‹Π»ΠΎ, ΠΈ ΠΊΠ°ΠΊΠΈΠΌΠΈ Π±Ρ‹Π»ΠΈ Ρ‚ΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹! Π•Ρ‰Π΅ Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ META II ΠΈΠ»ΠΈ Π΅Π³ΠΎ блиТайшиС ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ Π½Π°ΠΌ ΠΈ сСгодня β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для прототипирования ΠΈΠ»ΠΈ быстрой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… языков. Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Β«Tutorial: Metacompilers Part 1Β» ΠΌΠΎΠΆΠ½ΠΎ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с META II ΠΈ Π΅Π³ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ устройством. К ΠΊΠΎΠ½Ρ†Ρƒ прочтСния ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ компилятор META II с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌΠΈ Π½Π° Π½Ρ‘ΠΌ самом. НСсмотря Π½Π° свою простоту, эта компактная систСма β€” Ρ‡ΡƒΠ΄ΠΎ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½ΠΎΠΉ мысли. Код мСтакомпилятора, записанный Π½Π° спСциализированном Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΌ языкС, нСвСроятно ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π΅Π½ ΠΈ пСрСносим ΠΌΠ΅ΠΆΠ΄Ρƒ систСмами, Π½ΠΎ позволяСт ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ довольно Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ трансляторы Π·Π° ΠΌΠΈΠ½ΡƒΡ‚Ρ‹! ИдСи META, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π½ΠΈΠΊΡƒΠ΄Π° Π½Π΅ ΠΏΡ€ΠΎΠΏΠ°Π»ΠΈ. НапримСр, ΠΎΠ½ΠΈ ΠΆΠΈΠ²Ρ‹ Π² OMeta, соврСмСнном ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ мСтакомпиляторС. #digest

Как ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ 64 intro Π£Π²Π΅Ρ€Π΅Π½Ρ‹, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ наши Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΠΈ ΡΠ»Ρ‹ΡˆΠ°Π»ΠΈ ΠΏΡ€ΠΎ дСмосцСну β€” Π²ΠΈΠ΄ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ³ΠΎ искусства, ΡΠΎΠ²ΠΌΠ΅Ρ‰Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ динамичСских графичСских сцСн, сочинСниС элСктронной ΠΌΡƒΠ·Ρ‹ΠΊΠΈ, рисованиС ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΈ Π΄Π°ΠΆΠ΅ довольно ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ ΡΡŽΠΆΠ΅Ρ‚Π½ΡƒΡŽ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΡƒΡŽ demo, Π΄ΠΎΡΡ‚ΠΎΠΉΠ½ΡƒΡŽ ΠΏΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Π½Π° demoparty, нСпросто. Но ΠΊΡƒΠ΄Π° Π±ΠΎΠ»Π΅Π΅ интСрСсно ΡƒΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π² ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΏΠΎ ΠΎΠ±ΡŠΠ΅ΠΌΡƒ Π±ΠΈΠ½Π°Ρ€Π½ΠΈΠΊ β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² 64 ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ 4 ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚Π°. Π¨Π΅Π΄Π΅Π²Ρ€Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Ρ‚Π°ΠΊΠΈΡ… 64k ΠΈ 4k intro сущСствуСт Π½Π΅ΠΌΠ°Π»ΠΎ, ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΡ… Π°Π²Ρ‚ΠΎΡ€Ρ‹ ΠΏΡ€ΠΎΠ±ΡƒΡŽΡ‚ Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π΄ΠΎΠ±ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΡ… ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ². Π—Π°Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Π° ΡΡ‚Π°Ρ‚ΡŒΡ ΠΎ создании 64k intro с Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Guberniya, которая Π±Ρ‹Π»Π° ΠΏΡ€Π΅Π·Π΅Π½Ρ‚ΠΎΠ²Π°Π½Π° Π½Π° demoparty Revision 2017. Авторы дСлятся, ΠΊΠ°ΠΊ выглядСл процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ этого Ρ‡ΡƒΠ΄Π°, занявший ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ 4 мСсяца. Π’ΠΎΠΎΠ±Ρ‰Π΅, ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎ Π΄Π΅ΠΌΠΎΠΌΠ΅ΠΉΠΊΠΈΠ½Π³Ρƒ Π² сСти Π½Π΅ слишком ΠΌΠ½ΠΎΠ³ΠΎ, плюс ΠΎΠ½Π° сильно Ρ€Π°Π·Ρ€ΠΎΠ·Π½Π΅Π½Π°, приходится ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΏΠΎ ΠΊΡ€ΡƒΠΏΠΈΡ†Π°ΠΌ. А ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ нСбольшим Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°ΠΌ, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ 64k intro, ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅Ρ‚. Но для Π½Π°ΡˆΠΈΡ… Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΌΡ‹ нашли ссылку Π½Π° довольно интСрСсный рСсурс, Π³Π΄Π΅ собрана информация ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Ρ‚Π°ΠΊΠΈΡ… ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠ³ΠΎ искусства. ВрСмя Ρ‚Π²ΠΎΡ€ΠΈΡ‚ΡŒ, особСнно учитывая ΡΠΊΠΎΡ€ΡƒΡŽ Π΄Π΅ΠΌΠΎΠΏΠ°Ρ‚ΠΈ, ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ Π² Π‘Π°Π½ΠΊΡ‚-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³Π΅! πŸ™‚ #digest

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ 3D модСлирования Π·Π° нСдСлю НСдавно ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ»ΠΈ Π½Π° просторах сСти Π·Π°Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΡΡ‚Π°Ρ‚ΡŒΡŽ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· постоянных Ρ€Π΅Π·ΠΈΠ΄Π΅Π½Ρ‚ΠΎΠ² Handmade Network Дэниэла Π₯ΡƒΠΏΠ΅Ρ€Π° (Daniel Hooper). Дэниэл Ρ€Π΅ΡˆΠΈΠ» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ минималистичный 3D-Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ достаточно Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. Дэниэл ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΠ» ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΠΎΠ΄Π½Ρƒ нСдСлю, Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ получился Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Ρ‹ΠΌ. Основной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΡƒΡ‚Ρ€Π°ΠΌΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π² 2024 строки Π½Π° языкС C ΠΈ 250 строк ΡˆΠ΅ΠΉΠ΄Π΅Ρ€Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° GLSL. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΡΡ‚ΠΈΡ‡Π½ΡƒΡŽ raylib для создания ΠΎΠΊΠ½Π° с Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌ OpenGL контСкстом. ВСкст сопровоТдаСтся Π²ΠΈΠ΄Π΅ΠΎΡ€ΠΎΠ»ΠΈΠΊΠ°ΠΌΠΈ с объяснСниями ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ‚Π΅ΠΌΠ°ΠΌ, Π° вСсь ΠΊΠΎΠ΄ Π²Ρ‹Π»ΠΎΠΆΠ΅Π½ Π½Π° GitHub. #literature

VPN, созданный ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌ Secure-by-design Много ΠΊΡ‚ΠΎ ΠΏΠΈΡˆΠ΅Ρ‚ ΠΏΡ€ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ SbD (Secure-by-design), Π½ΠΎ Π² Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠΌ ΠΌΠΈΡ€Π΅ Unix встрСчаСтся Π½Π΅ Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌ этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°. Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½Ρ‹ΠΌ показался Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹ΠΉ Π½Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ VPN-Π΄Π΅ΠΌΠΎΠ½Π° Sanctum: Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ, Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ Π² своСм Π΄ΠΈΠ·Π°ΠΉΠ½Π΅. Π’ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π°Π²Ρ‚ΠΎΡ€ постарался ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ своС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ максимально бСзопасным Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅. Sanctum ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΡΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ ΡΠΈΠΌΠΌΠ΅Ρ‚Ρ€ΠΈΡ‡Π½ΡƒΡŽ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡŽ, Π½ΠΎ позволяСт ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹Π΅ криптографичСскиС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΡ‹Π΅ сторонними Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ. #digest

НаслСдиС Никлауса Π’ΠΈΡ€Ρ‚Π° Как извСстно, 1 января 2024 Π³ΠΎΠ΄Π° Π½Π΅ стало Никлауса Π’ΠΈΡ€Ρ‚Π° (Niklaus Wirth), ΡƒΡ‡Π΅Π½ΠΎΠ³ΠΎ ΠΈΠ· Π¨Π²Π΅ΠΉΡ†Π°Ρ€ΠΈΠΈ, Π»Π°ΡƒΡ€Π΅Π°Ρ‚Π° ΠΏΡ€Π΅ΠΌΠΈΠΈ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°, извСстного Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Ρƒ благодаря своСму Π΄Π΅Ρ‚ΠΈΡ‰Ρƒ β€” языку программирования Pascal. Никлаус повлиял Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΠ΅ языки программирования ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, извСстныС Π½Π°ΠΌ сСгодня. НСмногиС Π·Π½Π°ΡŽΡ‚, Π½ΠΎ ΠΈΠ· ΠΏΠΎΠ΄ Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π° Π²Ρ‹ΡˆΠ»ΠΎ ΠΈ нСсколько Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΊΠ½ΠΈΠ³ ΠΏΠΎ computer science, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ бСсплатно. НиТС ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ самыС, Π½Π° наш взгляд, интСрСсныС. ΠŸΠ΅Ρ€Π²Π°Ρ ΠΊΠ½ΠΈΠ³Π° называСтся β€œAlgorithms and Data Structures” ΠΈ являСтся Π½Π΅ΠΏΠ»ΠΎΡ…ΠΈΠΌ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ Π² ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ «Алгоритмы ΠΈ структуры Π΄Π°Π½Π½Ρ‹Ρ…Β». Π’ ΠΊΠ½ΠΈΠ³Π΅ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π½Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ сортировки, рСкурсия, списки, Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ Π΄Π΅Ρ€Π΅Π²ΡŒΡ поиска, B-Π΄Π΅Ρ€Π΅Π²ΡŒΡ ΠΈ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Книга Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π°. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π½Π° языкС Oberon, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΌ Никлаусом Π’ΠΈΡ€Ρ‚ΠΎΠΌ. Π­Ρ‚ΠΎΡ‚ язык Π±ΡƒΠ΄Π΅Ρ‚ понятСн Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Ρƒ студСнтов, Π·Π½Π°ΠΊΠΎΠΌΡ‹Ρ… хотя Π±Ρ‹ с ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ языком программирования. Если читатСля заинтСрСсуСт описаниС самого языка программирования, примСняСмого Π² ΠΊΠ½ΠΈΠ³Π΅ Π²Ρ‹ΡˆΠ΅, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Π±Ρ€ΠΎΡˆΡŽΡ€Π΅, Ρ‚Π°ΠΊΠΆΠ΅ написанной Никлаусом. Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ нСвСроятно Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½ΠΎΠ³ΠΎ описания языка программирования, ΡΡ‚ΠΎΠ»ΡŒ Ρ€Π΅Π΄ΠΊΠΎΠ³ΠΎ Π² наши Π΄Π½ΠΈ. Авторству Π’ΠΈΡ€Ρ‚Π° ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹Ρ… Π²Π²ΠΎΠ΄Π½Ρ‹Ρ… ΠΊΠ½ΠΈΠ³ ΠΏΠΎ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ компиляторов β€” β€œCompiler Construction” (Ρ‡Π°ΡΡ‚ΡŒ 1, Ρ‡Π°ΡΡ‚ΡŒ 2). Книга повСствуСт ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ простого компилятора для подмноТСства Oberon, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ транслируСтся Π² ΠΊΠΎΠ΄ минималистичного RISC-процСссора, рСализация эмулятора ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ всСго страницу ΠΏΠ΅Ρ‡Π°Ρ‚Π½ΠΎΠ³ΠΎ тСкста! Π˜Π»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈ упраТнСния Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‚ ΠΏΠΎΠ³Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ‚Π΅ΠΌΡƒ. Π’ΠΎΠΎΠ±Ρ‰Π΅, школа Π’ΠΈΡ€Ρ‚Π° β€” ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ малСнький ΠΌΠΈΡ€ со своими языками программирования, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ систСмами ΠΈ Π΄Π°ΠΆΠ΅ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°ΠΌΠΈ. Π”Π°, Π² ETHZ (ШвСйцарская Π²Ρ‹ΡΡˆΠ°Ρ тСхничСская школа Π² Π¦ΡŽΡ€ΠΈΡ…Π΅) создали ΠΌΠ½ΠΎΠ³ΠΎ самобытных Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, ΠΈ Никлаус повлиял Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· Π½ΠΈΡ…, выступая Π°Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΈ Π²Π΄ΠΎΡ…Π½ΠΎΠ²ΠΈΡ‚Π΅Π»Π΅ΠΌ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². БущСствуСт ΠΊΠ½ΠΈΠ³Π°, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π°Ρ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ устройство Oberon-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, ΠΎΡ‚ ОБ Π΄ΠΎ ΠΆΠ΅Π»Π΅Π·Π°. Бамая свСТая ΠΊΠ½ΠΈΠ³Π° Π±Ρ‹Π»Π° ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π° Π’ΠΈΡ€Ρ‚ΠΎΠΌ для обучСния студСнтов. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ это наслСдиС, энтузиасты ΠΏΠ΅Ρ€Π΅Π½Π°Π±Ρ€Π°Π»ΠΈ тСкст ΠΊΠ½ΠΈΠ³ΠΈ Π² TeX, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π² Π½Π΅ΠΉ ошибки, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠ΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² PDF. Π”Π°ΠΆΠ΅ Ссли Π²Ρ‹ Π½Π΅ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ Π² довольно ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠΉ ΠΏΠΎ возмоТностям ΡƒΡ‡Π΅Π±Π½ΠΎΠΉ систСмС, Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ этой ΠΊΠ½ΠΈΠ³ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ навСсти Π½Π° интСрСсныС мысли, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ читатСля Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ минималистичноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, экономно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π΅ рСсурсы ΠΌΠ°ΡˆΠΈΠ½Ρ‹. К виртовской школС ΠΌΠΎΠΆΠ½ΠΎ отнСсти ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠ½ΠΈΠ³Ρƒ Π₯анспСтСра (Hanspeter MΓΆssenbΓΆck) ΠœΡ‘ΡΡΠ΅Π½Π±ΠΎΠΊΠ° β€œObject Oriented Programming in Oberon-2”. Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π° Π½Π΅ ΠΎ языкС, Π° ΠΎ ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ΅ программирования. Π‘Π°ΠΌ Π°Π²Ρ‚ΠΎΡ€ ΠΏΠΈΡˆΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ язык Π½Π΅ Π²Π°ΠΆΠ΅Π½, ΠΈ всС Ρ‚ΠΎ ΠΆΠ΅ самоС ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° любом Π΄Ρ€ΡƒΠ³ΠΎΠΌ, Ссли Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ. Книга ΡƒΡ‡ΠΈΡ‚ ΠΌΡ‹ΡΠ»ΠΈΡ‚ΡŒ Π² ООП-ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ΅ ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ΅ ΠΈ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС. Π’ ΠΊΠ½ΠΈΠ³Π΅ ΠΌΠ½ΠΎΠ³ΠΎ рСалистичных Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² условно ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… систСм, ΠΏΡ€ΠΈΡ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ объСм ΠΊΠ½ΠΈΠ³ΠΈ вСсьма нСбольшой. #literature

«Моим основным страхом Π±Ρ‹Π»ΠΎ Π½Π΅ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅, Π² ΠΊΠ°ΠΊΠΎΠΌ сСрвисС мою ΠΎΡˆΠΈΠ±ΠΊΡƒ простят, Π° Π² ΠΊΠ°ΠΊΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ всС ΠΏΠ΅Ρ‡Π°Π»ΡŒΠ½ΠΎ. И Π² ΠΈΡ‚ΠΎΠ³Π΅ β€” боязнь Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ случайно ΡΠ»ΠΎΠΌΠ°Ρ‚ΡŒ.Β» Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½Ρ‹ΠΉ пост, способный Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ вас Π² дСтство Π½Π° N Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄, Π² самоС Π½Π°Ρ‡Π°Π»ΠΎ вашСй ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Ρ‹. Π’ Π½Π΅ΠΌ β€” ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹Ρ… страхах Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ ΠΊΠΎΠ³Π΄Π°-Ρ‚ΠΎ Π±Ρ‹Π» стаТСром, Π° Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π»ΠΈΠ±ΠΎ спСциалист, Π»ΠΈΠ±ΠΎ Ρ‚ΠΈΠΌΠ»ΠΈΠ΄, Π»ΠΈΠ±ΠΎ Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ Ρ†Π΅Π»ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Если рядом с Π²Π°ΠΌΠΈ Π΅ΡΡ‚ΡŒ стаТСр ΠΈΠ»ΠΈ студСнт, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠΊΠ°ΠΆΠΈΡ‚Π΅ Π΅ΠΌΡƒ эту ΡΡ‚Π°Ρ‚ΡŒΡŽ: ΠΏΠΎΠΌΠΎΠ³ΠΈΡ‚Π΅ с ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ страх β€” это Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ, ΠΈ ΠΎΠ½ Π½Π΅ ΠΎΠ΄ΠΈΠ½. #literature

Literate Style Unix ВСроятно, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΠΈ ΡΠ»Ρ‹ΡˆΠ°Π»ΠΈ ΠΏΡ€ΠΎ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ Β«Π“Ρ€Π°ΠΌΠΎΡ‚Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅Β» (Literate programming), Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΡ€ΠΎΠΏΠ°Π³Π°Π½Π΄ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ Π”ΠΎΠ½Π°Π»ΡŒΠ΄ΠΎΠΌ ΠšΠ½ΡƒΡ‚ΠΎΠΌ. Бмысл этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ, Π° создаСтся Π² порядкС Ρ€Π°Π·ΠΌΡ‹ΡˆΠ»Π΅Π½ΠΈΠΉ Π°Π²Ρ‚ΠΎΡ€Π°. ΠŸΡ€ΠΈ этом ΠΊΠΎΠ΄ пСрСмСТаСтся с ΠΏΡ€ΠΎΠ·ΠΎΠΉ, ΠΎΠ±ΡŠΡΡΠ½ΡΡŽΡ‰Π΅ΠΉ, ΠΊΠ°ΠΊ этот ΠΊΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Π­Ρ‚ΠΎ Π½Π΅ Ρ‚ΠΎ ΠΆΠ΅ самоС, Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΡ€ΠΎΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, вСдь «грамотная» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ довольно высокиС ΡƒΡ€ΠΎΠ²Π½ΠΈ абстракции Π·Π° счСт использования ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² подстановки ΠΈ сбора ΠΊΠΎΠ΄Π° ΠΈΠ· ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… кусочков, раскиданных ΠΏΠΎ всСму Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρƒ. НС Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ извСстных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ написаны Π² этом стилС. Бамая знамСнитая ΠΈΠ· Π½ΠΈΡ… β€” ΠΈΠ·Π΄Π°Ρ‚Π΅Π»ΡŒΡΠΊΠ°Ρ систСма TeX, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ вСрсткС Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Π½Π°ΡƒΡ‡Π½Ρ‹Ρ… статСй Π² Ρ€Π΅Ρ†Π΅Π½Π·ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΠΆΡƒΡ€Π½Π°Π»Π°Ρ…. Π­Ρ‚Π° систСма Π±Ρ‹Π»Π° создана самим ΠšΠ½ΡƒΡ‚ΠΎΠΌ с использованиСм WEB β€” систСмы программирования Π½Π° основС языкС Pascal, конструкции ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² TeX-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚. Π’ΡƒΠ»ΠΈΠ½Π³ WEB позволяСт ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ исходный Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚, ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹ΠΉ для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ, ΠΈ Π² исходник, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² исполняСмый Ρ„Π°ΠΉΠ». Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, это сразу ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, ΠΈ ΠΊΠ½ΠΈΠ³Π° ΠΏΡ€ΠΎ устройство ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π§Π΅Π³ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ найдСшь Π½Π° просторах сСти. НапримСр, ΠΌΡ‹ нашли ΠΊΠ½ΠΈΠ³Ρƒ ΠΎ устройствС ΡƒΡ‡Π΅Π±Π½ΠΎΠΉ Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ ОБ Ulix, которая являСтся Π΅Ρ‰Π΅ ΠΈ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ этой систСмы, вСдь ΠΎΠ½Π° написана Π² literate style. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ подробная ΠΈ качСствСнно ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ ΠΊΠ½ΠΈΠ³Π°, которая ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ Π² Π»ΡŽΠ±ΠΈΡ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм. Волько ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ссли Π±Ρ‹ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ соврСмСнных open source ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ писались Π² Ρ‚Π°ΠΊΠΎΠΌ стилС! ИдСальная докумСнтация всСгда ΠΏΠΎΠ΄ Ρ€ΡƒΠΊΠΎΠΉ πŸ™‚ #digest

ΠœΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΡΡ‚ΠΈΡ‡Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° с абстракциСй Β«Ρ„Ρ€Π΅ΠΉΠΌΠ±ΡƒΡ„Π΅Ρ€Π°Β» Иногда хочСтся ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΠΎΠΌ зависимостСй, которая ΠΌΠΎΠ³Π»Π° Π±Ρ‹ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΎΠΊΠ½ΠΎ/Π½Π° экран ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ простой Π²Π²ΠΎΠ΄ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ИдСально, Ссли Π±Ρ‹ такая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π°ΡΡŒ пСрСносимой ΠΌΠ΅ΠΆΠ΄Ρƒ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ популярных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм. БущСствуСт мноТСство Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅, ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярная срСди Π½ΠΈΡ… β€” SDL 2 (Simple DirectMedia Layer). Π­Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅ΠΏΠ»ΠΎΡ…Π°, Π½ΠΎ для ΠΌΠ½ΠΎΠ³ΠΈΡ… Π·Π°Π΄Π°Ρ‡ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ слишком ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈ довольно тяТСлой. На Π²Ρ‹Ρ€ΡƒΡ‡ΠΊΡƒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΉΡ‚ΠΈ ΡƒΠ»ΡŒΡ‚Ρ€Π°ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° TIGR (Tiny GRaphics Library), ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹ для рисования, Π²Ρ‹Π²ΠΎΠ΄Π° тСкста ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Π²ΠΎΠ΄Π°. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ с использованиСм этой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π½Π° Windows, MacOS, Linux, iOS ΠΈ Android β€” ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎΠΉ список доступных ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ. На наш взгляд, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ для Π»ΡŽΠ±ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΈΠ½Π΄ΠΈ-Π³Π΅ΠΉΠΌΠ΄Π΅Π²Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для прохоТдСния game jams Π½Π° itch.io. #digest

Π£Ρ‡Π΅Π±Π½Ρ‹ΠΉ компилятор подмноТСства CΠΈ с оптимизациями Π’ ΠΏΠΎΠ»ΠΊΡƒ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… компиляторов языка CΠΈ, ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹Ρ… для обучСния, ΠΏΡ€ΠΈΠ±Ρ‹Π»ΠΎ. ВстрСчайтС shecc. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠΈΠ½ΠΈΠ°Ρ‚ΡŽΡ€Π½Ρ‹Ρ… ΡƒΡ‡Π΅Π±Π½Ρ‹Ρ… компиляторов, shecc ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ΅ прСдставлСниС Π½Π° основС SSA, ΡƒΠΌΠ΅Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΎΠ²ΡƒΡŽ Π°Π»Π»ΠΎΠΊΠ°Ρ†ΠΈΡŽ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ сразу Π΄Π²Π° Π±Π΅ΠΊΠ΅Π½Π΄Π° для популярных ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ (ARMv7-A ΠΈ RV32IM), выполняСт peephole-ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π»Π΅Π³ΠΊΠΎ бутстрапится ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Π² систСмС стандартного компилятора CΠΈ. ΠŸΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ языка, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ компилятором, позволяСт ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π΄Π°ΠΆΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ конструкции прСпроцСссора! Π‘Π°ΠΌΠΎΠ΅ врСмя ΠΏΠΎΠΊΠΎΠ²Ρ‹Ρ€ΡΡ‚ΡŒΡΡ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ x86, Π½Π΅ Ρ‚Π°ΠΊ Π»ΠΈ? #digest

Baremetal ΠΈΠ³Ρ€Π° Π½Π° C# Π˜Π³Ρ€Π°ΠΌΠΈ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΌΠΈ Π½Π° C#, сСгодня Π½ΠΈΠΊΠΎΠ³ΠΎ Π½Π΅ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚ΡŒ: этот язык ΠΎΡ‡Π΅Π½ΡŒ популярСн Π² Π³Π΅ΠΉΠΌΠ΄Π΅Π²Π΅, ΠΈ доступСн для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° популярных ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… Π΄Π²ΠΈΠΆΠΊΠΎΠ². А ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ Π½Π° C# Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая запускаСтся вовсС Π±Π΅Π· ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы? Благодаря возмоТности ahead of time компиляции Π² Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, Ρ‡Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ Π΄Π°Π²Π½ΠΎ сущСствуСт Π² .NET, стало Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ C# ΠΊΠΎΠ΄, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠΉΡΡ Π±Π΅Π· Ρ€Π°Π½Ρ‚Π°ΠΉΠΌΠ° ΠΈΠ»ΠΈ с Π΅Π³ΠΎ минимальной Π·Π°ΠΌΠ΅Π½ΠΎΠΉ. ΠœΠΈΡ…Π°Π» БтрСховский (Michal Strehovsky), ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ€Π°Π½Ρ‚Π°ΠΉΠΌΠ° .NET, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π» интСрСсный ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ ΠΈΠ³Ρ€Ρ‹, основанной Π½Π° рСйкастСрС ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹ΠΉ Π±Π΅Π· ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы. Π˜Π³Ρ€Π° написана Π½Π° C# ΠΈ компилируСтся Π² Π±ΠΈΠ½Π°Ρ€Π½ΠΈΠΊ Π±Π΅Π· Ρ€Π°Π½Ρ‚Π°ΠΉΠΌΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡƒΡ‰Π΅Π½ Π½Π° любом соврСмСнной x86-совмСстимом ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ с UEFI boot. Π£ Π°Π²Ρ‚ΠΎΡ€Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ рСализация Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎΠΉ ΠΈΠ³Ρ€Ρ‹ Π½Π° C# Π±Π΅Π· Π²Π½Π΅ΡˆΠ½ΠΈΡ… зависимостСй, которая Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Windows ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ мСньшС 2 ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚. Если Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π»ΡŽΠ±ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ osdev, Π° Π²Ρ‹Π±ΠΎΡ€ C ΠΈΠ»ΠΈ Rust покаТСтся заурядным, β€” ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π½Π΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° C#? #fun

Π‘Π°ΠΌΡ‹ΠΉ малСнький PNG Π² ΠΌΠΈΡ€Π΅ ΠœΡ‹, Π°Π²Ρ‚ΠΎΡ€Ρ‹ ΠΊΠ°Π½Π°Π»Π°, Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ с ΠΊΠΎΠ΄ΠΎΠΌ систСмного уровня, ΠΈ Π½Π°ΠΌ пСриодичСски приходится ΠΊΠΎΠ²Ρ‹Ρ€ΡΡ‚ΡŒΡΡ с hex-Π΄Π°ΠΌΠΏΠ°ΠΌΠΈ Π² поисках Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Ρƒ ΠΈΠ· нас это Π΅Ρ‰Ρ‘ ΠΈ нравится πŸ™‚ Нашим читатСлям сСгодня ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌ ΠΏΠΎΠ³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΡΡ Π² ΠΏΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹ΠΉ Ρ€Π°Π·Π±ΠΎΡ€ однопиксСльной ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ PNG, Π΄Π»ΠΈΠ½ΠΎΠΉ всСго 67 Π±Π°ΠΉΡ‚. #literature

БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ ΠΈ ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΏΠΎ бСзопасной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π’ Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³Π΅ TIOBE Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Ρ‹Π΅ языки программирования C ΠΈ C++ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ Π²Ρ‚ΠΎΡ€ΡƒΡŽ ΠΈ Ρ‚Ρ€Π΅Ρ‚ΡŒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, уступая Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Python. Код Π½Π° этих языках ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ повсСмСстно: Π² ядрах ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, Π°Π²ΠΈΠΎΠ½ΠΈΠΊΠ΅, ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ°Ρ… ΡƒΠΌΠ½Ρ‹Ρ… носимых устройств, Π²Π΅Π±-сСрвСрах ΠΈ Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ… ΠΈ срСдствах Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. ΠŸΡ€ΠΎΡΡ‚ΠΎ Π²Π·ΡΡ‚ΡŒ ΠΈ Π·Π°Π±Ρ‹Ρ‚ΡŒ эти ΡƒΡΡ‚ΠΎΡΠ²ΡˆΠΈΠ΅ΡΡ инструмСнты Π½Π΅ Π²Ρ‹ΠΉΠ΄Π΅Ρ‚, хотя Rust ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ систСмныС языки с бСзопасной модСлью памяти становятся всС популярнСС. ΠžΡΡ‚Π°Π΅Ρ‚ΡΡ ΠΎΠ΄Π½ΠΎ β€” Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ риски ΠΎΡ‚ использования нСбСзопасных инструмСнтов. Π’ этом ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ бСзопасной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ πŸ‘‰ ΠΏΠΎ ссылкС  #digest

МалСнькиС Unix-систСмы Π•Ρ‰Π΅ Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΌΡ‹ писали ΠΏΡ€ΠΎ Tilck, ΡƒΡ‡Π΅Π±Π½ΠΎΠ΅ ядро ОБ, частично совмСстимоС с Linux, Π° Ρ‚Π°ΠΊΠΆΠ΅ вспоминали ΠΏΡ€ΠΎ xv6, ΡΡ‚ΠΎΠ»ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΈΠ·Π²Π΅ΡΡ‚Π½ΡƒΡŽ Π² ΠΊΡ€ΡƒΠ³Π°Ρ… Ρ…ΠΎΠ±Π±ΠΈΠΉΠ½ΠΎΠ³ΠΎ osdev. А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΏΠΎΡ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π΅Ρ‰Π΅ ΠΏΠ°Ρ€ΠΎΡ‡ΠΊΡƒ минималистичных Unix-систСм, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ способны Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΠΎΠ΄ собой Π²ΠΏΠΎΠ»Π½Π΅ взрослоС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ bash, gcc ΠΈ make. Fiwix β€” нСбольшая учСбная POSIX-совмСстимая систСма для i386. Π”Π°, ΠΎΠ½Π° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ SMP, Π΅Π΅ ядро нСвытСсняСмо, Π΄Π° ΠΈ устроСно ΠΎΠ½ΠΎ довольно ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½ΠΎ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, эта малСнькая систСма ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠ΅ для нас GNU-ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅, Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ½Π° частично совмСстима с ABI старых вСрсий Linux. Sortix β€” Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ интСрСсный ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ self-hosted ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы. Π­Ρ‚Π° Unix-подобная ОБ позволяСт Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΠΎΠ΄ собой довольно ΠΌΠ½ΠΎΠ³ΠΎ GNU-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ binutils, gcc, nasm, python, bison, ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. Π’ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Π°Π²Ρ‚ΠΎΡ€ фокусируСтся ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° возмоТности Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ Sortix Π½Π° Π½Π΅ΠΌ ΠΆΠ΅ самом. Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„ΠΈΡ‡ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ сСти ΠΈΠ»ΠΈ SMP, ΠΎΡ‚ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΠ΅ Ρ€Π΅Π»ΠΈΠ·Ρ‹. А Π·Π½Π°Π΅Ρ‚Π΅ Π»ΠΈ Π²Ρ‹ ΠΊΠ°ΠΊΠΈΠ΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Unix-систСмы с ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎΠΉ ΠΈ ΠΎΠ±ΠΎΠ·Ρ€ΠΈΠΌΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ? #digest

БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… систСм БСгодня ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ ссылкой Π½Π° сайт, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ собрано нСсколько Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΊΠ½ΠΈΠ³, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΡ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹Ρ… ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… систСм. Π’ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, это Π΄Π²Π° Ρ‚ΠΎΠΌΠ° ΠΊΠ½ΠΈΠ³ΠΈ Β«The Architecture of Open Source ApplicationsΒ», Π³Π΄Π΅ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ красивыС Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Π΅ Π² извСстном ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ ПО, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² LLVM, Sendmail, PyPy, Git ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ…. Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° ΠΊΠ½ΠΈΠ³Π° ΠΈΠ· сСрии посвящаСтся вопросам ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… систСм. Π’ Π½Π΅ΠΉ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… извСстных open source ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Ρ€Π°Π·Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΈ Π² Π²Π°ΡˆΠΈΡ… собствСнных ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…. ΠžΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΡƒΠΆΠ΅ Π½Π°Π·Π²Π°Π½Π½Ρ‹ΠΌ ΠΊΠ½ΠΈΠ³Π°ΠΌ β€” Π±Ρ€ΠΎΡˆΡŽΡ€Π° Β«500 Lines or LessΒ», Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Ρ‹Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ для Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡: созданиС MVP ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ модСлирования, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ, Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°, ΠΈΠ»ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄Π° Python. #literature

ΠšΠ°ΠΆΠ΅Ρ‚ΡΡ, Π²Ρ‹ большС Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π΄Π°Π²Π°Ρ‚ΡŒ тСстовыС задания ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Π°ΠΌ Π½Π° Π΄ΠΎΠΌ ΠΠ°Ρ‚ΠΊΠ½ΡƒΠ»ΠΈΡΡŒ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠ½ΡƒΡŽ ΡΡ‚Π°Ρ‚ΡŒΡŽ, Π³Π΄Π΅ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΈΠ·ΠΌΡƒ AI Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ тСстовыС задания, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π½Ρ‹Π½Ρ‡Π΅ Π΄Π°ΡŽΡ‚ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Π°ΠΌ. Если ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎ, Ρ‚ΠΎ всС Π·Π°Π΄Π°Ρ‡ΠΈ послСдних Π»Π΅Ρ‚ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ΡΡ Π·Π° нСсколько ΠΌΠΈΠ½ΡƒΡ‚ ΠΏΡ€ΠΈ использовании Π½Π΅ΠΉΡ€ΠΎΠ½ΠΊΠΈ, доступ ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ. Π’ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, Π°Π²Ρ‚ΠΎΡ€ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΊΡ€ΠΈΡ‚ΠΈΠΊΡƒΠ΅Ρ‚ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, Π½ΠΎ ΠΈ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚, ΠΊΠ°ΠΊ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΎΡ‚Π±ΠΎΡ€Π° ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚ΠΎΠ² Π² соотвСтствии с Ρ…ΠΎΠ΄ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. #digest

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ Elite с коммСнтариями Elite β€” извСстная сСрия космичСских симуляторов с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ ΠΌΠΈΡ€ΠΎΠΌ, которая Π·Π°Ρ€ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π² Π΄Π°Π»Π΅ΠΊΠΈΡ… 80-Ρ…. Π’Π²ΠΎΡ€Π΅Π½ΠΈΠ΅ Дэвида БрэбСна ΠΈ Π―Π½Π° Π‘Π΅Π»Π»Π° стало мСгапопулярным, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² Ρ‚Π΅ Π³ΠΎΠ΄Ρ‹ ΠΈΠ³Ρ€Π° позволяла ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠΌΡƒ, хотя ΠΈ довольно ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½ΠΎΠΌΡƒ, случайно сгСнСрированному ΠΌΠΈΡ€Ρƒ, ΡΡ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ с космичСскими ΠΏΠΈΡ€Π°Ρ‚Π°ΠΌΠΈ, Ρ‚ΠΎΡ€Π³ΠΎΠ²Π°Ρ‚ΡŒ, ΠΏΡ€ΠΈΡΡ‚Ρ‹ΠΊΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΊ Π·Π°ΠΏΡ€Π°Π²ΠΎΡ‡Π½Ρ‹ΠΌ станциям, Π°ΠΏΠ³Ρ€Π΅ΠΉΠ΄ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Π°Π±Π»ΡŒ Π½Π° Π·Π°Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ ΠΊΡ€Π΅Π΄ΠΈΡ‚Ρ‹. И всС это Π½Π° Π΄ΠΎΠΌΠ°ΡˆΠ½ΠΈΡ… Π²ΠΎΡΡŒΠΌΠΈΠ±ΠΈΡ‚Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… Π²Ρ€ΠΎΠ΄Π΅ BBC Micro! Π‘Ρ‹Π»Π° рСализация Elite ΠΈ для Nintendo Entertainment System, извСстной Π² БНГ Π² основном благодаря китайским ΠΊΠ»ΠΎΠ½Π°ΠΌ этой приставки. ΠœΡ‹ Π½Π΅ встрСчали Π΅Π΅ Π½Π° китайских пиратских ΠΊΠ°Ρ€Ρ‚Ρ€ΠΈΠ΄ΠΆΠ°Ρ…, Π½ΠΎ Ρƒ обСспСчСнных ΠΎΠ±Π»Π°Π΄Π°Ρ‚Π΅Π»Π΅ΠΉ настоящСй Nintendo Ρ‚Π°ΠΊΡƒΡŽ ΠΈΠ³Ρ€Ρƒ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΡ‚ΡŒ. Как ΠΆΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ умСстили ΡΡ‚ΠΎΠ»ΡŒ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Π΅ ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠΊΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ для Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½ΠΎΠΉ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ систСмы? ЕстСствСнно, Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ исходников ΡΡ‚ΠΎΠ»ΡŒ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒ Π½Π° интСрСсныС мысли, Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄, Π²Ρ‹ΠΆΠΈΠΌΠ°Ρ‚ΡŒ ΠΈΠ· ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΆΠ΅Π»Π΅Π·Π° всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ΅. И сСгодня это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ссли Π²Ρ‹ Π½Π΅ Π±ΠΎΠΈΡ‚Π΅ΡΡŒ ассСмблСра MOS 6502. Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, Π²Ρ‹Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ Π½Π° Github, ΠΏΡ€ΠΎΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ нСвСроятно ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ β€” ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ ΠΎΠΏΡ‹Ρ‚Π½ΠΎΠΌΡƒ программисту Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅Π³ΠΊΠΎ ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ с Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ΠΌ, Π΄Π°ΠΆΠ΅ Ссли Π²Ρ‹ ΠΏΠ»ΠΎΡ…ΠΎ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΎΠΉ NES. А Ρ‚ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π» для освоСния ассСмблСра 6502 ΠΌΡ‹ ΡƒΠΆΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π»ΠΈ Ρ€Π°Π½Π΅Π΅. ΠŸΡ€ΠΈΡΡ‚Π½ΠΎΠ³ΠΎ погруТСния! #digest

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ lowtech ΡˆΠΈΡ„Ρ€ ΠœΡ‹ ΡƒΠΆΠ΅ описывали ΠΎΠ΄ΠΈΠ½ занятный криптографичСский Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π±Π΅Π· использования ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°, ΠΎΠ½ назывался ElsieFour(LC4). Напомним, Ρ‡Ρ‚ΠΎ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… Β«Ρ€ΡƒΡ‡Π½Ρ‹Ρ…Β» ΡˆΠΈΡ„Ρ€ΠΎΠ², этот прСдоставлял довольно ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ. БСгодня ΠΌΡ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π½Ρ‹ΠΉ Ρ€ΡƒΡ‡Π½ΠΎΠΉ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²Ρ‹ΠΉ ΡˆΠΈΡ„Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΊΠΎΠ»ΠΎΠ΄Ρƒ ΠΊΠ°Ρ€Ρ‚ β€” Solitaire cypher. Если ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ограничСниям Π½Π° ΠΏΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΈ Π΄Π»ΠΈΠ½Ρƒ сообщСний, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½Ρ‹Ρ… Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΉ ΠΈ ΠΎΡ‚ ΡΡ‚ΠΎΠ»ΡŒ простой lowtech систСмы ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ. #digest

Microsoft β™₯ Open Source and Rust Π’ΠΎ, Ρ‡Ρ‚ΠΎ Microsoft ΠΌΠ½ΠΎΠ³ΠΎ вкладываСтся Π² Open Source, ΡƒΠΆΠ΅ Π½ΠΈ для ΠΊΠΎΠ³ΠΎ Π½Π΅ сСкрСт: компания Π²Ρ‹Π»ΠΎΠΆΠΈΠ»Π° Π² свободный доступ мноТСство своих ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ², рСгулярно ΠΊΠΎΠ½Ρ‚Ρ€ΠΈΠ±ΡŒΡŽΡ‚ΠΈΡ‚ Π² исходный ΠΊΠΎΠ΄ ядра Linux ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ всячСски ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ нСзависимых Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². Π‘ Π½Π΅Π΄Π°Π²Π½ΠΈΡ… ΠΏΠΎΡ€ компания Ρ‚Π°ΠΊΠΆΠ΅ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ вкладываСтся Π² Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Rust Π½Π° своСй ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π²Ρ‹Π³ΠΎΠ΄Ρ‹ ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° своих систСмных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π½Π° memory- ΠΈ type-safe язык. Ну Π° совсСм Π½Π΅Π΄Π°Π²Π½ΠΎ Microsoft анонсировала ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ шаг β€” ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡŽ инструмСнтария для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² Windows Π½Π° Rust. Π’Π΅ΠΏΠ΅Ρ€ΡŒ WDM/WDF-интСрфСйсы, ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹Π΅ для систСмного Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, доступны Ρ…ΠΎΡ‚ΡŒ ΠΈ Π² Ρ€ΠΆΠ°Π²ΠΎΠΌ, Π½ΠΎ бСзопасном ΠΈ соврСмСнном языкС! πŸ™‚ #digest

НизкоуровнСвый бутстрап языков программирования ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π²Ρ‹ ΡΠ»Ρ‹ΡˆΠ°Π»ΠΈ ΠΏΡ€ΠΎ понятиС бутстрапа Π² Ρ€Π°Π·Ρ€Π΅Π·Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ языков программирования. ΠšΡ‚ΠΎ-Ρ‚ΠΎ создаСт Π½ΠΎΠ²Ρ‹ΠΉ язык, Π° компилятор для Π½Π΅Π³ΠΎ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π½Π° ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌ языкС программирования. ПослС Ρ‡Π΅Π³ΠΎ становится Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ компилятор Π½Π° Π½ΠΎΠ²ΠΎΠΌ языкС, ΠΈ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ компилятором. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ компилятор для Π½ΠΎΠ²ΠΎΠ³ΠΎ языка Π½Π° Π½Π΅ΠΌ ΠΆΠ΅ самом. ΠŸΡ€ΠΎΡΡ‚Π°Ρ ΠΈ богатая идСя. Но ΠΊΠ°ΠΊ Π±Ρ‹Ρ‚ΡŒ с Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅ΠΌ ΠΊ компилятору? КСн Вомпсон Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ "Reflections on Trusting Trust" ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π», Ρ‡Ρ‚ΠΎ компилятор, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΌΡ‹ довСряСм, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ "Π·Π°Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹ΠΌ" ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄. Π•ΡΡ‚ΡŒ Π»ΠΈ способ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΉ компилятор сразу? Ну, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡ‚Π°Ρ€Π°Ρ‚ΡŒΡΡ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ Π΄ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹Ρ… компиляторов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡ‚ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ простым, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… ΠΊΠΎΠ΄Π°Ρ…. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ устроСн ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠšΠ°Ρ€Ρ‚ΠΈΠΊΠ° Агарама (Kartik Agaram) Mu. Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π°Π²Ρ‚ΠΎΡ€ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π» нСсколько языков программирования, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ x86 ΠΈ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ компилятор языка Π±ΠΎΠ»Π΅Π΅ высокого уровня, ΠΏΠΎΠΊΠ° Π½Π΅ получится компилятор Π―Π’Π£ Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ C. ΠšΠ°Ρ€Ρ‚ΠΈΠΊ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ с ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ языка, лишь Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‰Π΅Π³ΠΎ вСсьма ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ² процСссора. НС ΠΌΠ΅Π½Π΅Π΅ интСрСсны ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, ΠΏΡ‹Ρ‚Π°ΡŽΡ‰ΠΈΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ языка Forth. StoneKnifeForth прСдставляСт собой ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Forth, всС слова ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΈΠΌ ASCII символом. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ для Ρ‚Π°ΠΊΠΎΠ³ΠΎ языка Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ нСслоТно Π΄Π°ΠΆΠ΅ Π±Π΅Π· ассСмблСра ΠΏΠΎΠ΄ Ρ€ΡƒΠΊΠΎΠΉ. Для упрощСния бутстрапа Π°Π²Ρ‚ΠΎΡ€ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π½Π° языкС Python. ΠŸΠ΅Ρ€Π²Π°Ρ рабочая копия компилятора, получСнная благодаря бутстрапу, ΡƒΠΆΠ΅ являСтся исполняСмым Ρ„Π°ΠΉΠ»ΠΎΠΌ ELF ΠΈ позволяСт Ρ€Π°ΡΡˆΠΈΡ€ΡΡ‚ΡŒ Π½Π°Π±ΠΎΡ€ конструкций языка ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ словами Forth. НС ΠΌΠ΅Π½Π΅Π΅ интСрСсСн ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ PlanckForth, Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ скрупулСзно написали Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… ΠΊΠΎΠ΄Π°Ρ… (ΡƒΠΆ Ρ‚ΠΎΡ‡Π½ΠΎ Π½ΠΈΠΊΡ‚ΠΎ ΠΊΡ€ΠΎΠΌΠ΅ Π°Π²Ρ‚ΠΎΡ€ΠΎΠ² Π½Π΅ оставит Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ). Π€Π°ΠΉΠ» с HEX-Π΄Π°ΠΌΠΏΠΎΠΌ достаточно ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ xxd ΠΈ Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ получится исполняСмый Ρ„Π°ΠΉΠ» компилятора минималистичного Forth. Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ язык ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ ΡƒΠΆΠ΅ своими Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌΠΈ срСдствами Π΄ΠΎ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎΠ³ΠΎ уровня, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ слоТноС. #digest