úÎ ¤ 8Heterogenous query tree. Example of constructed query:  ) Not (Id (== GPL)) :& Not (Id (== BSD3)) , takes comparison function as its argument. , Commonly this must be a partially applied () or ( ).  Data instance is required for    traversal. 8 All appropriate instances are generated automagically,  so you don''t have to bother as long as Cabal doesn' t change its  package description format. 4Queries an index file, which is commonly located at   2~/.cabal/packages/hackage.haskell.org/00-index.tar in POSIX systems. Queries .cabal files.       cabal-query-0.1Distribution.QueryDistribution.Query.THDistribution.Query.TypesbaseData.Eq Cabal-1.6.0.3Distribution.PackageDescriptionQueryIdNot:|:& queryIndex queryFiles deriveMany GHC.Classes/===PackageDescription