...
Wiki Markup |
---|
*{+}SOUL \[authors replying on Tuesday\]+* |
- All Java AST supported by logic queries. (tight symbiosis with Eclipse JDT)
- When there isn't a dedicated predicate, the language allows to query the Eclipse semantic analyzer directly. (this solves the covariant arrays use case)
- template matching doesn't support all features. (for example generics, wildcards, try/catch blocks)
Jquery
- http://jquery.cs.ubc.ca/documentation/toc.html
- http://jquery.cs.ubc.ca/documentation/appendix2.html
- variable binding through predicates
Wiki Markup support for read & efftects of fields (write) \[writes(?B,?F,?L) means: "Block ?B writes to field ?F at location ?L"\]
- no structural (statement) matching (e.g pattern match on a loop or body of a method)
- no generics support
- no quantifiers
...
- https://bitbucket.org/jlahoda/jackpot30/wiki/RulesLanguageAdditionalDocs
- no support for types of expr
- no support for grouping elements by a characteristic (eg overloaded methods)
- http://wiki.netbeans.org/JavaDeclarativeHintsFormat
PMD
- http://www.ing.iac.es/~docs/external/java/pmd/rules/design.html
- http://code.google.com/p/code-cop-code/wiki/PmdRulesCodecop
- structural matching: all AST hiearchy can be queried through Xpath expression
- can't express subtype relations. E.g. assignments where RHS is supertype of left handside and different
- no variable binding
- support generic constructors but not bind it to enclosing class: //ConstructorDeclaration//TypeParameters
- no support for read/write effects
...
Overview
Content Tools
ThemeBuilder