antlersoft home page contact antlersoft
free software news

Browse-by-Query

A query language for code browsing. You query your database-- why don't you query your code? Write queries to provide custom views of your code base--for Java and now CLR languages (C#, VB) on .Net or Mono as well. antlersoft's aim is to have BBQ's abilities available for developers using any language or platform.

BBQ provides a query language specialized for finding things in your code. Like a conventional browser in an IDE, the query language knows your code and your programming language; unlike a conventional browser, there is no limit to how deeply among the web of relationships among your program objects you can search in a single query. Although the built-in capabilities of an IDE may be sufficient for most of the searches you do, sometimes what your looking for is more complex. Programmers are used to thinking in terms of language and expressions; BBQ's query language lets them formulate arbitrarily complex questions about their code and see the answer almost instantly.

An example query might be:

calls to polymorphic methods containing references to string "actionName"

BBQ for Java

BBQ for Java reads .class and jar files and does static analysis on the bytecode, creating objects in an OODBMS for classes, methods, method calls, fields, field references, string constants, and string constant references. The BBQ query language lets you compose English-like queries against these objects, and BBQ then sifts through your code to find just what you were looking for.

BBQ for Java integrates with your Eclipse or JBuilder IDE (others if there is demand...), or use the standalone version. BBQ is written in Java and will run on your platform.

Try BBQ now

You can query a sample database on the web.

Compose a query or choose a sample query below:

BBQ for C#-CIL

You can now use the Browse-by-Query language with your .NET or Mono code base. BBQ reads assembly files and adds the information from the CIL byte codes to its database: namespaces, classes, methods, method calls, fields, field refererences, string constants and string constant references. BBQ's efficient OODBMS handles large projects easily. Build a query and find just what you need to see. BBQ for C#-CIL and BBQ for Java use a common query language, with a few language-specific differences that are noted in the manual.

Although it analyzes CLR assemblies, BBQ for C#-CIL itself runs (mainly) on the Java platform. There is a standalone version, which lets you analyze and query assemblies independent of your development environment; there is also an add-in for Visual Studio 2005. The add-in depends on the standalone version. The add-in acts as a client and sends query requests to the standalone version which acts as a server. You also select and analyze assemblies for the add-in within the standalone version. Refer to the release notes for more information.

Eclipse plugin site

http://browsebyquery.sourceforge.net/eclipse-site/site.xml


antlersoft home page contact antlersoft
free software news