সম্পাদনা: এই উত্তরটিকে কেন নিম্নমানের করা হচ্ছে তা ব্যাখ্যা করার জন্য @ আন্তজারয় এবং @ আন্টাল স্পেক্টর-জাবুসকিকে ধন্যবাদ জানাই। তারা লিখেছে
ডকুমেন্টেশনটি কিছুটা বিভ্রান্তিকর। মানগুলি জিএইচসি সংকলকটিতে হার্ডকোড করা হয়। 48 বছর পরে আপনি অবশ্যই জানেন যে আসল কোড সর্বদা ডকুমেন্টেশন ট্রাম্প করে। - আন্তঃজয় গতকাল @ andy256 আপনি ঠিক বলেছেন যে ডকুমেন্টেশনটি খারাপ (সত্যই, ফ্রান্সিসকো এই প্রশ্নটি প্রথমে কেন জিজ্ঞাসা করেছিল তারই অংশ) এবং আপনার বিভ্রান্তি বোধগম্য। হাস্কেলের বিষয়টি হ'ল যদি সেই স্ট্রিংয়ের মানগুলি রানটাইমের সময় পরিবর্তিত হতে পারে তবে এটি একটি বিরাগ বাগ হতে পারে - ভেরিয়েবলগুলি পরিবর্তনের অনুমতি নেই। এটি আইও টাইপ কনস্ট্রাক্টরের তাত্পর্য - এটি এমন একটি গণনা উপস্থাপন করে যা "বাইরের বিশ্বের" অ্যাক্সেস করার অনুমতি দেয় এবং সুতরাং যার ফলাফল পরিবর্তন হতে পারে। সিস্টেম কল করা আইও অ্যাকশনের একটি ভাল উদাহরণ। … [1/2] - আন্টাল স্পেক্টর-জাবুস্কি 9 ঘন্টা আগে @ andy256… (আরও একটি আইও ক্রিয়া "গ্লোবাল কাউন্টারকে আপডেট করা" হতে পারে)) সুতরাং যখন আমরা কোনও স্ট্রিং দেখি, আমরা জানি যে এটি কোনও যোগাযোগ করতে পারে না with হুডের নীচে ওএস। এই কারণেই, সম্ভবত আশ্চর্যরকমভাবে যদি আপনি হাস্কেল ব্যবহার করেন না তবে ওএস বাস্তবায়ন করা সহজ হবে না: সিস্টেম কল করা স্ট্রিং - এরকম কোনও মান বেসিক হাস্কেলের ক্ষেত্রে অপরিবর্তনীয়, প্রোগ্রামগুলির প্রতিটি প্রোগ্রামের প্রত্যাশা লঙ্ঘন করবে কাজ, এবং সংকলক এবং অপ্টিমাইজার সম্ভাব্য এমনকি ট্রিপ (কোনও তাত্ত্বিক উদ্বেগ নয় - সেখানে স্ট্যাক ওভারফ্লো উত্তর রয়েছে যেখানে লোকেরা সাদৃশ্যযুক্ত সমস্যার মধ্যে চলে)) [2/2] - আন্টাল স্পেক্টর-জাবুস্কি এই কারণেই, সম্ভবত আশ্চর্যরকমভাবে যদি আপনি হাস্কেল ব্যবহার করেন না তবে ওএস বাস্তবায়ন করা সহজ হবে না: সিস্টেম কল করা স্ট্রিং - এরকম কোনও মান বেসিক হাস্কেলের ক্ষেত্রে অপরিবর্তনীয়, প্রোগ্রামগুলির প্রতিটি প্রোগ্রামের প্রত্যাশা লঙ্ঘন করবে কাজ, এবং সংকলক এবং অপ্টিমাইজার সম্ভাব্য এমনকি ট্রিপ (কোনও তাত্ত্বিক উদ্বেগ নয় - সেখানে স্ট্যাক ওভারফ্লো উত্তর রয়েছে যেখানে লোকেরা সাদৃশ্যযুক্ত সমস্যার মধ্যে চলে)) [2/2] - আন্টাল স্পেক্টর-জাবুস্কি এই কারণেই, সম্ভবত আশ্চর্যরকমভাবে যদি আপনি হাস্কেল ব্যবহার করেন না তবে ওএস বাস্তবায়ন করা সহজ হবে না: সিস্টেম কল করা স্ট্রিং - এরকম কোনও মান বেসিক হাস্কেলের ক্ষেত্রে অপরিবর্তনীয়, প্রোগ্রামগুলির প্রতিটি প্রোগ্রামের প্রত্যাশা লঙ্ঘন করবে কাজ, এবং সংকলক এবং অপ্টিমাইজার সম্ভাব্য এমনকি ট্রিপ (কোনও তাত্ত্বিক উদ্বেগ নয় - সেখানে স্ট্যাক ওভারফ্লো উত্তর রয়েছে যেখানে লোকেরা সাদৃশ্যযুক্ত সমস্যার মধ্যে চলে)) [2/2] - আন্টাল স্পেক্টর-জাবুস্কি এবং সম্ভাব্য এমনকি সংকলক এবং অপ্টিমাইজার ট্রিপও (তাত্ত্বিক উদ্বেগ নয় - এমন স্ট্যাক ওভারফ্লো উত্তর রয়েছে যেখানে লোকেরা সাদৃশ্যযুক্ত সমস্যার মধ্যে চলে)। [2/2] - আন্টাল স্পেক্টর-জাবুস্কি এবং সম্ভাব্য এমনকি সংকলক এবং অপ্টিমাইজার ট্রিপও (তাত্ত্বিক উদ্বেগ নয় - এমন স্ট্যাক ওভারফ্লো উত্তর রয়েছে যেখানে লোকেরা সাদৃশ্যযুক্ত সমস্যার মধ্যে চলে)। [2/2] - আন্টাল স্পেক্টর-জাবুস্কি
এটিতে বর্তমানে দুটি মুছে ফেলা ভোট রয়েছে। আমি সেই প্রক্রিয়াটি অবশ্যই চলতে দেব, তবে প্রস্তাব দিচ্ছি এটির কিছু মূল্য আছে। পাশের নোটে, তাদের ব্যাখ্যাগুলি দেখায় যে প্রশ্নটি দুর্বল ছিল, এবং উত্তরগুলিও রয়েছে, যেহেতু একটি হাস্কেল নবজাতক সহজেই আমার যুক্তিটি অনুসরণ করতে পারে।
আসল উত্তর:
আমি হাস্কেল প্রোগ্রামার নই, তবে ইতিমধ্যে প্রদত্ত দুটি উত্তর ওপি সংযুক্ত ডকুমেন্টেশনের সাথে মেলে না।
ডকুমেন্টেশন আমার ব্যাখ্যা অনুসরণ।
os :: String - এটি আপনাকে "অপারেটিং সিস্টেমটি দেয় যার উপর প্রোগ্রামটি চলছে" "
আমি আশা করি এটি তথ্য পাওয়ার জন্য একটি সিস্টেম কল জারি করবে। কারণ প্রোগ্রামটি যে কম্পিউটারে সংকলিত হয়েছে এটি তার উপর চালিত সিস্টেমের থেকে আলাদা হতে পারে যা সংকলক দ্বারা সন্নিবেশ করা কোনও মান হতে পারে না। যদি কোডটি ব্যাখ্যা করা হয় তবে দোভাষী তার ফলাফল প্রদান করতে পারেন, যা অবশ্যই সিস্টেম কলের মাধ্যমে প্রাপ্ত হওয়া উচিত।
arch :: String - এটি আপনাকে "মেশিন আর্কিটেকচারটি দেয় যার উপর প্রোগ্রামটি চলছে।"
আবার, আমি প্রত্যাশা করি যে এটি তথ্য পাওয়ার জন্য একটি সিস্টেম কল জারি করবে। কারণ প্রোগ্রামটি যে কম্পিউটারে সংকলিত হয়েছে এটি তার উপর চালিত সিস্টেমের থেকে আলাদা হতে পারে যা সংকলক দ্বারা সন্নিবেশ করা কোনও মান হতে পারে না।
compilerName :: String - এটি আপনাকে "হাস্কেল বাস্তবায়ন দেয় যার সাথে প্রোগ্রামটি সংকলিত হয়েছিল বা ব্যাখ্যা করা হচ্ছে।"
এই মানটি অবশ্যই সংকলক / দোভাষী দ্বারা isোকানো হয়েছে।
compilerVersion :: String- এটি আপনাকে " compilerNameপ্রোগ্রামটি সংকলিত হয়েছিল বা ব্যাখ্যা করা হচ্ছে তার সংস্করণ " "
এই মানটি অবশ্যই সংকলক / দোভাষী দ্বারা isোকানো হয়েছে।
আপনি প্রথম দুটি কলটি ইনপুট পাওয়ার জন্য বিবেচনা করতে পারছেন, ফল অপারেটিং সিস্টেম দ্বারা রাখা মান থেকে আসে values I / O সাধারণত গৌণ স্টোরেজ অ্যাক্সেস বোঝায়।
IOসেখানে কিছু চায় তবেuname(3)হ্যাকেজের চারপাশে একটি মোড়ক পাওয়া যায়: হ্যাকেজ.হেসকেল.আর