আইইএলআর (1)-পার্সার কী?


14

আমি নিজেকে বাইসানের ব্যবহার শেখানোর চেষ্টা করি। ম্যানপেজ বাইসন (1) বাইসন সম্পর্কে বলে:

এলএলআর (1), আইইএলআর (1), বা ক্যানোনিকাল এলআর (1) পার্সার সারণী নিয়োগকারী একটি ডিটারমিনিস্টিক এলআর বা জেনারেলাইজড এলআর (জিএলআর) পার্সার তৈরি করুন।

আইইএলআর-পার্সার কী? ওয়ার্ল্ড ওয়াইড ওয়েবে আমি যে সমস্ত প্রাসঙ্গিক নিবন্ধ পেয়েছি সেগুলি প্যাকওয়াল্ড।



@ রিনিয়ারপোস্ট আমি এখনই খুব বোকা বোধ করছি। আমি কেন এটি পেলাম না?
FUZxxl

আমি জানি না - গুগল ফলাফলগুলি ব্যক্তিগতকৃত করে ...
পুনরায় পোস্টার

@ রিনিয়ারপোস্ট, আপনার লিঙ্কটি উদ্ধৃত করে আপনি কি এই প্রশ্নের উত্তর দিতে চান, যাতে এই প্রশ্নটি পরিষ্কার হয়ে যায় ?
মার্বস

হুঁ ... ঠিক আছে যদি তাই হয়, ঠিক আছে।
রিইনারপোস্ট

উত্তর:


3

আইইএলআর (1) পার্সিং অ্যালগরিদম

IELR (1) পার্সিং অ্যালগরিদম জোএল ই Denny দ্বারা 2008 সালে উন্নত ছিল পিএইচডি অংশ হিসেবে ক্লেমসন বিশ্ববিদ্যালয়ের ব্রায়ান এ। ম্যালয়ের তত্ত্বাবধানে গবেষণা। আইইএলআর (১) অ্যালগরিদম হ'ল 1977 সালে ডেভিড পেজার দ্বারা নির্মিত তথাকথিত "ন্যূনতম" এলআর (1) অ্যালগরিদমের একটি প্রকরণ যা নিজেই 1965 সালে ডোনাল্ড নুথ আবিষ্কার করেছিলেন এলআর (কে) পার্সিং অ্যালগরিদমের একটি প্রকরণ । আইইএলআর আই (আই) এর অপ্রতুলতা দূরীকরণ (শেষ বিভাগটি দেখুন)।

এলআর (1) অ্যালগরিদম

এল আর (1) IELR (1) অংশ ঘোরা এল ডানদিকে EFT, আর ightmost শিক্ষাদীক্ষা 1 lookahead টোকেন। এলআর (1) পার্সারকে ক্যানোনিকাল পার্সারও বলা হয়। পার্সিংয়ের অ্যালগরিদমগুলির এই শ্রেণিটি পার্সিংয়ের সময় পরবর্তী পদক্ষেপটি পার্সিংয়ের সময় নির্ধারণ করে একটি স্ট্যাক এবং রাজ্য ট্রানজিশন টেবিলের সাহায্যে একটি নীচের অংশে শিফট-হ্রাস পার্সিং কৌশল নিয়োগ করে ।

Icallyতিহাসিকভাবে, এলআর (1) অ্যালগরিদমগুলি তাদের রূপান্তর টেবিলগুলির জন্য বড় মেমরির প্রয়োজনীয়তার দ্বারা বঞ্চিত হয়েছে। প্যাজারের উন্নতি হ'ল ট্রানজিশন টেবিল তৈরি হওয়ার সাথে সাথে সংক্রমণের রাজ্যের সংমিশ্রনের একটি পদ্ধতি তৈরি করা হয়েছিল, যা টেবিলের আকার উল্লেখযোগ্যভাবে হ্রাস করে। সুতরাং পেজারের অ্যালগরিদম এলআর (1) পার্সারগুলিকে স্থান এবং সময়ের দক্ষতার সাথে সম্পর্কিত অন্যান্য পার্সিং কৌশলগুলির সাথে প্রতিযোগিতামূলক করে তোলে। "ন্যূনতম এলআর (1) পার্সার" শব্দটি পেজারের অ্যালগরিদম দ্বারা প্রবর্তিত রূপান্তর টেবিলের ন্যূনতম আকারকে বোঝায়।

পেজারের অ্যালগোরিদমের সীমাবদ্ধতা

ন্যূনতম এলআর (1) অ্যালগরিদমগুলি ভাষাটি বিশ্লেষণের জন্য নির্দিষ্ট ইনপুট ব্যাকরণের উপর ভিত্তি করে রূপান্তর সারণি তৈরি করে। বিভিন্ন ব্যাকরণ একই ভাষা তৈরি করতে পারে। প্রকৃতপক্ষে, কোনও অ-এলআর (1) ব্যাকরণের পক্ষে একটি এলআর (1) পার্সেবল ভাষা তৈরি করা সম্ভব। অনুশীলনে, এলআর (1) পার্সার জেনারেটর নন-এলআর (1) ব্যাকরণকে এই সত্যকে সামঞ্জস্য করার জন্য দুটি সম্ভাব্য রাষ্ট্রীয় ট্রানজিশনের ("শিফট-হ্রাস বিবাদ") এর মধ্যে বিরোধ নিষ্পত্তি করার জন্য একটি স্পেসিফিকেশন সহ গ্রহণ করে। ডেনি এবং ম্যালোই দেখতে পান যে পেজারের অ্যালগরিদম এলআর (1) ভাষাগুলি পার্স করার পক্ষে যথেষ্ট শক্তিশালী পার্সার তৈরি করতে ব্যর্থ হয় যখন নন-এলআর (1) ব্যাকরণ একটি এলআর (1) ভাষা উত্পন্ন করে থাকে।

ডেনি এবং ম্যালোই দেখান যে এই সীমাবদ্ধতা কেবলমাত্র একাডেমিক নয় তা প্রমাণ করে যে গাওক এবং জিপিক, উভয়ই ব্যবহৃত, পরিপক্ক সফ্টওয়্যার, ভুল পার্সার ক্রিয়া করে perform

আইইএলআর (1) এর উন্নতি

ডেনি এবং ম্যালো পেজারের অ্যালগরিদম দ্বারা উত্পন্ন রূপান্তর টেবিলের সাথে সমতুল্য এলআর (1) ব্যাকরণের ট্রানজিশন টেবিলের সাথে তুলনা করে পেজারের অ্যালগরিদমের ঘাটতিগুলির উত্স অধ্যয়ন করেছিলেন এবং পেজারের সংক্রমণ টেবিলটিতে প্রদর্শিত হওয়া অপ্রত্যাশিত শব্দটির দুটি উত্স চিহ্নিত করেছিলেন। অ্যালগরিদম তবে এলআর (1) রূপান্তর সারণিতে নয়। ডেনি এবং মলয়ের আইইএলআর (1) (অপ্রয়োজনীয় এলিমিনেশন এলআর (1)) অ্যালগরিদম হ'ল পেজারের অ্যালগোরিদমের সাথে আকারে কার্যত অভিন্ন রূপান্তর টেবিল তৈরি করার সময় এই অপ্রতুলতাগুলি দূর করার জন্য ডিজাইন করা অ্যালগরিদম।


6

এটি প্রবর্তন করে বলে দাবি করে এমন একটি নিবন্ধ: আইইএলআর (1): প্র্যাকটিক্যাল এলআর (1) নন-এলআরের জন্য পার্সার টেবিলগুলি (1) বিবাদী রেজোলিউশন সহ গ্রাখারদের (আর্কাইভ.অর্গের মাধ্যমে) জোয়েল ই ডেনি এবং ব্রায়ান এ। ম্যালোয়, ক্লেমসন বিশ্ববিদ্যালয় , মলয়ের সাইট থেকে অবাধে উপলব্ধ।

তারা মূল্যবান এমন কিছু যা আমি উত্তর দিতে পারি না। (ব্যক্তিগতভাবে আমি এ জাতীয় পঙ্গু সিএফজি পার্সিংয়ের প্রয়োজনীয়তা বুঝতে পারি না - আপনি যখন কেবলমাত্র জিএলআর ব্যবহার করতে পারেন তখন কেন আপনার অভিব্যক্তি শক্তি সীমাবদ্ধ রাখবেন ? আমার কাছে কী বোঝা যায় তা ট্যাগ বা পিইজি (এগুলি প্রাকৃতিক বলে মনে হয় এবং অভিব্যক্তিযুক্ত শক্তি যোগ করে) বা গাছ ব্যাকরণ (এক্সএমএল এর মতো ভাষার জন্য, যেখানে পার্স গাছগুলি স্বীকৃতি ডিজাইনের দ্বারা কার্যকর নয়) gram


যদিও আমি প্রযুক্তি সংক্রান্ত নীতিতে একমত নই, সমস্যাটি প্রায়শই প্রচলিত নিয়মিতবাদী পার্সিংয়ের আরও ভাল এবং আরও সম্পূর্ণ বাস্তবায়ন হয়। আর একটি সমস্যা হ'ল জেনারেল সিএফ পার্সিং আরও শক্তিশালী, তবে জিএলআর এটির সেরা সংস্করণ নাও হতে পারে।
বাবু

4
লোকেরা কেন হাবল্ড সিএফজি পার্সার তৈরি করেছে তার প্রধান কারণ হ'ল একটি জিএলআর পার্সার অগত্যা রৈখিক সময়ে চলবে না many এটি অনেক অ্যাপ্লিকেশনের জন্য একটি বিশাল সমস্যা। একটি আইইএলআর পার্সার লিনিয়ার রানটাইম এবং আরও অনেক কিছুর গ্যারান্টি দিতে পারে।
FUZxxl

কেন সমস্যা হবে তা আমি বুঝতে পারি না।
পুনরায় পোস্টার

2
হে(এন4)হে(এন3)আমিমিএক্সহে(এনএক্স)। মানুষ চিরকাল বেঁচে থাকে না এবং অনেক কিছু করার থাকে। তাদের সময় নষ্ট করা সাধারণত খারাপ।
ব্যবহারকারী

3
আমি লক্ষ করতে চাই যে "ব্যক্তিগতভাবে আমি এই জাতীয় পঙ্গু সিএফজি পার্সিংয়ের প্রয়োজনীয়তা বুঝতে পারি না - আপনি কেবল জিএলআর ব্যবহার করতে পারলে কেন আপনার অভিব্যক্তি শক্তি সীমাবদ্ধ করবেন?" বরং এই প্রসঙ্গে ভুল পথে চালিত হয়। আইইএলআর (1) আরও দক্ষ এলআর (1) পার্সার সারণী তৈরি করতে ব্যবহৃত হয়, যা আরও দক্ষ জিএলআর পার্সারগুলির জন্য মঞ্জুরি দেয়
orlp
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.