தனியுரிமையை மதிக்கும் வகைப் பிழை அளவிலான தொலைநிலை அளவீடு
Author
Venue
நிகழ்ச்சி நிரலாக்கலின் கலை, அறிவியல் மற்றும் பொறியியல்
Abstract
சூழல்: ராப்லாக்ஸ் ஸ்டுடியோ, லுவா எனப்படும் லூவாவின் ஒரு வகை மொழியில் நிரலாக்கம் செய்வதன் மூலம், மில்லியன் கணக்கான படைப்பாளிகளை ஊடாடும் அனுபவங்களை உருவாக்க அனுமதிக்கிறது. படைப்பாளர்கள், தங்கள் முதல் ஸ்கிரிப்டை எழுதும் புதியவர்கள் முதல் தொழில்முறை டெவலப்பர்கள் வரை பரந்த குழுவைச் சேர்ந்தவர்கள்; எனவே, லூவா பரந்த பார்வையாளர்களுக்கு ஆதரவளிக்க வேண்டும். அனைத்து வகையான நிரலாளர்களுக்கும் ஆதரவளிக்கும் அதன் முயற்சிகளின் ஒரு பகுதியாக, லூவா ஒரு விருப்பத்தேர்வான, படிப்படியான வகை அமைப்பை உள்ளடக்கியுள்ளது மற்றும் தவறான நேர்மறை பிழைகளைக் குறைக்க அதிக முயற்சி செய்கிறது. விசாரணை: லுவா தற்போது பல படைப்பாளிகளால் பயன்படுத்தப்படுவதால், மொழியை மேம்படுத்தவும், குறிப்பாக வகை அமைப்பை (type system) மேம்படுத்தவும் நாங்கள் தரவைச் சேகரிக்க விரும்புகிறோம். தரவைச் சேகரிப்பதற்கான நிலையான வழி, கிளையன்ட்-சைட் டெலிமெட்ரி (client-side telemetry) அமைப்பைப் பயன்படுத்துவதாகும்; இருப்பினும், எங்களால் தனிப்பட்ட தரவுகளையோ அல்லது தனியுரிமத் தகவல்களையோ சேகரிக்க முடியாது. இதன் பொருள், எங்களால் மூலக் குறியீடு துணுக்குகள், பிழைச் செய்திகள் அல்லது கோப்பகப் பாதைகளைக் கூட சேகரிக்க முடியாது. எனவே, ஊடுருவாத டெலிமெட்ரியை எவ்வாறு நடத்துவது மற்றும் அதிலிருந்து வகைப் பிழைகள் பற்றிய நுண்ணறிவுகளைப் பெறுவது எப்படி என்பது குறித்தே ஆராய்ச்சி கேள்விகள் அமைகின்றன. அணுகுமுறை: லுவாவிற்காக நாங்கள் ஒரு புனைப்பெயரிடப்பட்ட, यादृच्छिक மாதிரி எடுக்கும் டெலிமெட்ரி அமைப்பை வடிவமைத்து செயல்படுத்தினோம். டெலிமெட்ரி பதிவுகளில் ஒரு நேர முத்திரை, ஒரு அமர்வு ஐடி, அனுப்புவதற்கான காரணம் மற்றும் மிகச் சமீபத்திய வகைப் பகுப்பாய்வுகளின் எண்முறை சுருக்கம் ஆகியவை அடங்கும். இந்தத் தகவல், தனிப்பட்ட தரவை வெளிப்படுத்தாமல் காலப்போக்கில் வகைப் பிழைகளைப் பற்றி ஆய்வு செய்ய எங்களை அனுமதிக்கிறது. 2023 வசந்த காலத்தில் Roblox ஸ்டுடியோவில் இந்த அமைப்பை நாங்கள் வரிசைப்படுத்தினோம், மேலும் 340,000-க்கும் மேற்பட்ட அமர்வுகளிலிருந்து 1.5 மில்லியனுக்கும் அதிகமான டெலிமெட்ரி பதிவுகளைச் சேகரித்தோம். அறிவு: Luau பற்றிய பல கண்டுபிடிப்புகளை நாங்கள் முன்வைக்கிறோம், அவை அனைத்தும் வகைப் பிழை நடைமுறைகளைப் படிப்பதற்கு டெலிமெட்ரி ஒரு பயனுள்ள வழி என்பதைக் காட்டுகின்றன. அதிர்ச்சியளிக்காத கண்டுபிடிப்புகளில் ஒன்று, விருப்பத்தின் பேரில் படிப்படியாகச் சேர்க்கப்படும் வகைகள் (opt-in gradual types) பிரபலமாக இல்லை என்பதுதான்: வகைப்படுத்தப்படாத லுவாவு அமர்வுகளின் எண்ணிக்கையையும் வகைப்படுத்தப்பட்ட அமர்வுகளின் எண்ணிக்கையையும் ஒப்பிடும்போது 100 மடங்கு இடைவெளி உள்ளது. ஒரு ஆச்சரியம் என்னவென்றால், வகை பகுப்பாய்விற்கான கடுமையான முறை (strict mode) தரவு சொத்துகளுடனான தொடர்புகளில் மிகவும் எச்சரிக்கையாக உள்ளது. ஒரு நம்பிக்கையளிக்கும் கண்டுபிடிப்பு என்னவென்றால், வகை பகுப்பாய்வு அதன் உள் சிக்கல் அளவு வரம்புகளை அரிதாகவே அடைகிறது. அடிப்படை: எங்கள் கண்டுபிடிப்புகள் 1.5 மில்லியனுக்கும் அதிகமான டெலிமெட்ரி பதிவுகளைக் கொண்ட ஒரு தரவுத்தொகுப்பால் ஆதரிக்கப்படுகின்றன. தரவுகளும் அதைப் பகுப்பாய்வு செய்வதற்கான ஸ்கிரிப்ட்களும் ஒரு ஆர்டிஃபாக்ட்டில் கிடைக்கின்றன. முக்கியத்துவம்: லுவாவிற்கான உடனடி நன்மைகளைத் தாண்டி, வகைகள் மற்றும் வகைப் பிழைகள் குறித்த எங்கள் கண்டுபிடிப்புகள், டைப்ஸ்கிரிப்ட், எலிசர் மற்றும் டைப்ட் ரேக்கெட் போன்ற பிற படிப்படியான மொழிகளில் ஏற்றுக்கொள்வதற்கும் பணிச்சூழலியல் சார்ந்ததற்கும் தாக்கங்களைக் கொண்டுள்ளன. எங்கள் டெலிமெட்ரி வடிவமைப்பு பரந்த ஆர்வத்திற்குரியது, ஏனெனில் இது முக்கியமான தகவல்களை வெளிப்படுத்தாமல் வகைப் பிழைகளைப் பற்றித் தெரிவிக்கிறது.
