পূর্ববর্তী প্রশ্নগুলিতে আমাকে বলা হয়েছে যে ফাংশনাল প্রোগ্রামিং ভাষাগুলি গতিশীল সিস্টেমে যেমন পদার্থবিজ্ঞানের ইঞ্জিনের জন্য অনুপযুক্ত, মূলত কারণ অবজেক্টগুলিকে পরিবর্তন করা ব্যয়বহুল। এই বিবৃতিটি কতটা বাস্তবসম্মত এবং কেন?
পূর্ববর্তী প্রশ্নগুলিতে আমাকে বলা হয়েছে যে ফাংশনাল প্রোগ্রামিং ভাষাগুলি গতিশীল সিস্টেমে যেমন পদার্থবিজ্ঞানের ইঞ্জিনের জন্য অনুপযুক্ত, মূলত কারণ অবজেক্টগুলিকে পরিবর্তন করা ব্যয়বহুল। এই বিবৃতিটি কতটা বাস্তবসম্মত এবং কেন?
উত্তর:
হাস্কেল এবং ক্লোজুর উভয়ই সত্যিকারের পরিবর্তনকে মঞ্জুরি দেয় তাই এটি শুরু করার জন্য কোনও অ-ইস্যু।
এর বাইরে, যদি আপনার "পরিবর্তনীয়" ডেটা যদি কিছু বৃহত্তর গণনার অংশ হিসাবে অন্তর্বর্তী মানগুলি ক্রমান্বয়ে আপডেট করা হয় তবে আপনার দক্ষ হওয়ার জন্য এমনকি পরিবর্তনের প্রয়োজনও পড়তে পারে না! উদাহরণস্বরূপ, হাস্কেলের স্ট্রিম ফিউশন নামক একটি প্রযুক্তি সম্পর্কিত গবেষণা চলছে , যেখানে সংকলক মধ্যবর্তী ডেটা স্ট্রাকচার সম্পূর্ণরূপে মুছে ফেলার জন্য প্রসেসিং লুপ, ডেটা প্রযোজক এবং ডেটা গ্রাহকদের ফিউজ করে।
এখানে হাস্কেলের মূল সমস্যাটি অলসতা a এমন একটি সংখ্যা-ক্রাঞ্চিং প্রোগ্রামে যেখানে আপনার প্রচুর ইনপুট ডেটা এবং প্রচুর আউটপুট ডেটা থাকে এবং এর সবগুলি গুরুত্বপূর্ণ, অলসতা আপনাকে খুব কম পক্ষে তবে তবুও কিছুটা ওভারহেড চাপিয়ে দেয়। এটি আপনি হাস্কেলের মতো প্রোগ্রাম লিখতে পারবেন না তা বলার অপেক্ষা রাখে না (লোকেরা আসলে বাস্তবে) তবে এটি ভাষার শক্তির সাথে খেলছে না এবং আপনি যে পারফরম্যান্স চান তা অর্জনের জন্য আপনার মূল্যায়নের মডেলটির আরও ভাল ধারণা থাকা দরকার।
এটি বলেছিল, ভারী সংখ্যা-ক্রাঞ্চিং JVM এর শক্তিতে খেলবে না। এই ধরণের প্রোগ্রামটি কেন ফোর্ট্রান এখনও রয়েছে।
আমি ক্লোজারের পক্ষে কথা বলতে পারি না, তবে আমি বলতে পারি হাস্কেলের কাছে প্রচুর উচ্চ সুরযুক্ত আইও প্যাকেজ রয়েছে যা আপনার পছন্দসই রূপান্তরকে অনুমতি দেবে।
এখানে আমি একটি প্রশ্নের উত্তর লিখেছি যেখানে কেউ 3 অতি সাধারণ বিষয়গুলি সম্পর্কে বিস্তারিত বর্ণনা করে এবং তাদের কার্য সম্পাদন সম্পর্কে শ্রদ্ধা জানায়: /programming/15439966/when-why-use-an-mvar-over-a-tvar/15440286 # 15440286
আপনি এখানে ওয়ার্প নামে একটি হ্যাশেল ওয়েব সার্ভারের পারফরম্যান্স মেট্রিকগুলি দেখায় একটি সাধারণ গ্রাফও দেখতে পারেন , এটি একটি উচ্চ আইও নিবিড় অ্যাপ্লিকেশন।
হাস্কেল সম্পর্কিত এ সম্পর্কে অনেক বিভ্রান্তি রয়েছে, সত্য সত্য এটি হ'ল আইওকে বিভিন্নভাবে বিভিন্নভাবে ব্যবহার করার জন্য হ্যাকেজের অনেকগুলি প্যাকেজ সহ চমত্কার আইও সুবিধাগুলি রয়েছে, যার মধ্যে বেশিরভাগই অত্যন্ত সুরযুক্ত। লোকেরা যে কারণটিকে মনে করে না, তা হ'ল কারণ হাস্কেল আইও-কে অন্য সমস্ত কিছু থেকে পৃথক করার জন্য দারুণ পরিসরে যায়, তবে এর পারফরম্যান্সের বৈশিষ্ট্যগুলিতে কোনও প্রভাব নেই।
পারফরম্যান্স বৈশিষ্ট্য সম্পর্কে এখন কথা বলার জন্য, লোকেরা যেহেতু স্বল্পতর পারফরম্যান্সকে স্বীকৃতি দেয় তা হ'ল অলস মূল্যায়নের কারণে এটি সর্বদা স্বজ্ঞাত নয়। আপনি যখন কোনও আইও প্রসঙ্গে কাজ করতে শুরু করেন এমন ধ্বংসাত্মক আপডেট যেমন কোনও সিস্টেমে আপনি উল্লেখ করছেন এমন ক্ষেত্রে এটি আপনাকে অবশ্যই খুব কম চিন্তার বিষয় হতে হবে। আরও লোকেদের সন্ধান করার ঝোঁক রয়েছে যে যখন তারা পারফরম্যান্সের সমস্যায় পড়ছেন তখন উপকরণগুলি তৈরি করার জন্য সুবিধাগুলি তৈরি করা হয় এবং কোথায় সংস্থানগুলি একটি দুর্দান্ত চুক্তিতে সহায়তা করে identify
আপনার বর্ণনার মতো সিস্টেমটির জন্য সন্ধান করার মতো আরও একটি মোনাদ হ'ল এসটি মোনাদ যা বিশেষত খুব ছোট আইও কলগুলি দুর্দান্ত পারফরম্যান্স দেওয়ার মাধ্যমে করা ধ্বংসাত্মক আপডেটের জন্য।
দুঃখিত, আমি সত্যিই ক্লোজারের সাথে কথা বলতে পারছি না, আশা করি অন্য কেউ সেখানে বিশদ দিতে পারে।
Due to the functional programming style the computational load will be distributed over the available CPU cores which can dramatically increase processing speed in some cases