LINUX.ORG.RU

История изменений

Исправление hateyoufeel, (текущая версия) :

Круто, а где тут монады? И зачем тут эксепшен кидается? Лулз в том, что в хачкелле это будет работать, например, для списков и вообще для всего подряд.

ghci> let f ma mb = do { i <- ma; j <- mb; return (i + j) }
ghci> f (Just 1) (Just 2)
Just 3
ghci> f [1,2,3] [4,5,6]
[5,6,7,6,7,8,7,8,9]

Жаба тут близко не валялась. Но зато исключениями кидаться можно, да. И высирать стектрейс. Жаба – это такой язык для превращения XML в километровые стектрейсы.

Исправление hateyoufeel, :

Круто, а где тут монады? И зачем тут эксепшен кидается? Лулз в том, что в хачкелле это будет работать, например, для списков и вообще для всего подряд.

ghci> let f ma mb = do { i <- ma; j <- mb; return (i + j) }
ghci> f (Just 1) (Just 2)
Just 3
ghci> f [1,2,3] [4,5,6]
[5,6,7,6,7,8,7,8,9]

Жаба тут близко не валялась. Но зато исключениями кидаться можно, да. И высирать стектрейс на километр в логи. Жаба – это такой язык превращения XML в километровые стектрейсы.

Исправление hateyoufeel, :

Круто, а где тут монады? И зачем тут эксепшен кидается? Лулз в том, что в хачкелле это будет работать, например, для списков и вообще для всего подряд.

ghci> let f ma mb = do { i <- ma; j <- mb; return (i + j) }
ghci> f (Just 1) (Just 2)
Just 3
ghci> f [1,2,3] [4,5,6]
[5,6,7,6,7,8,7,8,9]

Жаба тут близко не валялась.

Исправление hateyoufeel, :

Круто, а где тут монады? И зачем тут эксепшен кидается? Лулз в том, что в хачкелле это будет работать, например, для списков и вообще для всего подряд.

ghci> let f ma mb = do { i <- ma; j <- mb; return (i + j) }
ghci> f (Just 1) (Just 2)
Just 3
ghci> f [1,2,3] [4,5,6]
[5,6,7,6,7,8,7,8,9]
ghci> import qualified Data.Map as Map
ghci> f (Map.fromList [("k1", 1), ("k2", 2)]) (Map.fromList [("k1", 3), ("k3", 4)]

Жаба тут близко не валялась.

Исходная версия hateyoufeel, :

Круто, а где тут монады?