バベルの図書館は完成しない

Extended outer memory module
for my poor native memory.

Posts:
2022/02/13 クラビスの CTO になりました
2020/09/28 gendoc という YAML からドキュメントを生成するコマンドを作った
2020/09/13 ISUCON10 の予選を 7 位で通過した
2019/12/01 Puma の内部構造やアーキテクチャを追う
2019/05/27 Golang の正規表現ライブラリの処理の流れをざっくり掴む
2019/04/29 InnoDB の B+Tree Index について
2019/04/29 InnoDB における index page のデータ構造
2019/04/28 InnoDB はどうやってファイルにデータを保持するのか
2019/01/06 Designing Data-Intensive Applications を読んでいる
2019/01/03 年末年始に読んだ本について、など
2019/01/01 Ruby から ffi を使って Rust を呼ぶ
2018/11/10 ブラウザにおける状態の持ち方
2018/07/01 Rust で web アプリ、 或いは Rust における並列処理
2018/05/14 なぜテストを書くのか
2018/05/13 Rust で wasm 使って lifegame 書いた時のメモ
2018/03/12 qemu で raspbian のエミュレート(環境構築メモ)
2018/03/12 qemu で xv6 のエミュレート(環境構築メモ)
2018/03/03 Ruby の eval をちゃんと知る
2018/02/11 Web のコンセプト
2018/02/03 Rspec のまとめ
2018/02/03 Ruby を関数型っぽく扱う

dry-rb

dry-rb っていうものがあるらしい、他の Ruby よりも現代的な特徴を備えた言語処理系からいくつかの良い部分を Ruby に持ってこようという試みだと思っている。多分。

公式ページのいくつかのサンプルケースをみていたんだけど、 Dependency management とかは便利そうだなと思った一方で、 Some とか Result 型を Ruby に入れる有用性はどんなもんなんだろ 🤔 と思った。 Ruby って関数の引数や戻り値の型の整合性を静的に解決できないので、結局実行時に評価してみて安全に動くかどうかだし、そういう環境に後付けで Some や Result を入れるのってどれくらい意味があるのか僕には今の所よくわかっていない。

それだったらネイティブでそういった部分がサポートされている言語処理系を使う形に、処理をコンポーネントごとに切り出す、とかも選択肢に入ってこないのかなって。

とはいえどちらかというとある一連の処理をいちいち丁寧に条件分岐作らずに、しかし安全に書いていきたいというモチベーションなのかもしれないね。 JavaScript の Promise みたいなものに近いというか。

2019/01/03 17:16
tags: minipost
This site is maintained by furuhama yusuke.
from 2018.02 -