关于定点,我们。 SD 来源法搜索引擎(SCSE)可在大陆架外进行。 高等专业资格考试委员会提供全球调查接口,以检索大量混合编程式的地毯,使用准确理解每种语文的体格语。
典型查询:
for ... I=index* = N<10
will find for keywords near an Identifier whose name must start with the sequence index followed immediately by an = operator followed by a Number whose value is less than 10. Because SCSE understands the language structure, it isn t bothered by whitespace or formatting constraints. It will also match hexadecimal values for N; it understands the different format for literals and offers queries in terms of the actual value of the number, rather than as a string.
鉴于这种问询,全球调查股将发现所有与你的所有档案相匹配之处,并显示一系列的点击;点击一个点击了你的源代码,并着重提到点击线。
为了找到所有零不变的固定点,你写道:
N>0
What you really want are all constants that aren t defined in some kind of constant definition. So you want to remove any constant-definitions from the hit list, which
is accomplished by using the "query subtract" operator:
N>0 - const int I = N
由此可见的是非零不变的,并且删除了也与最接近的声明相匹配的任何东西。
Your other dreams require a much more sophisticated engine. In essence, you want to analyze C++ code (your rule of three) or extend the C++ language with some new features, and then implement those features using standard C++ capabilities. You can accomplish this using a program transformation system
that can manipulate C++.
http://www.semantic Designs.com/Products/DMS/DMSToolkit.html DMS 软件再设计能够做到这一点。 它拥有一个完整的 rel=“nofollow”>C++ front end,规定C++为内部汇编数据结构,并编制完整的编号表(并可重新编制C++来源代码,并附上其内部结构的所有细节)。 借助这一前端和基于配对模式的联几支助处,你可以进行三驾.。
在语言推广方面,你可以修改地图,把你认为理想的外围建筑包括在内,从而修改数字管理系统C++前端。 然后,你可以写出计划转变,看着这种结构,并将它们转化为理想的法典。 (这一想法被称作intentional program,由Charles SimyoniMS of fame,但只是方案转变的一个特殊案例。)
DMS has been used to carry out massive automated transformations on real C++ applications. It could do your task fairly easily from a technical point of view.
However, understanding the definition of C++ and how everything fits together, and how DMS supports transformations, requires considerable compiler-style sophistication. What you suggest to do isn t an afternoon or a week s worth of work. It would take a significant investment in education and effort.
But a lot less than trying to do with starting with just YACC.