دعم Maguyva للغة PHP: تطبيقات ويب طويلة العمر دون تعديلات عمياء
ذات صلة عندما تظل قاعدة كود PHP تُدرّ إيرادات، لكن لا أحد يريد لوكيل أن يتصرّف فيها بحرية دون ضابط.
الامتدادات
.php, .php3, .php4, .php5, +2 أخرى
يدعم Maguyva لغة Perl بشجرة AST والرموز والرسم البياني، ليتمكن وكلاء الذكاء الاصطناعي من تتبّع الحزم والإجراءات الفرعية واستيرادات use وrequire والمُنشئات في شيفرة Perl القديمة.
شيفرة Perl كثيفة ومرنة، وكثيرًا ما كتبها أشخاص رحلوا منذ سنوات. تغيّر الرموز البادئة (sigils) معنى الاسم، وتعمل الحزم أيضًا كفئات، وتُحمَّل الوحدة نفسها من سكربتات في أدلة كثيرة. يجد البحث النصي السلاسل، لكنه لا يخبر الوكيل بالإجراء الفرعي الذي يستدعيه السكربت فعلًا.
يمنح Maguyva الوكيل الحزم والإجراءات الفرعية والاستيرادات والمُنشئات على هيئة بنية، ليحدّد نطاق التغيير قبل أن يمسّ الشيفرة.
يغطي Maguyva الملفات .pl و.pm و.t و.pod و.perl. تُستخرج الإجراءات الفرعية دوالَّ وتصريحات package فئاتٍ، وتُحذف الرموز البادئة ($ و@ و% و& و*) من أسماء التعريفات، فيمكن البحث عن المتغيرات والإجراءات الفرعية بأسمائها المجرّدة.
تأتي الاستيرادات من عبارات use وrequire وpackage. وتُعدّ استدعاءات الأساليب بصيغة Class->new إنشاءً لمثيلات، بينما يُستبقى bless وtie عمدًا في الرسم البياني للاستدعاءات. ويسجّل الرسم البياني أيضًا الوراثة والتجاوزات ومراجع الأنواع والقراءات والكتابات وإطلاق الاستثناءات.
يُستبعد من علاقات الاستدعاء نحو 189 دالة مدمجة (print وopen وdie وwarn وما شابهها)، لتبرز شيفرة المستودع.
Billing::Invoice، وأيّ إجراءاته الفرعية تستدعي؟” (dependency_search في الاتجاه الوارد)Report::Monthly، وماذا يحدث بعد ->new؟” (find_symbol ثم get_task_context)Auth::Session.” (text_pattern_search ثم find_symbol)sub داخل حزمة، لذا لا يُصنَّف أسلوبًا في البحث البنيوي إلا الصياغة الأحدث المخصصة method. استخدم الإعداد المسبق functions لشيفرة Perl الكائنية القديمة.text_pattern_search حين تحتاج إلى كل استدعاء لـ open أو print.اربط مستودعًا عبر دليل البدء السريع، ثم راجع مصفوفة الدعم في صفحة التوافق. وإذا كان الإرث سينتقل إلى لغة سكربتات أخرى، فقارن مع دليل لغة Python.
الأنسب لـ
سير عمل الوكلاء
تفاصيل المحرك
نقاط دخول مفيدة عبر MCP
استخدمه مع اسم حزمة أو إجراء فرعي؛ تُحذف الرموز البادئة، فابحث بالاسم المجرّد.
استخدم التتبّع في الاتجاه الوارد على وحدة مشتركة لرؤية السكربتات والحزم التي تعتمد عليها.
استخدمه للدوال المدمجة المستبعدة ومفاتيح الإعدادات وسلاسل SQL التي تبقى خارج الرسم البياني للاستدعاءات.
أدلة ذات صلة
ذات صلة عندما تظل قاعدة كود PHP تُدرّ إيرادات، لكن لا أحد يريد لوكيل أن يتصرّف فيها بحرية دون ضابط.
الامتدادات
.php, .php3, .php4, .php5, +2 أخرى
مفيدة عندما تنتشر قواعد كود Python عبر الخدمات والنصوص البرمجية وملفات الأنواع النائبة والوصلات التشغيلية.
الامتدادات
.py, .pyi, .pyw