diff --git a/Library/Homebrew/brew.h.rb b/Library/Homebrew/brew.h.rb
index 8b3939968dd50e0e0e94fea6a62f385b257b38ac..60fce7eb8960f75a4527d4b0d2d135595040f64a 100644
--- a/Library/Homebrew/brew.h.rb
+++ b/Library/Homebrew/brew.h.rb
@@ -35,7 +35,7 @@ def make url
   template=<<-EOS
             require 'brewkit'
 
-            class #{Formula.class $1} <Formula
+            class #{Formula.class_s $1} <Formula
               @url='#{url}'
               @homepage=''
               @md5=''
diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb
index 7faabbae6c4f39eafd511b58d0f3f7ac6a055fe6..e995f88d1da0755365034bd438ef7be5e49e68ac 100644
--- a/Library/Homebrew/formula.rb
+++ b/Library/Homebrew/formula.rb
@@ -151,14 +151,14 @@ class Formula
     "-DCMAKE_INSTALL_PREFIX='#{prefix}' -DCMAKE_BUILD_TYPE=None"
   end
 
-  def self.class name
+  def self.class_s name
     #remove invalid characters and camelcase
     name.capitalize.gsub(/[-_\s]([a-zA-Z0-9])/) { $1.upcase }
   end
 
   def self.factory name
     require self.path(name)
-    return eval(self.class(name)).new(name)
+    return eval(self.class_s(name)).new(name)
   rescue LoadError
     raise FormulaUnavailableError.new(name)
   end
diff --git a/Library/Homebrew/unittest.rb b/Library/Homebrew/unittest.rb
index 62cc356be252bb087707a39d296faa175e5e90bb..0ef29f4f21d20ce0a145a8ec11cbf8d9f38747c7 100755
--- a/Library/Homebrew/unittest.rb
+++ b/Library/Homebrew/unittest.rb
@@ -318,7 +318,7 @@ class BeerTasting <Test::Unit::TestCase
   
   FOOBAR='foo-bar'
   def test_formula_funcs
-    classname=Formula.class(FOOBAR)
+    classname=Formula.class_s(FOOBAR)
     path=Formula.path(FOOBAR)
     
     assert_equal "FooBar", classname
@@ -471,4 +471,10 @@ class BeerTasting <Test::Unit::TestCase
     
     assert_raises(RuntimeError) {Pathname.getwd.install 'non_existant_file'}
   end
+  
+  def test_formula_class_func
+    assert_equal Formula.class_s('s-lang'), 'SLang'
+    assert_equal Formula.class_s('pkg-config'), 'PkgConfig'
+    assert_equal Formula.class_s('foo_bar'), 'FooBar'
+  end
 end