টার্ম রাইটিং কেন?


12

আমি কিছুটা গুগলিং করেছি এবং কিছুটা ছোট হয়ে এসেছি।

আমি ভাবছি যে বিজ্ঞানীরা, প্রোগ্রামারগণকে টার্ম রাইটিং, এবং / অথবা টার্ম গ্রাফ রাইটিংয়ের অধ্যয়ন করার প্রধান কারণগুলি কী?

আমি যতদূর বলতে পারি এটি কার্যকরী প্রোগ্রাম এবং (অত্যাবশ্যক) প্রোগ্রাম নিয়ন্ত্রণ সম্পর্কে মৌলিক যুক্তিতে সহায়তা করে। স্পষ্টতই, এটি লজিস্টিয়ান এবং যারা গঠনমূলক বিমূর্ত বীজগণিত অধ্যয়ন করেন তাদের কাছে অত্যন্ত আগ্রহের বিষয়।

যে কোন সাহায্যই সর্বাধিক প্রশংসিত হত!

উত্তর:


11

আমি নিশ্চিত নই যে এটি ইতিমধ্যে আপনি যা জানেন তার থেকে আরও বেশি আনবে। তবে তারপরে, আমি কী কারণে টার্ম রাইটিংয়ে আপনাকে বিস্মিত করে তা বুঝতে ব্যর্থ হতে পারি। এটা সাহায্য করে।

আপনি জানেন যে, ব্যাকরণগুলি স্ট্রিং রাইটিং সিস্টেমগুলি are চমস্কি শ্রেণিবিন্যাসের শীর্ষে, আপনার টাইপ 0 ব্যাকরণ রয়েছে, যা পুনরাবৃত্তিমূলকভাবে গণনাযোগ্য (আরই) অ্যাঙ্গুয়েজগুলি সংজ্ঞায়িত করে এবং ট্যুরিং মেশিনগুলির গণ্য শক্তি রয়েছে।

সুতরাং এটি আপনাকে জানায় যে সাধারণভাবে পুনর্লিখনের সিস্টেমগুলি অ্যালগরিদম প্রকাশের সাথে অনেক কিছুই করতে পারে।

স্ট্রিংগুলির সাধারণভাবে সমস্যাটি হ'ল তাদের সাথে শব্দার্থক সংযুক্ত করার কোনও সুস্পষ্ট উপায় নেই। এটি একধরনের নিরাকার রাইটিং।

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

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

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

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

আমি আপনাকে পরামর্শ দিচ্ছি যে আপনি এই বিষয়টির উইকিপিডিয়া নিবন্ধটি দেখুন ।


6

আমার চিন্তাভাবনাটি হ'ল, কারণ টার্ম রাইটিং হ'ল চূড়ান্ত কিছু এবং এটি আপনাকে কোনও হার্ডওয়্যার থেকে পৃথক করে অত্যন্ত নিম্ন স্তরের উপায়ে জিনিসগুলি বর্ণনা করতে দেয়।

শব্দ-পুনর্লিখন ব্যাকরণ বর্ণনা করতে পারে, তবে এটি আপনাকে প্রথম অর্ডার যুক্তি ইত্যাদির মতো বর্ণিত লজিক্যাল সিস্টেমে যান্ত্রিকও দেয় Pro প্রমাণ ও ছাড়ের ক্ষেত্রে পদ রচনা হিসাবে লেখা যেতে পারে। তারপরে, শব্দ-পুনর্লিখনের বিকল্পটি হ'ল সত্যই আপনার একমাত্র ক্রিয়াকলাপ। এখানে সরলতা মূল্যবান কারণ আপনি যুক্তি বর্ণনা করছেন, সুতরাং আপনি আপনার সিস্টেমটি বর্ণনা করার জন্য যুক্তির সম্পূর্ণ জটিলতা ব্যবহার করতে পারবেন না (যে সিস্টেমটি আপনি বর্ণনা করার চেষ্টা করছেন) তাই।

এরপরে ল্যাম্বডা ক্যালকুলাস সম্পর্কে আপনার লজিক্যাল / অ্যাক্সিয়োমেটিক সিস্টেম হিসাবে কথা বলার জন্য প্রয়োজনীয় মেকানিকগুলি আপনাকে দেয় যা আপনাকে গণনার একটি অত্যন্ত আনুষ্ঠানিক, মৌলিক সংস্করণ দেয় version

টিউরিং মেশিনগুলি দরকারী, তবে তাদের অন্তর্নিহিত সংজ্ঞাগুলির জন্য আপনাকে সেটগুলি, ফাংশন ইত্যাদির ধারণা থাকতে হবে build এখানে আরও অনেক গণিত রয়েছে যা ধরে নেওয়া হয়েছে।

অন্যদিকে লাম্বদা ক্যালকুলাসটি যুক্তির দিক দিয়ে সংজ্ঞায়িত করা হয়েছে, সুতরাং আপনি সেট তত্ত্ব, ফাংশন ইত্যাদির সংজ্ঞা হিসাবে বেশি কিছু ছাড়াই এটি ব্যবহার করতে পারেন you

শব্দ যুক্তি দ্বারা মডেল, পুনরায় লেখা, শুধুমাত্র কার্যকরী প্রোগ্রামিং জন্য প্রযোজ্য নয়। আপনি যখন হার্ডওয়্যার বা সফ্টওয়্যারটির আনুষ্ঠানিক যাচাইকরণ করছেন, আপনি সর্বদা কোনও ধরণের যুক্তি করতে যাচ্ছেন এবং এই যুক্তিটি শব্দটির পুনর্লিখনের মাধ্যমে মডেল করা যেতে পারে।


2

একটি অত্যন্ত ব্যবহারিক কারণ হ'ল এটি প্রোগ্রাম রূপান্তর সিস্টেম , সরঞ্জামগুলির সাহায্যে একটি পৃষ্ঠার-সিনট্যাক্স পুনর্লিখনগুলি ব্যবহার করে প্রোগ্রামগুলির জন্য কোডগুলি (বিমূর্ত সিনট্যাক্স ট্রি) হিসাবে কোডটি ব্যবহার করতে দেয় এমন সরঞ্জামগুলি তৈরি করে।

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.