
rayonとtokioの使い分け
Rustで少し重い処理を書き始めると、rayonとtokioはどちらも選択肢に上がる。呼び出し規約はどちらも「並列っぽい」ので、その場で正解を選ぼうとすると判断がつかない。 つかないのは、両者が同じ問題を別の方法で解いているように見えるから...

Rustで少し重い処理を書き始めると、rayonとtokioはどちらも選択肢に上がる。呼び出し規約はどちらも「並列っぽい」ので、その場で正解を選ぼうとすると判断がつかない。 つかないのは、両者が同じ問題を別の方法で解いているように見えるから...

Rustコードベースでは、まずClippyで既存lintを回すことが多い。ところが、自前lint向けの規約はClippy本体のlint一覧には載らない。 モジュール境界でnewtypeを強制したい、Clippy抑制には理由コメントを付けたい...

Markdown原稿をlinterや抽出ツールで扱うとき、最初に決めるのはparserライブラリだ。linterを組む段階で「どのcrateをparse層に置くか」で迷った経験はないだろうか。同じ# 見出し一行でも、返ってくるAPIの形と位...

コードにlintがあるように、日本語の文章にもlintをかけたくなる。表記のゆれ、消し忘れた下書きの目印、読みにくい言い回しを、人手のレビュー前に機械で拾いたい。 ところが、日本語の文章の解析では、英語向けのlinterや正規表現だけでは越...

ソースを整形し直すフォーマッタ、指摘箇所を原文の正しい位置へ重ねるlinter、カーソル位置から構文を引くエディタ。どれも、構文木から原文へ正確に戻れることを前提にする。ところが、構文解析の教科書的な成果物である抽象構文木(AST、abst...

以下の文章はIvan Cernjaさんからの許可を得て記事を翻訳したものです。 https://www.shuttle.rs/blog/2023/08/23/rust-web-framework-comparison ウェブ開発の変わりゆく...

polarsにはstringのカラムに対してreplaceをするための仕組みが備わっている。 pythonなどいろんな言語でよくやるstringの部分をマッチさせて、その部分を対象の文字列に置き換えたりする処理。 polarsではexpr....

以下の文章はCorode Rust Consultingからの許可を得て翻訳したものです。 https://www.shuttle.rs/blog/2023/09/27/rust-vs-go-comparison 「また、Rust対Goの比...