Techいつもコードのことばかり考えている人のために。3068小型のメカニカルキーボードが欲しく、でも自作に手を出すのも時間が足りない...みたいなことで、検索していたら丁度よさそうのを見つけた。選べ、Bluetooth接続もできる、というスペック。接続端子がType-C!値段も日本円で9000円を切るということで試しに赤軸モデルを買ってみた。www.banggood.com結論から言うと、「思ってたのと違う」。キータッチは、さすが赤軸なので、全然問題無し。ProのType-Cポートと直接つないでも充電もされないし、キー入力もできない(Bluetooth接続と有線接続が切り替えられる)。Bluetooth接続で使う前提だったけど、それでも充電が専用ケーブルオンリーはけっこうキツい感じなので(昔はそうゆうガジェット多かったけど)、積極的にお勧めできるものではないかな。あと、このキーボードを作っている会社のウェブサイトに行くと、なかなか凄い製品ラインナップでした。わたくしのビートルズ普段、本を読むと言えば技術書ばかりで、あまりコラム集のような、明確な目的の無い本を読むことが無い。単行本この商品を含むブログを見る元ピチカート・ファイヴの...といってもピチカート・ファイヴ解散からもう18年経っているので、さすがにその枕詞はいらないかもしれないけど...小西康陽のコラム集「わたくしのビートルズ」を入手した。今回もフィクションともノンフィクションともつかない、つかみ所の無いショートストーリーめいたコラムが充実していて、ちょっとした合間の時間に読むのにぴったりの構成。内容よりもリズム感...いつまでも読んでいられる流れるような文章。1990年代中盤の渋谷系ブームをリアルタイムに経験して、渋谷でレコードばかり買っていた世代としては、小西康陽の名前は特別だ。雑誌や小冊子の、ちょっとしたコラムに小西康陽の名前を見つけると、未だに真っ先に読んでしまう。約10年おきに刊行される小西康陽のコラム集...「これは恋ではない」「ぼくは散歩と雑学が好きだった」に続く3冊目。以前の2冊の単行本は常に家の本棚の一番いい場所に(ヤン富田の単行本と共に)置かれている。10年後に、新刊のコラム集は刊行されるのだろうか。ぼくは散歩と雑学が好きだった。2.13.0がリリースされました!今回、ドキュメントへの1行だけの追記ですが、初めてScala本体へのPRがマージされたので、Contributorsに自分の名前が有るのが最高に嬉しいですね。2.12と、2.13で返す型が変わっていますが、ドキュメント上で探すことができませんでしたのでここに書いておきます。scala.collection.immutable.WrappedStringWrappedStringを返す方が余計なコピーも無くてよさそうですね。Yoshida(@xuwei_k)さんに教えて頂きました。immutableなコレクションなのに、もとのArrayの参照保持しておいて中身変えると、ArraySeqの方も変わるからunsafe、という意図です。2019年6月2日なるほどーいくらラップしても元のArrayがmutableであることには変わりないので、そこは理解して使えよ!ってことのようです。その注意喚起の意味でのunsafeですね。ちなみにArraySeq.unsafeArrayのscaladocにはそれなりのメソッドの危険性が書かれています。type.しかしどちらかというと、ArraySeq.unsafeWrapArrayのscaladocに書いて欲しいところですね。2019年6月2日というわけでアドバイスを頂いたこともあり、初めてのScala本体へのPRを書きました。2.13.1あたりには取り込まれるのではないでしょうか。1行の、ドキュメント追加とはいえ、マージされると嬉しいなぁ。2.13でコンパイルすると以下のようなメッセージを見かけるようになりました。Array[Int])Seq[Int]copyArrayToImmutableIndexedSeqなんてメソッド、呼び出していたっけ?LowPriorityImplicits2っていうクラスって何だっけ?そもそも、このメッセージは何を意味しているのか?...調べた結果をまとめました。2.13へのマイグレーションガイドをチェックします。20ページに関連する記載が有ります。2.12までは、ArrayをSeqへ渡すと、scala.collection.mutable.WrappedArrayに変換されていました。Conversionの挙動です。2.13ではSeqがImmutable化されたことを受けて、scala.collection.immutable.ArraySeqに変換されます。2.13のscala.Predefで定義が追加された以下のコードによるものです。ArrayOps(xs).toIndexedSeq}LowPriorityImplicits2もcopyArrayToImmutableIndexedSeqが出てきました。暗黙の変換によりコピーが発生するので、toIndexedSeqでコピーして変換するか、それではパフォーマンス的に問題になる場合はArraySeq.unsafeWrapArrayを使ってコピー無しにimmutable化するか明示的に示しましょう、ということですね「ArraySeq.unsafeWrapArray」って何がunsafeなの?という話は、また別のエントリを書きます)。確かに、警告が出なくなります。conversionですしね)。定義された瞬間に非推奨になってしまうクラスと、メソッド...しかもユーザーコード上には出てきません...「実は、最初からそんなメソッドなんか無かったんですよ...」って言うと何だか押井守っぽいですね。いうわけで上記のメッセージが出たら、明示的に変換方法を指定しましょう、という話でした。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。