タグ

rustに関するUhoNiceGuyのブックマーク (13)

  • 「Rust」が10周年--エレベーター故障から始まったシステムプログラミング言語の歴史

    オープンソース運動の創始者の1人であるEric S. Raymond氏は、次の言葉が有名だ。「全ての良いソフトウェアは開発者の個人的な希望から始まる」。Mozillaのソフトウェア開発者であるGraydon Hoare氏がプログラミング言語「Rust」の開発に着手したときも、まさにそうだった。 2006年、Hoare氏は自宅マンションのエレベーターがたびたび故障することを不満に思っていた。同氏は後に、「コンピューターに携わるわれわれが、故障しないエレベーターも作れないとは、ばかげた話だ」と語っている。同氏は、エレベーターが頻繁に故障する原因として、制御ソフトウェアのメモリーエラーを疑っていた。このソフトウェアは「C」または「C++」で書かれた可能性が高く、どちらも広く使用されているシステム言語だが、コードを書くのが難しい。その大きな理由は、メモリーエラーを含む不完全なコードを簡単に書けてし

    「Rust」が10周年--エレベーター故障から始まったシステムプログラミング言語の歴史
    UhoNiceGuy
    UhoNiceGuy 2025/05/30
    「Rust」って名前だと朽ち果てるイメージしかないんだけど。腐食菌のなにがそんなに琴線に触れたのか(生命力強い生物は他にもあるよね)
  • Rustが嫌いです。

    0. 前書き - リモートデスクトッププロジェクトとの悲しき邂逅 私がremote-desktop-rsというクロスプラットフォームのリモートデスクトッププロジェクトを始めたとき、Rustの評判を信じていた。「メモリ安全性とパフォーマンスの素晴らしい組み合わせ」「優しいコンパイラエラー」「素晴らしいエコシステム」——当にそうだったのか? 1. 学習曲線は「少し急」ではなく「エベレスト級」 「所有権の概念を理解すれば、あとは簡単です」と言われ続けた。嘘だ。絶対に嘘だ。 1.1 所有権地獄 私はcommon/src/lib.rsで単純な「ビルド情報」構造体を作成しようとした: // 素晴らしい所有権システムと戦った結果の姿 pub fn build_info() -> BuildInfo { let build_date = chrono::Local::now().format("%Y-%

    Rustが嫌いです。
    UhoNiceGuy
    UhoNiceGuy 2025/04/09
    Rustは簡単と喧伝する人がいるからね。Rustの「所有権」が簡単と言える人は1.C++で精進した人 2.C→C++→Rustの歴史、技術要請を一瞬で理解できるガチの天才 3.所有権を理解するのではなく字面で暗記している人 だと思う
  • Hector Martin、Asahi Linuxプロジェクトリーダーも辞任 | gihyo.jp

    Linux Daily Topics Hector Martin⁠⁠、Asahi Linuxプロジェクトリーダーも辞任 Asahi Linuxのプロジェクを立ち上げ、プロジェクトリーダー(リードデベロッパ)を務めてきたHector Martinは2月14日、プロジェクトリーダーを辞任することを明らかにした。既報の通り、Martinは2月7日付けでAppleシリコンコードのアップストリームメンテナーを辞任したが、その1週間後にはみずからがローンチしたプロジェクトからも離れることとなった。 Resigning as Asahi Linux project lead -marcan.st Passing the torch on Asahi Linux -Asahi Linux 今後、Asahi LinuxはMartinからアップストリームメンテナーを引き継いだSven PeterとJanne

    Hector Martin、Asahi Linuxプロジェクトリーダーも辞任 | gihyo.jp
    UhoNiceGuy
    UhoNiceGuy 2025/02/19
    元々Cコミュニティで作られて来たのをRustに合わせろってのはなぁ。〇〇という道具の方が(生産性等が)優れているのだから劣った道具を使う配慮すべきだというのはいろいろな場面で聞いてきた
  • Asahi Linuxのリードデベロッパがアップストリームメンテナーを辞任、背景に“C vs. Rust”対立に端を発したブリゲーディング | gihyo.jp

    Linux Daily Topics Asahi Linuxのリードデベロッパがアップストリームメンテナーを辞任⁠⁠、背景に“C vs. Rust”対立に端を発したブリゲーディング 僕はもう、カーネル開発プロセスやコミュニティ管理アプローチになんの信頼も置いていない(I no longer have any faith left in the kernel development process or community management approach.)―2020年のプロジェクトローンチ以来、Asahi Linuxのリードデベロッパを務めてきたHector Martinは2月7日、Appleシリコン(ARM)コードのアップストリームカーネルメンテナーを辞任する意向をLinux開発者メーリングリストで表明した。突然の辞任の背景には、Cベースの古参メンテナーとRustコード推進派の対

    Asahi Linuxのリードデベロッパがアップストリームメンテナーを辞任、背景に“C vs. Rust”対立に端を発したブリゲーディング | gihyo.jp
    UhoNiceGuy
    UhoNiceGuy 2025/02/13
    抽象化レイヤって、Cインターフェイスのことじゃないの?どんなもんだろ
  • LinuxカーネルのメンテナがRustコードを混ぜることを「癌」と呼び、開発者間の対立が激化中

    2月6日、海外技術メディアThe Registerが「Mixing Rust and C in Linux likened to cancer by maintainer」と題した記事を公開した。この記事では、LinuxカーネルにRustコードを導入しようとする開発者と、C言語での統一を重視するカーネルメンテナとの意見の対立について詳しく紹介されている。 2月6日、海外技術メディアThe Registerが「Mixing Rust and C in Linux likened to cancer by maintainer」と題した記事を公開した。この記事では、LinuxカーネルにRustコードを導入しようとする開発者と、C言語での統一を重視するカーネルメンテナとの意見の対立について詳しく紹介されている。 以下に、その内容を紹介する。 記事によると、LinuxカーネルでRustを利用す

    LinuxカーネルのメンテナがRustコードを混ぜることを「癌」と呼び、開発者間の対立が激化中
    UhoNiceGuy
    UhoNiceGuy 2025/02/07
    どうなの。Cの部分は変更なしで使えるべきだと思うけど、なにか勘違いしてる?
  • 月刊「Rustは低レイヤーで使ってもunsafeだらけになるから意味がない」廃刊のお知らせ

    組込みRustや自作OSなどにおいて、従来言語より高い安全性があるとされているRustは注目される一方、Rustでも低レイヤー分野で頻発するメモリアクセスやインラインアセンブラなどでunsafeブロックが存在が多くなりがちです。 このunsafeブロックが多くなるので、結局Rustでこのような低レイヤー分野を触っても意味がないのでは?安全ではないのでは?という疑問が投げかけられることがしばしばあります。 筆者はTwitterや過去のブログで、組込みRustにおいてのunsafeとの付き合い方について触れていきましたが、内容としては分散していたので今一度この疑問に対するアンサーをまとめることにし、この論争に終止符を打とうと思います。 Rustにおけるunsafeとは そもそもunsafeとは何かというのはThe Rust Programming Languageのドキュメントにも詳しく書かれ

    月刊「Rustは低レイヤーで使ってもunsafeだらけになるから意味がない」廃刊のお知らせ
    UhoNiceGuy
    UhoNiceGuy 2025/01/06
    「unsafe部分をCで書いて、ラップしても同じでは」←それはそう。だけど、全部をRustで統一できた方がRustプロジェクトではいいのでは、という話だと思う//「Cは誰でも読めて当たり前だろ」とも思うんだけどね
  • Rustで書き直す · Issue #11078 · misskey-dev/misskey

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    Rustで書き直す · Issue #11078 · misskey-dev/misskey
    UhoNiceGuy
    UhoNiceGuy 2023/07/04
    rustって人をワクワクさせるよね
  • Javaエンジニアだった私が当時困ったRustのコンセプト - paild tech blog

    お手伝いの @helloyuki_ です。今回はポエムです。 今回は、Rust を始めた当時、プログラミング言語は Java しかまともに触ったことがない新米若手 Java エンジニアだった私[*1]が「見たことがなく、使いどころがわからなく理解が難しい」と感じたポイントについて紹介します。対象とするソフトウェアのレイヤーが低いか高いかを問わず、とにかく Rust をやってみて理解するまでに時間がかかり、難しいと感じたポイントについて紹介します。 Rust の「メモリ安全」って、結局何 所有権とライフタイム 参照 スマートポインタ 代数的データ型 関数が第一級である モジュールシステム self 型クラスという側面でのトレイト まとめ 私が Rust をある程度使いこなせるようになるまでの話 「難しい」って何?、の話 Rust の「メモリ安全」って、結局何 そもそも論ですが、Rust が取

    Javaエンジニアだった私が当時困ったRustのコンセプト - paild tech blog
    UhoNiceGuy
    UhoNiceGuy 2023/05/11
    全くおっしゃる通りだ。所有権周りはGCが良きにはからって(ある程度)解決してくれて、見えなくしてくれた。それを明示的に扱うのだから難しいよね。C++やらんと所有権の必要性実感できんでしょ
  • コンセプトから理解するRust

    2022年2月12日紙版発売 2022年2月7日電子版発売 原旅人 著 B5変形判/360ページ 定価3,520円(体3,200円+税10%) ISBN 978-4-297-12562-2 Gihyo Direct Amazon 楽天ブックス 丸善ジュンク堂書店 ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 Rustはメモリ安全,スレッド安全を保ちつつ,高パフォーマンスなプログラムを開発できるプログラミング言語です。また,手続き型,オブジェクト指向型,関数型でのプログラミングに対応できるマルチパラダイムの言語でもあります。ただ,そういったRustのポテンシャルを引き出すには,所有権やライフタイム,ジェネリクスやトレ

    コンセプトから理解するRust
    UhoNiceGuy
    UhoNiceGuy 2022/01/25
    他言語との比較はいいね。Rustの煩わしい構文がないとどういう問題が発生するのか、がないと理解しにくいからね
  • 他言語ユーザがRust言語をガチめに使っての雑感 - 分散KVSを書いてみて - - Qiita

    どうも ryo_grid です。 昨年はRustを覚えたいと思い、題材としてRESTインタフェースを持った分散KVS(実質はいわゆる分散ハッシュテーブル)を書いたりしました。 FunnelKVS: Rust implementation of autonomous distributed key-value store which has REST interfaces この記事では、他言語を使ってきた私が、経験のないRustを用いてそこそこのコード規模・複雑さのシステムソフトウェアを書いてみた上で、Rustについて感じたことを、独断と偏見で述べます。 Rustってなんか流行りそうな雰囲気あるけど難しいとも聞くし、どうなんだろ?と考えている方や、Rustガチ勢の方々に、「初学者はこう感じるんだな」「ここらへんに苦労するんだな」というところを伝えることで、Rustのスムーズな普及に少しでも寄

    他言語ユーザがRust言語をガチめに使っての雑感 - 分散KVSを書いてみて - - Qiita
    UhoNiceGuy
    UhoNiceGuy 2022/01/12
    この人程レベルは高くないが同じ印象。必要性がわからないと学習の理解は進まない。所有権の概念なんかはC++でムーブ?コピー?とか悩んだ経験がないと理解しづらい。
  • Rust初心者殺しの文法10選 - Qiita

    概要 この記事ではRust初心者が驚いたり混乱させられたりするようなRustの文法を10項目集めてみました。 これらの項目は知らないと理解できなかったりコンパイルエラーに悩まされたりする一見厄介なものたちなのですが、そのような直感的でない挙動を敢えてさせているところには重要な意味が込められていることが多いです。 そのため、これらの項目を通してRustが目指しているものや実現したい機能の一部を垣間見ることができると思います。 1. デフォルトの代入がムーブ Rustの最大の特徴が所有権の概念であることは有名ですが、それでもなお初心者殺しになるのがムーブです。 以下のコードがコンパイルエラーになるメジャーな言語は現状Rustくらいしか無いでしょう。 let mut a = vec![1, 2, 3]; let mut b = a; // ここでaの持つベクタの所有権がbにムーブされ、aは無効に

    Rust初心者殺しの文法10選 - Qiita
    UhoNiceGuy
    UhoNiceGuy 2021/11/04
    安全なプログラミングをするために意識しなければならないことを文法で明示させているんだね。ここらのことを理解している(させられている)プログラマだけでチーム組んだら、そりゃ凄いもの作れますよ
  • Rust言語でAndroidはより強固・安全に ~GoogleがOS開発への導入を進める/C/C++コードの完全な置き換えは非現実的だが、新規コードへの活用は不具合の予防に効果あり

    Rust言語でAndroidはより強固・安全に ~GoogleがOS開発への導入を進める/C/C++コードの完全な置き換えは非現実的だが、新規コードへの活用は不具合の予防に効果あり
    UhoNiceGuy
    UhoNiceGuy 2021/04/08
    LinusがアンチC++のC原理主義者なのでLinuxカーネルにRustが混じることはないよね。どこに使うんだろう
  • Rust は何を解決しようとしたのか;メモリとリソースと所有権

    みなさん、 Rust 書いてますか?最近は Rust が楽しくてたまりませんが、のんびりやっていたらなんとなく理解するまで 1 年くらいかかってしまいました。 良い言語なので、できればみなさんにも気軽に手を出してもらいたく、 Rust の中で特に難しい概念とされている話「所有権(ownership)」について簡単にまとめることにしました。 おことわり 今回記述する「所有権」は、英語で "ownership" として表現されるものを和訳した単語です。 今回説明している概念は、「所有権」という言葉よりも "ownership" (およびその対訳である「所有」、「持ち主であること」) のほうが的確であると思いますが、このドキュメントでは「所有権」という言葉を使います。 所有権とは 所有権とは、簡単に言えば「値(データ)を持っている」 「その値を解放することに責任を負っているもの」のことを指します

    Rust は何を解決しようとしたのか;メモリとリソースと所有権
    UhoNiceGuy
    UhoNiceGuy 2021/01/13
    所有権とか考えたくないからGC欲しい…Rustはそういう甘えを許さない言語//「所有権は実質的にリソースを解放する義務」←これは肝に命じたい
  • 1