سؤال

لقد كانت لغة Perl واحدة من أدوات لغة البرمجة التي أستخدمها لسنوات وسنوات.تبدو القواعد النحوية لـ Perl 6 بمثابة ميزة لغوية رائعة.أود أن أعرف ما إذا كان شخص ما قد بدأ شيئًا كهذا من أجل روبي.

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

المحلول

لا. وبما أن قواعد Perl6 هي أ لغة الميزة ، وروبي لا يسمح بتمديد اللغة ، إنها في الواقع غير ممكن لتنفيذ هذا في "addon".

ومع ذلك ، هناك العديد من المكتبات لروبي التي تنفذ أنواعًا مختلفة من أنظمة التحليل أو القواعد. المكتبة القياسية تحتوي بالفعل على racc, ، وهو مولد محلل Lalr (1) (مماثل للمقارنة ومتوافق إلى حد ما مع الموقر yacc). ثم هناك Antlr مولد المحلل ، الذي يحتوي على ظهر روبي (على الرغم من أنني لست متأكدًا مما إذا كان هذا يعمل بالفعل).

الأقرب إلى Perl6 القواعد في روبي سيكون مشروع روبي أوميتا (تأكد أيضًا من إلقاء نظرة على شوكة ريان ديفيس) ، والتي للأسف لا يزال قيد التطوير. (أو بالأحرى ، لم يعد تحت التنمية النشطة.)

لذا ، الحفاظ على الأشياء في الواقع موجود, ، أوصيك بإلقاء نظرة على مشروع القواعد و Treetop.

نصائح أخرى

إذا كنت تريد استخدام القواعد النحوية الفعلية لـ Perl 6 في روبي، فسيكون أفضل رهان لك هو أساسي, ، مترجم روبي على الببغاء.إنها حاليًا غير مكتملة وبطيئة جدًا، ولكنني متفائل جدًا بأن تكون قابلة للتطبيق في نهاية المطاف.إنه حاليًا غير نشط في الغالب، في انتظار بعض التغييرات في البنية التحتية في Parrot لدعم سرعة التحليل المحسنة والميزات الإضافية.

لا أعرف أي شيء مشابه لروبي.

ومع ذلك ، هناك شيء مشابه لـ Perl5 ، انظر Regexp::Grammars

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