Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago

Masanori Ogino 𓀁 omasanori@mstdn.maud.io

無を過ごしている間にプログラミング言語の設計に関する好みとか直感とか霊感とかなんでもいいけどそういうやつが私から失われてしまった

Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago

ぱくとま pakutoma

.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue))についてはJavaが補完で成り立っている言語であることを考えると.toMap<Tab>で出るのでまあいいです

Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago

ぱくとま pakutoma

まあLINQはいいんじゃないですかねと思っています
Pythonのlist(ラムダいっぱい)とかJavaのstream().collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue))と比べれば

Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago

隠居し始めたあじょだよ azyobuzin@xxx.azyobuzi.net

Rust の場合、ライフタイム的にイテレータじゃないと成り立たないのとかあるしね。 drain とか into_iter とか
Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago
Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago

隠居し始めたあじょだよ azyobuzin@xxx.azyobuzi.net

データフローは大体 Source, Transform, Sink の形をしているので、イテレータを入力してイテレータを出力する Transform らしいインターフェイスをしていればイテレータを返すのは許されますよ
Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago

隠居し始めたあじょだよ azyobuzin@xxx.azyobuzi.net

地獄の Interface Call って言いながら LINQ 書いてる
Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago

隠居し始めたあじょだよ azyobuzin@xxx.azyobuzi.net

Pythonのリスト内包記法 () がジェネレータ(遅延評価)で [] がリスト(正格評価)なので
Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago

隠居し始めたあじょだよ azyobuzin@xxx.azyobuzi.net

リスト内包記法、実行順と記述順が逆なので後置 if と同じ理由で嫌い
Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago

隠居し始めたあじょだよ azyobuzin@xxx.azyobuzi.net

C# だと僕はこういう操作をする関数の戻り値の方は IReadOnlyList か ImmutableArray のどちらかにします

Masanori Ogino 𓀁 omasanori@mstdn.maud.io

@Cupiditas いつか雪見だいふくかなんかとコラボしたときに買ったらええ

Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago

隠居し始めたあじょだよ azyobuzin@xxx.azyobuzi.net

Pleroma の twitter-text 互換挙動嫌いだけど、手を入れるのめんどうなところにあるから無効化できてなくてもっと嫌い!!!!!
Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago

隠居し始めたあじょだよ azyobuzin@xxx.azyobuzi.net

map.filter.map みたいなコードは書きがちで、これを順番にやってしまうとコピー回数が爆発します。

これは使い方の問題で、ある領域(関数)で閉じて使えば、その関数の中で把握されている挙動なので問題がなくなります。逆に関数の戻り値が遅延評価な Iterable を返すのは、処理が関数内で閉じないので、理由がない限りやめたほうがいいです。
Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago

Masanori Ogino 𓀁 omasanori@mstdn.maud.io

気分で……

Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago
Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 4 years ago