I have started using Homebrew and it is pretty close to perfect. The Scala install is the first issue I've had.
[greg:local] brew install scala ==> Downloading http://www.scala-lang.org/downloads/distrib/files/scala-2.8.1.final.tgz ######################################################################## 100.0% /usr/local/Cellar/scala/2.8.1: 113 files, 22M, built in 2 seconds [greg:local] scala -bash: /opt/scala-2.7.5.final/bin/scala: No such file or directory [greg:local] sudo scala Password: Welcome to Scala version 2.8.1.final (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_22). Type in expressions to have them evaluated. Type :help for more information. scala> 1 + 2 res0: Int = 3 scala>
[greg:local] chmod 755 /usr/local/Cellar/scala/2.8.1/bin/*
[greg:local] scala
Welcome to Scala version 2.8.1.final (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_22).
Type in expressions to have them evaluated.
Type :help for more information.
scala> 1 + 9
res0: Int = 10
scala> val myList = new java.util.ArrayList[String]()
myList: java.util.ArrayList[String] = []
scala> myList.add("Hello")
res1: Boolean = true
scala> myList.add("World")
res2: Boolean = true
scala> myList
res3: java.util.ArrayList[String] = [Hello, World]
scala> myList.<TAB>
add addAll asInstanceOf clear clone contains
containsAll ensureCapacity get indexOf isEmpty isInstanceOf
iterator lastIndexOf listIterator remove removeAll retainAll
set size subList toArray toString trimToSize
scala> 1.<TAB>
% & * + - / >
>= >> >>> ^ asInstanceOf isInstanceOf toByte
toChar toDouble toFloat toInt toLong toShort toString
unary_+ unary_- unary_~ |
scala> 1.