Lambdaカクテル

京都在住Webエンジニアの日記です

ScalaではIntをDoubleに代入できるがサブタイプではない(関数引数の変性が反変になる話と絡めて)

非常に面白い題材をTwitterで発見したのでメモ。 このようなツイートを見た。 scalaって関数にも部分型関係があって、コンパイル通ると思ってたけどダメみたい。なんでですかね?val f : Double => Boolean = (d:Double) => trueval g : Int => Boolean = fh…

一回しか変数を呼べなくすることは可能か

バグを出しにくいソフトウェアを型で実現、みたいな話題が好きで、しょっちゅう型でなんとかできないか考えている。 そんな中、そもそもバグが出るのって、1つの変数を複数回「見る」ことによるものも多いのではないかと思った: 同じ変数が、離れた別々のス…

Webアプリケーション開発関連の記事を投稿しています.読者になってみませんか?