Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 335943

Summary: Better programmatic queries (a la VisualVM javascript)
Product: [Tools] MAT Reporter: Iulian Dragos <jaguarul>
Component: CoreAssignee: Project Inbox <mat.core-inbox>
Status: NEW --- QA Contact:
Severity: enhancement    
Priority: P3 CC: jaguarul
Version: unspecified   
Target Milestone: ---   
Hardware: All   
OS: All   
Whiteboard:

Description Iulian Dragos CLA 2011-02-01 05:09:40 EST
Build Identifier: 1.0.1.201008091353

OQL is fine for quickly finding information in a heap, but sometimes you need more programmatic access. 

* toString is not handling your types properly (for instance,  you may be using Scala, Clojure, Groovy, etc)
* object graph navigation: relational algebra can be cumbersome when navigating forward links (like, find all objects in a certain map)

Currently you can extend MAT using plugins, through its extension points. This is great for large project, but many times you need a quick and dirty query or name resolver. 

VisualVM allows full JavaScript programs in their queries. It would be great to have something similar, especially the ability to abstract and reuse  (write functions, use them in queries).

Javascript is a good candidate, since there are available implementations and a dynamic language fits well with the model. Ideally, this could be an extension point where people can plug different interpreters.

Reproducible: Always