タグ

ASTに関するellerのブックマーク (2)

  • 最近のネタまとめ(2) - kuenishi's blog

    Generating Precise Dependencies for Large Software Googleさんの巨大なC, C++のコードベース、コンパイルとかリンクに時間がかかりすぎる問題はあちこちから聞こえてくる。その答えがいくつか(その1, その2)彼ら自身によって提案されているのだけど、やっぱりC++のコードは膨大にあるわけで既存のものもメンテナンスしないといけない。あまり依存していないライブラリとかをいつまでも残していると、ライブラリに不要な影響を受けたりリファクタリングが困難になったりする。だからなるべくスリムに保ちたい。ChromiumとかChromiumとかChromiumとか。。。もうBlinkになってしまったけどね。 依存性の解析はLLVM IRを使った。既存のASTベースのやり方だとオーバーロードされると大変だし、そもそも暗黙の関数(オペレータとかコピーコンス

    最近のネタまとめ(2) - kuenishi's blog
    eller
    eller 2013/09/03
    "これで解析してみたところ238コのモジュール、47万のシンボル、1391万のシンボル参照があり…それでunderutilizedなモジュールをいくつかみつけたよ!しかも2時間ちょいで!という内容" ほう
  • Const なんとかさん関連のツール群をつかうと、簡単に EcmaScript target の言語をつくれる! - tokuhirom's blog

    で、esprima とか関連のツール群は Mozilla の Parser API の AST 形式をサポートしています。詳細はここのへんかな。 https://developer.mozilla.org/en-US/docs/SpiderMonkey/Parser_API で、escodegen があるということは Parser API 形式の AST をはけば、そこから JS を生成できるってことですね。しかも escodegen は source-map の生成にも対応しているので、エラーの処理もらくちんで、実行時エラーがおきても、「ああ、JSでかいておけばよかった。。」とはならない(という未来がくることになっています) CoffeeScriptRedux というカッフィースクリプトのあたらし版をつくってるプロジェクトでは実際に CoffeeScript code => [parse

  • 1