tootlog

Masanori Ogino 𓀁 [email protected]

Why does light slow down in water? youtu.be/CUjt36SD3h8

Dr. Don Lincolnのシリーズ、今回は光が水中(あるいは他の媒質中)で速度を落とし、水中から出た時点で再び元の速度に戻る原理を解説している

Masanori Ogino 𓀁 [email protected]

アフィ記事ですから始まるのすき

Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 7 years ago

// Fix me [email protected]

Googleに転職していきなり3ヶ月の育休を貰った - Software Transactional Memo
kumagi.hatenablog.com/entry/ik

子供は東大じゃなくてGoogleに入れる努力をすべきであるな。

Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 7 years ago

じんすけ jnsk

高木浩光@自宅の日記 - Coinhive事件、なぜ不正指令電磁的記録に該当しないのか その2 takagi-hiromitsu.jp/diary/2019
長えけどここまでの文脈があったんやなぁ

Masanori Ogino 𓀁 [email protected]

ブートストラップの話、言語処理系には大抵、\が来たら次の文字で分岐してnだったら\nの値を挿入するというコードが書かれているので、インタプリタはそれをコンパイルしたときのコンパイラから、コンパイラはそれをブートストラップするときに使ったコンパイラから\nに対応する数値を受け継いでいて、具体的な数値はシステム全体のソースコードを調べても書かれていないという小話がある(一度本当にそうなのか検証してみたい)

Masanori Ogino 𓀁 [email protected]

Schemeの方はコンパイラではなくインタプリタだった

Masanori Ogino 𓀁 [email protected]

GCC 2.95をビルドできる程度の能力を持つ小さなCコンパイラを作れれば、そこからC++で書き直される前のGCC 4.4辺りをビルドして、更に近代的なGCCやClangをビルドすることで、精査可能な小さなツールチェーンからシステム全体をビルドできるフルセットのツールチェーンをブートストラップできるというのが現在の方針

Masanori Ogino 𓀁 [email protected]

GNU MesはハンドアセンブルされたCコンパイラではなくSchemeで書かれたCコンパイラとCで書かれたSchemeコンパイラ(もちろんCもSchemeもフルセットではなく処理系全体を精査できるようなサブセット)でブートストラップする

Masanori Ogino 𓀁 [email protected]

という方向性のプロジェクトがStage0やGNU Mesです

Masanori Ogino 𓀁 [email protected]

元からアセンブリ言語で書かれているならバイナリにする過程で細工されていないかどうかは直接比較できて、そのコンパイラが例えば平均的なプログラマーに精査できるくらいわかりやすく書かれていればseedから精査できるシステムとなりうる

Masanori Ogino 𓀁 [email protected]

具体的には、昔のGCCをコンパイルできる程度の機能を持つCツールチェーンをハンドアセンブルして、それをseedにする

Masanori Ogino 𓀁 [email protected]

UNIXのloginに組み込まれた有名なバックドアの話からわかるように、自分が精査したソースコードからコンパイルしたとしても元のバイナリがバックドアを埋め込む場合があって、単にreproducibleなだけでなくシステムをブートストラップする最初の段階で使ったバイナリ(seed)から精査できるようにしようという話が盛り上がっている

Masanori Ogino 𓀁 [email protected]

GNU MesもStage0と似た目的のプロジェクト

Masanori Ogino 𓀁 [email protected]

Stage0 Bootstrap for the Free Software - Summary [Savannah] savannah.nongnu.org/projects/s

"This project is not part of the GNU Project.

A class of minimal bootstrap binaries that has a reproducible build on all platforms. Providing a verifiable base for defeating the trusting trust attack."

Masanori Ogino 𓀁 [email protected]

GNU/Linuxシステムを「ゼロから」ブートストラップするためのStage0プロジェクトに注目していってほしい

Masanori Ogino 𓀁 [email protected]

最初からデスクトップ環境込みでインストールすると最初から色々起動するので、最小セットアップで立ち上げてこれからどう育てるか考えている間見られる光景

Masanori Ogino 𓀁 [email protected]

topで見えるプロセスの少なさに「美しい……」っつってる

Masanori Ogino 𓀁 Masanori Ogino 𓀁 reblogged at 7 years ago

出雲国エリカちゃん@orumin orumin

Red Hat 系でも Gentoo でもだいたいパッケージシステム回りで Python 使うせいでたしかに Arch Linux 以外は base に Python 必ずあるな……。

Masanori Ogino 𓀁 [email protected]

Arch Linux、baseにPython入ってないのつよいな(Perlは入ってるけど)

Masanori Ogino 𓀁 [email protected]

2.11BSDはsysも後でリリースされたはず