エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください
Twitterで共有ONにすると、次回以降このダイアログを飛ばしてTwitterに遷移します
型に数値を埋めこめると、コンパイル時に数値情報が使えるので便利です。 前回投稿した「コンパイル時に... 型に数値を埋めこめると、コンパイル時に数値情報が使えるので便利です。 前回投稿した「コンパイル時に型レベルで整数を四則演算してみた」では一から型レベル整数の実装をしてみましたが、今回は @xuwei_k さんに紹介していただいたScalaの型レベルライブラリ sing を使ってみます。singすごい。 実行時エラーこわい シンプルな硬貨クラスを考えてみます。 5円玉2個 Coin(5, 2) と5円玉4個 Coin(5, 4) を足すと5円玉6個 Coin(5, 6) になるだけのものです。 つまりCoinのインスタンス一つで、一種類の硬貨を表すことができます。 あと、合計金額くらいは計算できるようにしておきましょう。 case class Coin(value: Int, num: Int) { def +(a: Coin) = { assert(value == a.value, "違