যখন গণনা করা হয় IO (IO ()), উভয় (IO ())এবং ()গণনা করা হয়, তাই কেন
main :: IO (IO ())
main = print <$> (print "Hello, World!")
ছাপা
"Hello, World!"
না
IO "Hello, World!" -- ??
"Hello, World!"
@ রেদু এটি সঠিক, তবে মনে রাখবেন যে এর প্রার্থনা
—
চি
print ()কখনই মূল্যায়ন হয় না, বা এর ক্রিয়াও সম্পাদিত হয়নি (যা স্টাডাউট প্রিন্ট করবে ())। সুতরাং, "অনুরোধ করার print ()পরে ..." কিছুটা বিভ্রান্তিমূলক (আইএমও)।
fmap print (print "Hello World")এটিরprintফলাফলের জন্য এটি প্রথম প্যারামিটার, ফাংশনটি প্রয়োগ করেprint "Hello World"। এটি কেবল ক্রিয়া সম্পাদনেরprint ()পরে অনুরোধের সমতুল্যprint "Hello World"।