タグ

2019年5月21日のブックマーク (2件)

  • Goコンパイラをゼロから作って147日でセルフホストを達成した - Qiita

    Go言語コンパイラをスクラッチから書いてセルフホストを達成しました。 Goコンパイラの実装はほとんど見ずに、ほぼ 8cc というCコンパイラから学んだ知識のみで作りました。 特徴 コンパイルするとアセンブリを吐きます 字句解析・構文解析は手書きです。yacc/lex などのツールは使っていません 標準ライブラリも自作です コード行数はテストをのぞくと 9,152行でした。 セルフホストに必要な機能しかないので、Go言語の全機能は網羅していません。 例えば以下の機能は未実装です。 ガベージコレクション go routineとchannel 浮動小数点 設計 70%くらいは 8cc の設計をそのまま引き継いでいます。 残り25%(map,slice,interface,method,型推論等)が自分のオリジナル、残り5%が9cc、くらいな感じです。 かかった期間 2018/10/7に着手し

    Goコンパイラをゼロから作って147日でセルフホストを達成した - Qiita
    lambdalisue
    lambdalisue 2019/05/21
    おもしろそう
  • 温度振動を利用して低温側から高温側へ熱が移動する実験に成功 - fabcross for エンジニア

    コップに入れたお湯は時間と共に冷めていく。そしてその温度は、まわりの温度より低くはならない。これは孤立系のエントロピーは時間と共に増大し、逆は起こらないためで、熱力学第二法則として知られている。ところが、チューリッヒ大学の研究チームは、外部からのエネルギー供給がなくても低温から高温への熱の移動が可能だという実験結果を発表した。この現象は一見、物理学の法則に反しているように思われるが、そうではないという。研究成果は、2019年4月19日付けの『Science Advances』に掲載された。 研究チームは、市販のペルチェ素子と超電導コイル、高温の小さな銅(9g)と室温の巨大な銅の塊(3.65kg)を利用して、電気的な発振回路が規則的に電圧の向きを変えるのと同じ様に、熱の流れが絶え間なく向きを変える「サーマル発振回路」を作り出した。ペルチェ素子とコイルは「サーマルインダクタ」として働く。外部か

    lambdalisue
    lambdalisue 2019/05/21
    全く意味がわからない凄い