• Home
    • View
    • Login
    This page
    • Normal
    • Export PDF
    • Page Information

    Loading...
  1. Dashboard
  2. Undefined Space
  3. Compiler
  4. Java Corpus Tools

Page History

Versions Compared

Old Version 78

changes.mady.by.user J. Duke

Saved on Jul 26, 2012

compared with

New Version 79

changes.mady.by.user J. Duke

Saved on Jul 26, 2012

  • Previous Change: Difference between versions 77 and 78
  • Next Change: Difference between versions 79 and 80
  • View Page History

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  •  no working Eclipse plugin found. (authors emailed)
  • argument list pattern (sec 2.2) public _ (_, String, *) : any public method that accept a String as its second argument and returns any type
  • quantifiers: no, all, exists...
  • anonymous class
  • pattern naming (integral := byte | short | int | long)
  • variable binding
  • no structural matching of AST (deemed difficult because uses class files) (so can't look match on a loop for example or find all local variables in method)
  • no submethod information (local vars etc)
  • Wiki Markup
    read\[F\]/write\[F\] predicates to indicate whether a method reads/write to a field. Nice feature: write\[_\] tells whether method writes to a field at all. Q: How do we do this recursively? All methods within the method are not writing to fields...
  • no support for generics (according to documentation)

...

  • doesn't detect local inner classes (local & anonymous). Only inner classes (doesn't differentiate): class in all classes
  • no access to local variable declared in methods
  • no support for generics.
  • no support for constructors (considered as method init) 
  • no AST structural matching. (e.g loops ...)
  • no variable binding/unification
  • set operators (union, intersection)
  • support for read/write of fields references

Similar reasons to JTL.

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)

...

  • 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/JavaDeclarativeHintsFormatImage Removed
  •  

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

Terms of Use
• License: GPLv2
• Privacy • Trademarks • Contact Us

Powered by a free Atlassian Confluence Open Source Project License granted to https://www.atlassian.com/software/views/opensource-community-additional-license-offer. Evaluate Confluence today.

  • Kolekti ThemeBuilder Powered by Atlassian Confluence 8.5.23
  • Kolekti ThemeBuilder printed.by.atlassian.confluence
  • Report a bug
  • Atlassian News
Atlassian
Kolekti ThemeBuilder EngineAtlassian Confluence
{"serverDuration": 413, "requestCorrelationId": "f20648d90cab51f6"}