Programming with Refinement Types Ranjit Jhala (University of California, San Diego) Well-Typed Programs Can Go Wrong Division By Zero λ> let average xs = sum xs `div` length xs λ> average [100, 202, 300] 2 λ> average [] *** Exception: divide by zero Missing Keys λ> :m +Data.Map λ> let m = fromList [ ("haskell" , "lazy") , ("javascript" , "eager")] λ> m ! "haskell" "lazy" λ> m ! "clojure" "*** Exc
Summary: The development version of ghcid seemed to have some problems with terminating when Control-C was hit, so I investigated and learnt some things. Given a long-running/interactive console program (e.g. ghcid), when the user hits Control-C/Ctrl-C the program should abort. In this post I'll describe how that works in Haskell, how it can fail, and what asynchronous exceptions have to do with i
gistfile1.lhs @�3S�U 0t0S�U Interpreting Free Monads of Functor Sums ======================================== This text deals with a way to compose certain kinds of monads, thereby mixing their capabilities. It is a literate Haskell file, so let's begin with a bunch of noise. > {-# LANGUAGE MultiParamTypeClasses #-} > {-# LANGUAGE FlexibleInstances #-} > {-# LANGUAGE FlexibleContexts #-} > {-# LAN
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く