タグ

rustとrewriteに関するmasterqのブックマーク (2)

  • 同期エンジンの心臓部を書き換える

    0 0 719 0 この 4 年間、Dropbox では、デスクトップ クライアントの同期エンジンを白紙の状態から再構築しようと懸命に取り組んできました。同期エンジンは、デスクトップ パソコン上の Dropbox フォルダの陰に隠れた魔法です。これは、Dropbox で最も長く使われているコード部分であり、最も重要なコード部分の 1 つでもあります。今回、新しい同期エンジン(コードネーム「Nucleus」)をすべての Dropbox ユーザー向けにリリースさせていただくことを、ここに発表いたします。 同期エンジンの書き換えは当に大変な作業で、多くの環境でマイナスともなりうる構想であったことに鑑みると、手放しで祝う気持ちにはなれません。結果的には Dropbox にとって素晴らしいアイデアであったわけですが、それは、私たちがこのプロセスにどのように取り組むべきかを熟考したからこそ、たどり着

    同期エンジンの心臓部を書き換える
    masterq
    masterq 2020/07/16
    "書き換えチェックリスト"が参考になる "コードはほとんどすべて単一スレッド(「制御スレッド」)で実行"
  • 3年以上誰も発見できなかった探索部のbugがRustによって見つかったという話 | やねうら王 公式サイト

    だいたいにおいて、やねうら王ほどメジャーな将棋ソフトの探索部に大きなバグを埋め込むことは常識的に考えると不可能である。多くの人が改良に参加している&参考にしているので、誰かの目に止まるはずではある。ところが、公開後、数年も誰も気づかなかったbugがつい先日見つかった。Aperyの平岡さんが、AperyをRustで書き直している時にRustのコンパイラが警告を出したので気づいたと言うのだ。(WCSC29の会場で平岡さんから直接教えてもらった。) bugの詳しい内容 ここから少し専門的な話が出てくる。プログラマでない人は次の見出しまで読み飛ばすこと推奨。 – Position::move16_to_move()のbug fix。thx.平岡さん https://github.com/yaneurao/YaneuraOu/commit/9e6ba09029839838e10cd928456935

  • 1