下記の評価器では、ジャバがない場合は「未定義」の結果となっている。言い換えるとその結果はどのようにも定義可能である。
— ジャバボタン・クリッカー (@toby_net) 2015, 5月 5
ジャバがただないがために「未定義」であった結果、その計算機が勢いよく飛び立ち、ロシア領へと向かうとも限らない。
— ジャバボタン・クリッカー (@toby_net) 2015, 5月 5
また、せっかくの飛行能力を持った計算機がシェアハウス上空をとびかったならば、「抽象の梯子」(後述)の餌食になりかねない。そうなれば、ジャバの面目も丸つぶれである。
— ジャバボタン・クリッカー (@toby_net) 2015, 5月 5
また、着陸した計算機が石油を掘り当てる可能性もある。ジャバとはいえ、「未定義」の動作を導入することはこれほどまでに危険なことなのである。
— ジャバボタン・クリッカー (@toby_net) 2015, 5月 5
ジャバがない場合に適切な処理をすることにしたい。
— ジャバボタン・クリッカー (@toby_net) 2015, 5月 5
ここでは、ジャバがなくダウンロードを要するかもしれない計算をあらわす「型」を導入することで、適切な処理を行ってみることにする。
— ジャバボタン・クリッカー (@toby_net) 2015, 5月 5
さて、上記のコードでは Jav a という計算は a型の値を返すか、もしくは「ジャバがない場合にダウンロードをユーザーに促す」かどちらかを行う。
— ジャバボタン・クリッカー (@toby_net) 2015, 5月 5
今回は、ジャバのダウンロードを促す処理は、ダウンロードURLを直接ブラウザで開くものとしたい。 『ジャバと評価器の実装』より
— ジャバボタン・クリッカー (@toby_net) 2015, 5月 5