ボトムズ日記

日記です

Ruby3の特徴

WEB+DB PRESS vol.121を読んで要所をまとめる。

Ruby3.0の大きい目標として以下の3つがあり、それらが達成されたらしい。

  • JIT(Just In Time)コンパイルによる性能向上
  • 並行・並列プログラミング
  • 静的型解析

それぞれの説明も書いてあった。

JIT(Just In Time)コンパイルによる性能向上

JITコンパイラという手法を使うと、Rubyで実装されたメソッドをバイトコード形式で実行するのではなくネイティブコードとして実行することになり、バイトコード命令を超えた最適化ができるらしい。バイトコード高級言語機械語の間のバイナリ形式、いわゆる中間ファイル。ネイティブコードはCPUに解釈可能なコード。どっちが高速化は、CPUに解釈可能な状態の方が速いよねという話だった。RubyJITコンパイラが使用される条件があるらしくあるメソッドが1万回呼び出されるとJITコンパイル候補となり、常駐しているJITワーカスレッドがメソッド呼び出し回数が多い順にコンパイルして、呼び出し回数上位のメソッドがJITコンパイルされた状態で維持される。ちなみにこの特集で何回か繰り返し描かれているけどRubyJITコンパイラは他の言語とはちょっと違うらしい。

並行・並列プログラミング

並行と並列って同じでは。。。?と思ったけど違うみたい。この特集で定義されているのは並行プログラミングは、複数の異なるタスクを開始させておき、必要なとき途中経過や最終結果を取り出すことができる。並列プログラミングは並列計算機でそれら複数タスクを同時に実行させることだった。前者は論理的に同時(実際に同時であるとは限らない)、後者は物理的に(実際に)同時に処理されるらしい。並行・並列プログラムを記述する仕組みであるRactorが導入されている。

静的型解析

静的型解析の目的は以下の通りらしい。

Ruby3の静的解析サポートとして次のものを提供する。

  • クラスやモジュールの型を定義するための言語RBS
  • RBSファイルを処理するためのライブラリ
  • RBSで記述された標準ライブラリの肩情報

RBSとは、RBSファイルという型定義ファイルであるらしい。本にはRBSのサンプルが載っていて、Userクラスの型が記載されていた。

感想なのか

とりあえずインデックスを貼ることはできた。必要な時に思い出せれば良いが

友人の通夜に参加した

最近日記をつけていなかったけど、印象的な出来事だったので日記をつける。

昨日は高校時代の友人の通夜に参加した。まさか30歳で同級生が亡くなるとは思っていなかったので結構ショックだった。その知らせは先週の金曜日に同級生からの電話で知った。死因は自殺で、前日まで普通に飲み会に参加していたらしい。友人といってもそこまで親しいわけではなく高校卒業してからほとんど会ってないし、直近5年は一度も会っていない。それでも多少思うところはあった。10年以上前の記憶では、とても自ら命を断つようなイメージを持てない印象だったが、やっぱりコロナ禍だと色々なものが変わっていくと実感した日だった。葬式は生きている人へ向けての儀式と聞いたことがあったが、やっぱり気持ちを整理したり、みんなで話したりすることも大事でありその通りだと思う。通夜もこんな感染症が蔓延している状況だとなかなかやりづらいと思う。密にならないように対策を施してあるけど、どうしても部分的に密な場面もあるので大変だとは思った。早く状況が好転してほしい。あとみんな長生きしてくれ!

ps.

香典返しのギフトカタログにRGデスティニーガンダムとRGシャアザクがあって、シャアザクはともかくとして何故もっと人気でプラモの値段が同じくらいのMSがあるのでは(ストフリ、ダブルオー、ユニコーンetc..)も思ったが、せっかくなのでデスティニーガンダムを選択した。

f:id:leokun0210:20201126204541j:plain

20201008

疲れが溜まっていたのか10時くらいに就寝だいたい12時間くらい寝ていた。

ネイピア数について調べていた。ずっと自然対数の底でe=2.7....という印象しか持っていなかったけど、複利の元利合計に利用されているのかと今更知った。

ネイピア数eについて-ネイピア数とは何か、ネイピア数はどんな意味を有しているのか- |ニッセイ基礎研究所

中目黒に住んでた時のシェアハウスで同居して人から連絡が来て今度ご飯を一緒に食べることになった。

台風が近づいているけど土曜日の授業はどうなるのだろうか。

健康診断

視力が落ちていてショック、体重が減っていてショック、BMIが痩せているに突入していると思う。まぁ運動をあまりしない不健康な生活マンだから健康診断はあんまり良くないだろうなぁ。

面白そうな講義を見つけたのでメモ

東京大学の講義「AWSによるクラウド入門」をTypeScriptで写経した - dackdive's blog

社会情報論の映像を見ていたけど、Youtubeで普段見ているようなチャンネルっぽい話なので面白そう。

フーリエ級数の部分を読んでふむふむとなっている。

シャドーイングもやった。5日ぶりぐらいなので結構スラスラ言えなくなっていた。

課題はDictationで解決した方が良さそう

英語の聞き取りが半分くらいしかできない。負荷をかけるにはDictationをやった方が良さそう。シャドーイングはどうなのか。

基礎電子工学は電磁気みたいだなという感想