لماذا يترك الرمز البديل لقواعد ECMASCRIPT REGEXP العودية؟

StackOverflow https://stackoverflow.com/questions/3118802

سؤال

لا أستطيع لحياة لي معرفة سبب ترك البديل عودية. انها حقا يلقي وجع في المحلل الخاص بي.

Alternative :: 
    [empty] 
    Alternative Term 

فيما يلي ملاحظة في جزء الدلالات من المواصفات التي ليست واضحة تمامًا. ربما سيتم الكشف عن السبب بمجرد أن أفهم هذا؟

لاحظ المصطلحات المتتالية حاول مطابقة أجزاء متتالية في وقت واحد من سلسلة الإدخال. إذا كانت البديل الأيسر ، المصطلح الصحيح ، وتتمة التعبير العادي ، كلها لها نقاط اختيار ، يتم تجربة جميع الخيارات في التتمة قبل الانتقال إلى الاختيار التالي في المصطلح الصحيح ، ويتم تجربة جميع الخيارات في المصطلح الصحيح من قبل الانتقال إلى الاختيار التالي في البديل الأيسر.

ما نوع المحلل الذي يمكنه التعامل بشكل صحيح مع القواعد العودية اليسرى؟

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

المحلول

لأنه بالنسبة لأنواع معينة من المحلل اليسرى ، يكون الاستقرار الأيسر أفضل بكثير (على سبيل المثال بالنسبة ل YACC - انظر القسم 6.2 هنا للحصول على شرح).

إذا كان ذلك يسبب مشكلة في محلل المحلل الخاص بك ، فعندئذ ، قم بتبديله بكل الوسائل - فهو لا يؤثر على تعريف اللغة بأي شكل من الأشكال.

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