代码之家  ›  专栏  ›  技术社区  ›  Mike Samuel

适用于范围分析器的良好API

  •  0
  • Mike Samuel  · 技术社区  · 16 年前

    我经常发现自己想知道这样的事情

    1. 这个符号在哪里声明?
    2. 这个声明掩盖了什么?
    3. 这个变量有可能逃逸吗?

    我认为是时候重新思考我的范围界定问题了。

    我可以做所有这些分析,但我正试图找出一种方法来构造API,以便易于使用,理想情况下,可以懒散地完成足够多的工作。

    人们熟悉什么样的工具,他们在API中做了什么是对的和错的?

    1 回复  |  直到 16 年前
        1
  •  2
  •   Norman Ramsey    16 年前

    我对这个问题感到有点惊讶,因为我已经做了大量的代码生成工作,而且很少涉及范围界定的问题(除了偶尔希望 生成唯一名称

    回答您的示例问题 需要认真的程序分析,远远超出范围 . 逃逸分析本身并不重要。根据目标语言的不同,初始化前的使用可能很简单,也可能很重要。

    根据我的经验,用于程序分析的API是 难以设计,且通常语言特定 Machine SUIF API。

    在你的位置上,我很想 窃取他人的程序分析框架 . George Necula 他的学生建造了 CIL ,这似乎是当前分析C代码的标准。 Laurie Hendren

    如果我必须自己滚 我不再担心API,而是更关心抽象语法树的一种真正好的表示。

    nice work by Sorin Lerner, David Grove, and Craig Chambers . 只有我们 preliminary results 已出版。

    最后,如果你想 用多种语言生成代码 这是一个 完整的蠕虫罐头 . 我已经做了好几次了。如果你创建了你喜欢的东西,就发布吧!