型システムとは、プログラミング言語の安全性や効率を高めるうえで重要な理論・手法です。本書は、その型システムについて基礎的な話題を網羅し、実装例を交えて丁寧に解説したThe MIT Press発行の解説書“Types And Programming Languages”(TAPL)を翻訳したものです。言語設計者や学生だけでなく、静的型付言語を深く理解して活用したいプログラマーにとっても貴重な情報となっています。
型システムとは、プログラミング言語の安全性や効率を高めるうえで重要な理論・手法です。本書は、その型システムについて基礎的な話題を網羅し、実装例を交えて丁寧に解説したThe MIT Press発行の解説書“Types And Programming Languages”(TAPL)を翻訳したものです。言語設計者や学生だけでなく、静的型付言語を深く理解して活用したいプログラマーにとっても貴重な情報となっています。
浜松Ruby会議01に参加しました。 浜松のPython勉強会、Unagi.py、最高に名前がズルい #hmrk01— みずぴー (@mzp) March 28, 2015 発表資料『Rubyistのための型入門』 https://speakerdeck.com/mzp/rubyistfalsetamefalsexing-ru-men 原稿 上記の資料を作る前に書いた下書きです。あくまで下書きなので、一部スライドの内容と構成が違う部分があるので、注意してほしい。 導入 自己紹介 こんにちは、みずぴーです。とりあえず、簡単な自己紹介をします。 GithubやTwitterではmzpと名前でいろいろやってます。 今日は、名古屋から来ました。いやー、浜松って思ったより近いですねー。 お仕事では、スタンドファームという会社でRailsでMisocaというサービスを作っています。 スタンドファーム
第127回 Ruby vs Java ダックタイピングとインタフェースで見る多態性 - bingo_nakanishiの他言語出身者のためのPerl入門 を読んで、「静的な型付け言語もやればできる子なんです」と言うところを少しは見せる事ができればと、今さらなネタですが書き起こしてみました。ただし、ジェネリックに対応した言語である必要があります。 元の記事では Java でしたが、Java の環境がなかったので C++ で記述しています。Java も Java 5.0 以降(?)からジェネリックを取り入れたらしいので大きな違いはないと思います。 前置き いま、このようにhumanがtouchすると、おのおのの動物が鳴くソースを書いてみる。duck(アヒル)はhuman(人間)に触られると「ガーガー」と鳴き、dog (犬)はhuman(人間)に触れると「ワンワン」と鳴くとする。 第127回 R
Structural Subtyping とは - いげ太のブログ structural subtyping (構造的部分型)とは、強い型付けによる恩恵は魅力的やな、でも型は定義しても継承関係までは定義したくない、制限による堅さに利はあるけど柔軟性を失いすぎるのもちょっとな、インターフェースばっかりいくつも定義するのもアホらしいし、その時々で適当なインターフェース割り振るようにしたらステキやん、というシグネチャ至上主義だ。 構造的部分型の比較 - まぁ、そんなもんでしょう OCamlは全て型推論してくれる代わりに部分型への変換は明示的。部分型変換ができるバリアントがある。 haXeは全て型推論してくれて、かつ部分型への変換も暗黙的にできるけど、場合によってはコンパイルがとまらない Scalaは型推論は(完璧には)してくれないけど、部分型への変換は暗黙的 Scalaの構造的部分型 // クラ
ちまちま読んでたオブジェクト指向入門を読み終わった。だいたい入門と言っているが、原題は"Object-Oriented Software Construction"で入門感はないし、上下巻あわせて2000ページくらいあって読みきるのが大変だった。 原著は18年前に発売された本だが、内容のほとんどは今でも有益で、全体を通してためになる。オブジェクト指向が解決しようとしている課題や、背景にある理論や考え方について解説してくれるだけではなく、実際にソフトウェアを設計する際にどのようにクラスを見つけ、どんな場面で継承を使い、ソフトウェア全体をどのように形作っていくのかという実践的な議論も充実している。 本の序盤では、ソフトウェアの品質の様々な側面についての解説や、オブジェクト指向以前から使われていたモジュールや型の概念のがもつ諸課題について詳しく解説してくれる。それらの問題をふまえ、次に、ソフトウ
この記事を書き上げるには、相当長い時間がかかりました。本来は今年の年明け、 Rubyの死 やデイヴィッド・ハイネマイヤー・ハンソンの TDDは死んだ がアップされて騒ぎになる前に投稿するつもりだったのです。昨年末に書いたツイートを見てください。 > Rubyにはもう飽き飽きした。理由はいろいろあるが、特にその副作用と、ステータスが可変なせいで大量のユニットテストを書かされるのにはウンザリだ。 @abevoelker Rubyの開発に関しては、大勢の人が心のどこかで何かおかしい、何かが欠けていると思っているようですが、たいていの人は責める対象を間違っています。Rubyで書いたアプリがとんでもない代物になったって? それはあなたがきちんとテストコードを書かなかったか、テスト駆動開発(TDD)の指針に則って開発しなかったからです。もしくは、正しいデザインパターンに切り分けるための知識が不足してい
twitterで↓のネタを見つけました。 detail.chiebukuro.yahoo.co.jp すみません、ダックタイピングって時々耳にしたことはあったんですが、タイピング(文字入力)方法の一種だと勘違いしていました。お恥ずかしい・・・。 Wikipediaの説明を読んで、ようやく正しい意味を理解しました。 ja.wikipedia.org つまり実行時型解決のことだったんですね。ええ、概念的には以前から理解していました(説得力ないけど)。 それにしても、「間違っている」とまで言い切っちゃうと変な宗教論争になってしまいそうですね。 ダックタイピングに限らず、技術や思想にはメリットとデメリットが混在していることがほとんどですから、ケースバイケースでメリットがデメリットを超える場合にその技術を採用すればいい、ってことになります。 この手の議論をするなら詳細な前提条件を付け加えておかないと
スプラトゥーン(Splatoon)が5月28日に発売されて、もう1ヶ月が経ちますね! これまで、スプラトゥーンに関する記事がネットに多くアップされてきました! Splatoon(スプラトゥーン) on Twitter 様々な視点で書かれるスプラトゥーンの記事の中に、バトルの”攻略”を主眼にした記事が多くありました。そんな「スプラトゥーン攻略記事」を、はてなブックマーク数でランキングにしました。 どれも注目を集めている記事なので、試してみたくなる実践的なテクニックがたくさん載っています。 これらの記事を読んで、スプラトゥーンをもっと楽しもう!!イカしたプレイを目指せ!!くコ:彡〜〜〜 ナワバリバトル・ガチマッチで勝てない人は要チェックだ! 1位 任天堂の『Splatoon(スプラトゥーン)』が素敵だと思う22個の理由 - ニカイドウレンジ公式ブログ 最もブックマークされたのは、ニカイドウレン
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く