Username:
Password:
register password? remember me
search constraints
finder

query

   New Context-Sensitive Eclipse Plugin Available! use as default constraints  clear default 
faq
  1. What is merobase and what can it do for me?
  2. What kind of searches does merobase support?
  3. Can I only search for Source Code?
  4. What does the "default constraints" facility do?
  5. What range of languages can I find using merobase?
  6. Who owns the components retrieved by merobase?
  7. How many components does merobase index?
  8. Who can see my bookmarks?
  9. How do the capabilities of merobase compare to those of other code search engines such as GCS, Koders, Krugle and ucodeit?
  1. What is merobase and what can it do for me?

    merobase is a search and tagging engine that allows users to find, remember and share components on the Internet. In contrast with first-generation code search engines, merobase treats source code modules as first class abstractions rather than chunks of text, and is thereby able to offer a much wider range of search options. In particular, merobase specializes in finding components based on their interface (or API) rather than the strings in their source code.

  2. What kind of searches does merobase support?

    merobase supports four basic kinds of searches. Using the Merobase Query Language (MQL) you can look for components that have a particular name or contain a given string in their source code. But in addition you can search for components that represent a particular logical abstraction - either a function-oriented abstraction or an object-oriented abstraction. In addition, merobase supports a wide range of constraints which allow you to narrow down your search to components with a particular set of properties.

    The highlights of merobase's search capabilities include:

    • the most comprehensive index on the web
    • support for queries formulated in programming languages (C/C#/Java) or in UML-like operation syntax
    • a large list of publicly available web services and a web service execution engine
    • a jar finding feature
    • a javadoc finding feature that finds the javadoc dcoumention for a given file on the web
  3. Can I only search for Source Code?

    No! Because of its ability to find components based on their interface, merobase is able to support searches for all kinds of software components not just those in source form. For example, you can search for compiled components (such as Java byte code or .Net assemblies) or you can search for web services. Merobase also supports searches for various kinds of physical and logical containers such as jar files and packages.

  4. What does the "default constraints" facility do?

    It allows you to tailor searches to your needs without you having to type your preferred constraints into each query. Using this feature you can define a set of default constraints which are automatically added to every query that you enter. For example, if you are only interesting in looking for Java source classes then you can define the following combination of constraints as your default.

    lang:java form:source type:class

    To do this, enter the constraints into the search area and click the "use as default constraints" link below the query box. If you are logged in, your default constraints are stored permanently in your preferences until you delete them again.

  5. What range of languages can I find using merobase?

    merobase currently focuses on three languages: Java classes, C# classes and web services. However, it can support searches in over forty languages and this list is expanding all the time.

  6. Who owns the components retrieved by merobase?

    Like general purpose search engines, merobase does not create or own the components that it references in its index or its search results. The appearance of a component in a search list does not necessarily mean that the component is available for use, it is only an indication that it is publicly accessible via the Internet. You use components discovered via merobase entirely at your own risk, therefore, and you are responsible for paying any fees and conforming to any licensing agreements.

  7. How many components does merobase index?

    Merobase's indices for Java, C and C# , its three current foci, are larger than any those of any other code search engine that we are aware of (in other words, searches are performed over a larger number of components). In addition, merobase's indexes web services and binary components as well as regular source code. In total, our index references almost 10 million components.

  8. Who can see my bookmarks?

    The "community" area of merobase allows users to bookmark and tag the components that they find using the search engine. Like most bookmarking and tagging engines, these tags and bookmarks are public, and can be seen by any registered users of the system.

  9. How do the capabilities of merobase compare to those of other code search engines such as GCS, Koders, Krugle and ucodeit? GCS

    Google Code Search essentially searches for specified strings in the source code of indexed components. This corresponds exactly to merobase's text based search facility. Merobase does not itself support GCS-style regular expression but merobase's query language provides equivalent functionality. In fact it provides an easier and more intuitive way of focusing a search on components with particular combinations of names and properties than the extremely generic regular expression language.

    GCS currently has no equivalent to merobase's function and object-oriented search facilities and is limited to source code.

    Koders & Krugle

    The basic search mechanisms of Koders and Krugle also search for strings in the source code of indexed components. However, they both offer some special queries which allow more specialized searches. The merobase equivalent to each of these is shown in the table below.

    Constrain on... Krugle Koders merobase
    class names selectable from menu cdef:<search term> Search for classes whose name contains <search term> cdef:parser name:parser type:class (the latter constraint is only required if you want to exclude interfaces, services and enumerations)
    operation declarations selectable from menu mdef:compute method:compute
    interface names - idef:logging name:logging type:interface
    operation invocations selectable from menu mcall:<search term> Search for method calls that contain <search term> mcall:query this can be easily simulated with a text-based search on merobase: e.g. ".query("
    compound examples - compound examples: Search for classes named 'tree' with a method named 'insert' "cdef:tree mdef:insert" merobase supports combinations of its constraints with Boolean operators
    language lang:java selectable from menu lang:java
    project additional input field - project:eclipse
    license - selectable from menu license:"general public license" This constraint can also be used with a NOT or "-" to exclude licenses. merobase also supports the lictype constraint to select a group of licenses
    functional abstraction - - random(float,float):float; merobase supports full interface-driven queries
    object abstraction - -
    ShoppingCart (
      addItem(Item, int);     
      total():double;
    )

    Neither Koders or Krugle currently have an equivalent to merobase's function or object-oriented search facilities. Moreover, their indices are limited to source code while merobase also supports binary file type like classes and .NET assemblies.

    jarhoo.com

    since merobase is able to find JAR files that contain a given class it subsumes the functionality of jarhoo.com.

    javadocs.com

    merobase has a feature that is able to forward you directly to the javadoc of a given class as long as it is available on the web. Just enter e.g. http://merobase.com/javadoc/java.util.Stack in your webbrowser and get redirected to the javadoc you want.

home  · getting started  · updates  · faq  · about  · terms of service  · contact  · downloads  · submit 

© 2006-2008 merotronics