سؤال

وأنا اتلقى مثار أكثر وأكثر في تراخيص اشتراك الجهاز النامية. لقد وضعت واحدة صغيرة مع F # باستخدام fslex وfsyacc لكن رسائل الخطأ غير دقيقة (أنا أيضا لا يمكن أن تجد وسيلة لتوليد أفضل منها، يبدو أن هناك وثائق قليلة عن كيفية التعامل مع حالات الخطأ)، وحقيقة أن وسوف يتم تحليل السلاسل UNICODE بشكل كاف أمر غير مقبول بالنسبة لي. قصة قصيرة طويلة، أنا أبحث عن أدوات مما يجعلها بسيطة جدا لتطوير DSL (أدوات Visual Studio لأنه حقا لا شيء مثل ما أنا بعد) وأنا الأكثر اهتماما في الجزء جيل الاعراب / AST. لقد ألقيت نظرة على ANTLR والخلط بين رمز وتعريف قواعد اللغة الفوقية لغة تبدو سيئة بالنسبة لي، لذا يرجى لا أذكر ذلك أو حلول يعاني من مشكلة مشابهة في الإجابات. أيضا، رأيت هناك بعض الاشياء لبو لغة اسمه ولكن أنا حقا لا ترغب في العبث معه حتى الآن لغة أخرى (وخاصة إذا كان لديه القليل من الدعم) في الوقت الحالي، لذلك لا يصلح سواء. ويقدر أي اقتراح آخر، طالما وثقت أنه لائق، يعمل بشكل جيد مع صافي وأخيرا وليس آخرا لا تنطوي على استخدام لغة كتابة حيوي أو استخدام DLR.

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

المحلول

وأنت تريد أن تبدأ العمل مع أوسلو. ويشمل الأدوات اللازمة لتحديد DSL وأدوات لتحديد قواعد النحو على مدى DSL. يمكن للقواعد النحو إما ينبعث من AST أو أي شيء آخر.

ونوع واحد من المخرجات التي يمكن أن تولد من DSL هو الجيش العراقي المقابلة مخطط SQL خادم. وبالتالي، يمكن مثيلات DSL يتم تخزينها في SQL Server اكسبرس (أو أعلى).

وأوسلو هو جزء من رؤية أكبر أن مايكروسوفت لديها، ولكن يمكنك تجاهل ذلك، ومجرد الحصول بدأت مع "DSL" جزءا منها.

وأنصحك تبدأ، والحصول نشطة في السماح مايكروسوفت تعرف ما تريد ويكرهون حول هذا الموضوع. كنت قد حصلت على اهتمامها في الوقت الراهن، سواء كنت تعرف ذلك أم لا.

نصائح أخرى

وربما كنت قد يقدم أوسلو المحاولة. أنا شخصيا لم تستخدم حتى الآن، ولكن الأمثلة يبحثون مثيرة للاهتمام للغاية.

<اقتباس فقرة>   

و"أوسلو" وتتألف من:   ومن الأدوات التي تساعد الناس على تحديد والتفاعل مع النماذج بطريقة غنية والبصرية   لغة الذي يساعد الناس على إنشاء واستخدام النصوص لغات مجال معين ونماذج البيانات   مستودع العلائقية التي تجعل من النماذج المتاحة لكلا أدوات ومكونات النظام الأساسي

هنا نوعا من نظرة عامة!

وأنت قد لا تزال ترغب في النظر في شفرة المصدر بو لمعرفة كيف تفعل أشياء. كما أنها تستخدم لتوليد ANTLR محلل. أنت لا تحتاج إلى مزيج أي رمز في ANTLR مع قواعد النحو، يمكن أن يكون مفيدا وصفية تماما، طالما انها LL (*) الناطقة.

والسخرية - التي تقع في السخرية @ كود بلاكس قد يكون حلا جيدا بالنسبة لك - يمكنك بناء قواعد اللغة الخاصة بك الاستفادة من وظائف مضمنة إلى اللغات. NET بدلا من محاولة بناء BNF ملفات قواعد اللغة بشكل منفصل.

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