タグ

コンパイラに関するarx0balestのブックマーク (4)

  • Rust は何を解決しようとしたのか;メモリとリソースと所有権

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

    Rust は何を解決しようとしたのか;メモリとリソースと所有権
  • 年末年始 Rust 振り返り

    年末年始の短い冬休みは何もすることがなく(いや、することはいくらでもあるんですが)、ずっと Rust のコンパイルエラーと見つめ合っていました。去年は後半から久々にそこそこの時間を Rust に費やしたので、思ったことを振り返りたいと思います。 所有権と生存期間は理解できてからがRust と言えば所有権と生存期間です。難しいと言われる理由です。難しいです。難しいのでドキュメントや Rust でもページを割いて解説されています。 Rust も出版されましたし、理解しやすくなったと思います。 が、所有権と生存期間は理解できてからが番です。ある程度の規模のコードを書いて間違えて書き直してを繰り返し、設計と実装のトレーニングを積まないと身につきません。コンパイルエラーが出るたび、まだまだ理解が浅いと痛感します。 GC がないとはそういうことです。 とにかくデータ型の設計に苦労するRust

  • コンパイラのリミッタが外れつつある今、null安全は必須なのかもしれない - Qiita

    三行で頼む コンパイラが斜め上の最適化をするようになったからnull安全ないと怖いよね 一行で終わっちゃった。 文 最近、ツイッターを見ていると、プログラマの間でnull安全という言葉がバズっていますね。私も次のようなエントリを楽しく眺めていた訳です: null安全でない言語は、もはやレガシー言語だ null安全はいいぞ。だって、型安全はいいぞ。 null安全を誤解している人達へのメッセージ さてそんな中、少しだけ私の心に留まったエントリがこれです: null安全な言語は、当にゼロコストか これを読んで、私がまず直感的に思ったのは、むしろもはやnull安全のない言語はダメかもしれないということでした。こう書くと、このエントリの内容を否定してると誤解されるかもしれませんが、全くそんなことはありません。このエントリの筆者さんもnull安全の有用性を否定しているわけではないですし、私も古いタ

    コンパイラのリミッタが外れつつある今、null安全は必須なのかもしれない - Qiita
  • コンパイラになる※方法 — JavaScriptでコンパイラを作る - Qiita

    ※あなたもかっこいいコンパイラになれる! ある日曜日、近所の古屋によったらJohn Maeda著の「Design by Numbers」というを発見。これは90年台後半にMTIメディア・ラボで作られたDBNというプログラミング言語の解説で、コンピュータープログラムのしくみを視覚的な例を使って紹介することを目的としているらしい。 DBNのサンプルコード 出典:http://dbn.media.mit.edu/introduction.html 読み始めてすぐ、もう2016年だし(が出版されたのは2001年)Javaで元のソースコードを動かすんじゃなくてSVGで実装してブラウザで動かしたら面白んじゃないかなと思った。 そうなると「DBNからSVGに変換するコンパイラが必要になるのかな、コンパイラ書くかー」と思ったものの、そもそもコンパイラ書くって物凄く情報科学っぽい。木構造解析とかまっ

    コンパイラになる※方法 — JavaScriptでコンパイラを作る - Qiita
  • 1