タグ

ブックマーク / qiita.com/uint256_t (2)

  • 自作コンパイラ基盤の話 - Qiita

    これは、言語実装 Advent Calendar 2020 19日目の記事です。 最近は、コンパイラやインタプリタなどの言語処理系や、それに類するものを作る人が増えてきています。(私の周りだけかもしれませんが。) しかし、もう一歩進んで、コンパイラ基盤を作ってみたという話はあまり聞きません。 コンパイラ基盤は、それの対象とするアーキテクチャについてや、それ自体の使い勝手を考えるのが非常に面白いものです。また、コンパイラ基盤を作る中で、コンパイラや計算機自体についてより深く学ぶことが出来ます。 この記事では、私が開発中のコンパイラ基盤を例として、コンパイラ基盤について語っていきます。 そもそもコンパイラ基盤とは コンパイラ基盤と言えば、近年色々な所で目にするのがLLVMです。 LLVMを使うことで、コンパイラの複雑で面倒な部分を避けつつ、コンパイラを構成することができるようになりました。 下

    自作コンパイラ基盤の話 - Qiita
  • [メモ] JavaScriptエンジンを作る話 - Qiita

    Rapidusの進捗を記していく。逐次更新 どんなJSエンジンを目指してるのか 自作ブラウザ(Naglfar)に組み込めるようなもの ↑でも当分はNodeJSみたいなのを目指すと思う (それ単体で使えるような物、という意味) JITに対応し、速い (LLVM使う?) 8/11追記: Tracing JITが部分的に動いた 課題 グローバル変数の呼び出し、遅い ネストした関数、実装してない 実装しました VMとVMのコード生成に関するコードのテストを書いてない (最近書き始めた) よく考えたら、字句解析器がコメントに対応してない 対応 参照渡しできない 進捗 日数は、Gitでコミットした日を数えてます。(7/1 7/2 7/5 とコミットしていたら、7/5は3日目としてカウント) 1日目 字句解析器がほぼ完成

    [メモ] JavaScriptエンジンを作る話 - Qiita
  • 1