タグ

ブックマーク / www.principia-m.com (2)

  • Think Stitch - PRINCIPIA

    Pthread Model Checker Pthread Model Checker の紹介 Pthread Model Checker によるデッドロック検出 Pthread Model Checker によるバリアの安全性検査 条件変数の Spurious Wakeups 生産者・消費者問題 1 生産者・消費者問題 2 生産者・消費者問題 3 生産者・消費者問題 4 ミューテックスと条件変数で作るセマフォ 1 ミューテックスと条件変数で作るセマフォ 2 ミューテックスと条件変数で作る rwlock スレッドプール 非決定的選択構文 AMB ワークスチール なぜ pthread_cond_wait はミューテックスを引数にとるのか Pthread Model Checker でペグソリティアを解く Translating C programs with POSIX thread int

  • Lisp to C Translator - Think Stitch - PRINCIPIA

    Lisp から C 言語への変換器を作ってみたいと思います. 遊べる程度には機能があって,変換はできるだけ楽をするという方針でいきたいと思います. Lisp の仕様 まず入力となる Lisp の言語仕様を決めます. データ型 データ型はシンボル,整数(即値のみ),ペア,あと手続き(クロージャ)です. nil はシンボルで空リストと真偽値の偽を表すとします. 構文 構文を以下のように決めました. 定数リテラル 変数 (quote c) (lambda (var ...) body) (if test then else) (set! var expr) (begin form0 form1 ...) 関数適用 (fn arg ...) 細かいところは以下のようにします. 定数リテラルは整数のみ quote で指定できる式はシンボルか整数だけ.リストは cons で作る. lambda bod

  • 1