タグ

codeに関するtomoyaのブックマーク (3)

  • ソースコードを読むときの3カ条 - I am Cruby!

    GCを読んでいく上で実際に使っているソースコードの読み方を紹介してみます。 個人的に大事にしているのは以下の3カ条です。 小さい疑問から先に倒すべし 正しいツールを選択するべし 必ずメモするべし 小さい疑問から先に倒すべし なんとなく読みたい時は疑問の分析からソースコードってなんとなく読みたくなるということもありますよね。 ただ、その状態でいきなり対象のソースコードを読みはじめるのはよくないです。 小さなプロジェクトだと問題ないかもしれませんが、大きなプロジェクトだと時間がかかりすぎます。 そういうときは最初にドキュメントなどを読んでみましょう。 そうすると、対象のソースコードが持つ機能が書いてあります。 機能がわかれば「どうやってこれを実装しているのか?」という疑問が浮かびます。 たとえば、G1GCの場合は論文がすでに公開されていたので、最初に論文を読みました。 読み終わったあとに論文内

  • CodeReading: EmacsLisp "eval"関数

    学校の課題でSchemeの"eval"関数相当のモノを作った。一度理解してしまえば、Lisp系の処理系の"eval"部分は案外容易に理解出来るものである。それを示す為に、今回はEmacsLispの"eval"関数を見ていく事にしよう(in src/eval.c)。これがEmacsLispの心臓部だ。まずは全体を見通してみる。 in src/eval.c DEFUN ("eval", Feval, Seval, 1, 1, 0, doc: /* Evaluate FORM and return its value. */) (form) Lisp_Object form; { Lisp_Object fun, val, original_fun, original_args; Lisp_Object funcar; struct backtrace backtrace; struct gcp

  • / – WordPress iOS App

    No comment, just showing as uncommitted in my client

  • 1