Это о синтаксическом сахаре в Хаскеле. Простая программа на Haskell:
main = do
args <- getArgs
let first = head args
print first
Я использую связывание в первой строке (args <- getArgs
) и чистое назначение во второй (let first = ...
). Можно ли объединить их вместе в читаемую однострочную строку?
Я понимаю, что могу переписать переплет "de-sugared":
main = do
first <- getArgs >>= ( return . head )
print first
Но есть ли более приятный способ, не загромождая строку (>> =) и возвращая?