تمت ترجمة المحتوى الموجود على هذا الموقع باستخدام الذكاء الاصطناعي (AI) أو تقنية الترجمة الآلية، وقد تحتوي على أخطاء.

Skip to content
Programming Languages
Human Computer Interaction
Data Science

قياس أخطاء الطباعة على نطاق واسع مع احترام الخصوصية

View Publication

Author

آلان جيفري (Roblox)، بن غرينمان (جامعة براون + جامعة يوتا)، شريرام كريشنامورثي (جامعة براون)، وميتش شاه (Roblox)

Venue

فن وعلم وهندسة البرمجة

Abstract

السياق: يتيح Roblox Studio لملايين المبدعين إنشاء تجارب تفاعلية من خلال البرمجة بلغة Lua المتفرعة التي تسمى Luau. يشكل المبدعون مجموعة واسعة، تتراوح من المبتدئين الذين يكتبون أول نصوصهم البرمجية إلى المطورين المحترفين؛ وبالتالي، يجب أن تدعم Luau جمهورًا واسعًا. كجزء من جهودها لدعم جميع أنواع المبرمجين، تتضمن Luau نظام أنواع اختياري وتدريجي، وتبذل قصارى جهدها لتقليل الأخطاء الإيجابية الكاذبة. الاستفسار: نظرًا لأن Luau يستخدم حاليًا من قبل العديد من المبدعين، نرغب في جمع البيانات لتحسين اللغة، وعلى وجه الخصوص، نظام الأنواع. الطريقة القياسية لجمع البيانات هي نشر القياس عن بُعد من جانب العميل؛ ومع ذلك، لا يمكننا استخراج البيانات الشخصية أو المعلومات الخاصة، مما يعني أنه لا يمكننا جمع أجزاء من شفرة المصدر أو رسائل الخطأ أو حتى مسارات الملفات. وبالتالي، فإن أسئلة البحث تدور حول كيفية إجراء القياس عن بُعد بطريقة غير تدخلية والحصول على رؤى منه حول أخطاء الأنواع. النهج: قمنا بتصميم وتنفيذ نظام قياس عن بُعد يعتمد على العينات العشوائية والمُخفية الهوية لـ Luau. تتضمن سجلات القياس عن بُعد طابعًا زمنيًا، ومعرف الجلسة، وسبب الإرسال، وملخصًا رقميًا لأحدث تحليلات الأنواع. تتيح لنا هذه المعلومات دراسة أخطاء الأنواع بمرور الوقت دون الكشف عن البيانات الخاصة. قمنا بنشر النظام في Roblox Studio خلال ربيع 2023 وجمعنا أكثر من 1.5 مليون سجل قياس عن بُعد من أكثر من 340,000 جلسة. المعرفة: نقدم عدة نتائج حول Luau، تشير جميعها إلى أن القياس عن بُعد هو وسيلة فعالة لدراسة الجوانب العملية لأخطاء الأنواع. إحدى النتائج الأقل إثارة للدهشة هي أن الأنواع التدريجية الاختيارية غير شائعة: هناك فارق بمقدار 100 ضعف بين عدد جلسات Luau غير المحددة النوع وعدد الجلسات المحددة النوع. ومن المفاجآت أن الوضع الصارم لتحليل الأنواع متحفظ للغاية فيما يتعلق بالتفاعلات مع أصول البيانات. ومن النتائج المطمئنة أن تحليل الأنواع نادرًا ما يصل إلى حدوده الداخلية فيما يتعلق بحجم المشكلة. الأساس: تدعم نتائجنا مجموعة بيانات تضم أكثر من 1.5 مليون سجل قياس عن بُعد. تتوفر البيانات والنصوص البرمجية لتحليلها في أداة. الأهمية: بالإضافة إلى الفوائد المباشرة لـ Luau، فإن نتائجنا حول الأنواع وأخطاء الأنواع لها آثار على اعتماد وراحة الاستخدام في لغات تدريجية أخرى مثل TypeScript و Elixir و Typed Racket. يحظى تصميم القياس عن بُعد لدينا باهتمام واسع، حيث يقدم تقارير عن أخطاء الأنواع دون الكشف عن معلومات حساسة.