سؤال

أنا أقوم بإنشاء مترجم يستهدف .NET وقد قمت سابقًا بإنشاء CIL مباشرةً، ولكن إنشاء أشجار DLR سيجعل حياتي أسهل إلى حد كبير.أنا أدعم بعض الميزات الديناميكية، وهي إنشاء وظيفة وقت التشغيل وكتابة البطة، ولكن الغالبية العظمى من التعليمات البرمجية ثابتة تمامًا.

والآن بعد أن تم شرح ذلك، لدي الأسئلة التالية:

  • هل تم استخدام DLR للتجميع الثابت، باستثناء الأمثلة الصغيرة على مدونات MSDN؟
  • إذا كان الأمر كذلك، ما هو نوع الأداء الذي تم تحقيقه؟
  • إذا لم يكن الأمر كذلك، فهل هناك ما يمنع ذلك بشكل أساسي؟
  • هل توجد آليات أفضل لتوليد التعليمات البرمجية من استخدام DLR أو إرسال IL مباشرة؟

أي فكرة عن هذا أو إشارات إلى المدونات/الأكواد/المحادثات ستكون موضع تقدير كبير.

هل كانت مفيدة؟

المحلول

لست على علم بوجود أي شخص يستخدم DLR بهذه الطريقة تمامًا حتى الآن، على الرغم من أن هذه بالتأكيد إحدى حالات الاستخدام المقصودة.أحد الأشياء المثيرة للاهتمام التي يجب مراعاتها هو أن أشجار تعبير DLR قد تم دمجها مع أشجار تعبير LINQ، وبالتالي فإن IL الذي يتم إنتاجه لـ LINQ في بعض الإصدارات المستقبلية غير المعلنة من Visual Studio سوف يستخدم كود DLR.

أحد الجوانب الرائعة لإصدار DLR كمصدر مفتوح هو أنه ليس لدينا أي فكرة عن أنواع الأشياء المثيرة للاهتمام التي قد يفعلها الأشخاص خارج الشركة بها :).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top