پرش به محتوای اصلی

93٪ از پاشیدن رنگ ها برنامه های معتبر Perl هستند (2019)

هکرنیوز۱۴۰۵ آبان ۲۱, پنجشنبه، ساعت ۰۲:۰۴حدود 2 دقیقه مطالعه

آدرس مقاله: https://www.mcmillen.dev/sigbovik/ آدرس نظرات: https://news.ycombinator.com/item?id=50459745 امتیاز: 279 # نظرات: 37

TLDR: مقاله را بخوانید و گالری برنامه های زیبای پرل را مشاهده کنید.

در این مقاله، هدف ما پاسخ به یک مشکل باز دیرینه در جامعه زبان‌های برنامه‌نویسی است: آیا می‌توان بدون ایجاد پرل معتبر، رنگ را روی دیوار آغشته کرد؟

ما به این سوال پاسخ مثبت می دهیم: می توان بدون ایجاد یک برنامه معتبر Perl، رنگ را روی دیوار آغشته کرد. ما از یک رویکرد تجربی، با استفاده از نرم‌افزار تشخیص کاراکتر نوری (OCR) استفاده می‌کنیم، که نشان می‌دهد فقط 93 درصد از پاشش‌های رنگ به عنوان Perl معتبر تجزیه می‌شوند. ما ویژگی‌های برنامه‌های پرل را تجزیه و تحلیل می‌کنیم و هفت نمونه از پاشش‌های رنگ را که برنامه‌های پرل معتبر نیستند، ارائه می‌کنیم.

برای انتشار در SIGBOVIK 2019، که در 1 آوریل 2019 در پیتسبورگ برگزار شد، پذیرفته شد. برنده یک روبان مشارکت ناخواسته، "مارک نام تجاری ناخواسته ای که ما پس از بررسی دقیق به هر مقاله چسبانده ایم که مصنوع واقعی را گنجانده است، در نتیجه دلایل تحسین برانگیز علم باز و به تعویق انداختن ثمربخش را بیشتر می کند."

آن را در Google Docs بخوانید یا یک PDF دانلود کنید. یا کل مراحل SIGBOVIK 2019 را بگیرید. من در صفحه 174 هستم.

در اینجا همه رنگ‌های پاشیده شده در یک صفحه به همراه کد منبع معتبر Perl مربوط به هر یک آمده است. برای تصاویری که به عنوان برنامه های معتبر Perl تجزیه نشده اند، "معتبر" با رنگ قرمز نوشته شده است. اگر تنظیمات مختلف OCR چندین برنامه معتبر پرل را شناسایی می‌کردند، من طبق حس زیبایی‌شناختی خودم، برنامه‌ای را انتخاب کردم که «جالب‌ترین» به نظر می‌رسید.

در اینجا یک تاربال از 100 تصویر رنگ پاشیده شده است که به عنوان مجموعه داده اصلی برای این مقاله استفاده شده است.

(کد منبع هنوز در دسترس نیست زیرا من در GitHub بد هستم)

چند برنامه پرل رنگ پاشیده وجود دارد که من آنها را تا پس از پایان مهلت ارسال SIGBOVIK به عنوان "جالب" تشخیص ندادم. به عنوان مثال، این اسپلتر توسط OCR به عنوان رشته lerzfijglpFiji-j شناسایی می شود که به عدد 0 در Perl ارزیابی می شود:

تصویر زیر به عنوان رشته -* شناخته می شود؟ ، که همچنین به عدد 0 در پرل ارزیابی می کند:

یکی دیگر از برنامه های شگفت انگیز در زیر نشان داده شده است. OCR این تصویر را به عنوان رشته ;i;c;;#\\?z{;?;;fn':.; ، که به رشته c در پرل ارزیابی می کند:

در نهایت، این تصویر به عنوان رشته ;E,'__' شناخته می شود که به رشته E__ در Perl ارزیابی می شود:

خواندن متن کامل در هکرنیوزبه زبان اصلی، در سایت ناشر باز می‌شود
متن اصلی (انگلیسی)

93% of paint splatters are valid Perl programs (2019)

Article URL: https://www.mcmillen.dev/sigbovik/ Comments URL: https://news.ycombinator.com/item?id=50459745 Points: 279 # Comments: 37

همه‌ی اخبار فناوری