diff --git a/Library/Homebrew/cmd/uses.rb b/Library/Homebrew/cmd/uses.rb
index 4d24266c14e865691e590bcb97a89cc7d658d5e4..6775a55c0c65c81601233fbf2ce0e510a27a37e2 100644
--- a/Library/Homebrew/cmd/uses.rb
+++ b/Library/Homebrew/cmd/uses.rb
@@ -12,20 +12,17 @@ module Homebrew extend self
     uses = Formula.select do |f|
       ARGV.formulae.all? do |ff|
         if ARGV.flag? '--recursive'
-          f.recursive_deps.include? ff
+          f.recursive_dependencies.any? { |dep| dep.name == ff.name }
         else
-          f.deps.include? ff
+          f.deps.any? { |dep| dep.name == ff.name }
         end
       end
     end
 
     if ARGV.include? "--installed"
-      uses = uses.select do |f|
-        keg = HOMEBREW_CELLAR/f
-        keg.directory? and not keg.subdirs.empty?
-      end
+      uses = uses.select { |f| Formula.installed.include? f }
     end
 
-    puts_columns uses.map{|f| f.to_s}.sort
+    puts_columns uses.map(&:to_s).sort
   end
 end