Skip to content

Instantly share code, notes, and snippets.

View paulp's full-sized avatar
🤫

Paul Phillips paulp

🤫
  • CAZ, Inc.
  • Cascadia Autonomous Zone
View GitHub Profile
> run org.scala-lang:scala-library:[0,)
[info] Running improving.Test org.scala-lang:scala-library:[0,)
org.scala-lang:scala-library:[0,) 2.3.1, 2.3.3, 2.4.0-RC1, 2.4.0-RC2, 2.4.0, 2.5.0-RC1, 2.5.0-RC2, 2.5.0, 2.5.1, 2.6.0-RC2, 2.6.0-RC3, 2.6.0, 2.6.1-rc1, 2.6.1-rc2, 2.6.1, 2.7.0-rc1, 2.7.0-rc2, 2.7.0-rc3, 2.7.0, 2.7.1-rc1, 2.7.1-rc2, 2.7.1, 2.7.2-rc1, 2.7.2-rc2, 2.7.2-rc3, 2.7.2-rc6, 2.7.2, 2.7.3.RC1, 2.7.3.RC2, 2.7.3, 2.7.4.RC1, 2.7.4, 2.7.4.final, 2.7.5, 2.7.6, 2.7.7.RC1, 2.7.7.RC2, 2.7.7, 2.8.0.Beta1-RC1, 2.8.0.Beta1-RC2, 2.8.0.Beta1-RC3, 2.8.0.Beta1-RC4, 2.8.0.Beta1-RC5, 2.8.0.Beta1-RC6, 2.8.0.Beta1-RC7, 2.8.0.Beta1-RC8, 2.8.0.Beta1, 2.8.0.RC1, 2.8.0.RC2, 2.8.0.RC3, 2.8.0.RC4, 2.8.0.RC5, 2.8.0.RC6, 2.8.0.RC7, 2.8.0, 2.8.0.r18462-b20090811081019, 2.8.1.RC1, 2.8.1.RC2, 2.8.1.RC3, 2.8.1.RC4, 2.8.1, 2.8.2.RC1, 2.8.2.RC2, 2.8.2.RC3, 2.8.2, 2.9.0.RC1, 2.9.0.RC2, 2.9.0.RC3, 2.9.0.RC4, 2.9.0.RC5, 2.9.0, 2.9.0-1, 2.9.1.RC1, 2.9.1.RC2, 2.9.1.RC3, 2.9.1.RC4, 2.9.1, 2.10.0-M1, 2.10.0-M1-virtualized, 2.10.0-M1-vir
> run org.scala-lang:scala-library:[0,)
[info] Running improving.Test org.scala-lang:scala-library:[0,)
org.scala-lang:scala-library:[0,) 2.3.1, 2.3.3, 2.4.0-RC1, 2.4.0-RC2, 2.4.0, 2.5.0-RC1, 2.5.0-RC2, 2.5.0, 2.5.1, 2.6.0-RC2, 2.6.0-RC3, 2.6.0,
2.6.1-rc1, 2.6.1-rc2, 2.6.1, 2.7.0-rc1, 2.7.0-rc2, 2.7.0-rc3, 2.7.0, 2.7.1-rc1, 2.7.1-rc2, 2.7.1, 2.7.2-rc1, 2.7.2-rc2, 2.7.2-rc3, 2.7.2-rc6, 2.7.2,
2.7.3.RC1, 2.7.3.RC2, 2.7.3, 2.7.4.RC1, 2.7.4, 2.7.4.final, 2.7.5, 2.7.6, 2.7.7.RC1, 2.7.7.RC2, 2.7.7, 2.8.0.Beta1-RC1, 2.8.0.Beta1-RC2,
2.8.0.Beta1-RC3, 2.8.0.Beta1-RC4, 2.8.0.Beta1-RC5, 2.8.0.Beta1-RC6, 2.8.0.Beta1-RC7, 2.8.0.Beta1-RC8, 2.8.0.Beta1, 2.8.0.RC1, 2.8.0.RC2, 2.8.0.RC3,
2.8.0.RC4, 2.8.0.RC5, 2.8.0.RC6, 2.8.0.RC7, 2.8.0, 2.8.0.r18462-b20090811081019, 2.8.1.RC1, 2.8.1.RC2, 2.8.1.RC3, 2.8.1.RC4, 2.8.1, 2.8.2.RC1,
2.8.2.RC2, 2.8.2.RC3, 2.8.2, 2.9.0.RC1, 2.9.0.RC2, 2.9.0.RC3, 2.9.0.RC4, 2.9.0.RC5, 2.9.0, 2.9.0-1, 2.9.1.RC1, 2.9.1.RC2, 2.9.1.RC3, 2.9.1.RC4,
2.9.1, 2.10.0-M1, 2.10.0-M1-virtualized, 2.10.0-M1-virtua
// a little one-time boilerplate
def clazz[T](implicit manifest: M[T]) = manifest.erasure.asInstanceOf[Class[_ <: T]]
def methodType[F: M] : MethodType = {
val classes = manifest[F].typeArguments map (_.erasure)
MethodType.methodType(classes.last, classes.init.toArray[Class[_]])
}
def from[F](implicit m: Manifest[F]): Binder = {
val classes = manifest[F].typeArguments map (_.erasure)
Binder.from(classes.last, classes.init.toArray).cast(methodType[F])
}
// a little one-time boilerplate
def clazz[T](implicit manifest: M[T]) = manifest.erasure.asInstanceOf[Class[_ <: T]]
def methodType[F: M] : MethodType = {
val classes = manifest[F].typeArguments map (_.erasure)
MethodType.methodType(classes.last, classes.init.toArray[Class[_]])
}
def from[F](implicit m: Manifest[F]): Binder = {
val classes = manifest[F].typeArguments map (_.erasure)
Binder.from(classes.last, classes.init.toArray).cast(methodType[F])
}
/* NEST (New Scala Test)
* Copyright 2007-2011 LAMP/EPFL
* @author Paul Phillips
*/
package scala.tools
package partest
import nsc.io._
import cmd._
Welcome to Scala version 2.10.0-20120503-160535-58f6a13460 (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_31).
Type in expressions to have them evaluated.
Type :help for more information.
scala> :paste
// Entering paste mode (ctrl-D to finish)
trait DynamicThis[+T] extends Dynamic {
this: T =>
scala> ListClass.info.members groupBy (_.associatedFile) foreach { case (k, vs) => println("%s\n %s\n".format(k, vs map (_.defString) mkString "\n ")) }
null
final def asInstanceOf[T0]: T0
final def isInstanceOf[T0]: Boolean
final def !=(x$1: Any): Boolean
final def ==(x$1: Any): Boolean
/scala/trunk/build/pack/lib/scala-library.jar(scala/collection/GenTraversableLike.class)
final def isTraversableAgain: Boolean
After java boot/extdirs classpath has 10 entries:
directory classpath: /inst/java7/jre/lib/rt.jar
directory classpath: /scala/inst/3/lib/config-0.4.0.jar
directory classpath: /scala/inst/3/lib/jline.jar
directory classpath: /scala/inst/3/lib/scala-actors.jar
directory classpath: /scala/inst/3/lib/scala-compiler.jar
directory classpath: /scala/inst/3/lib/scala-library.jar
directory classpath: /scala/inst/3/lib/scala-partest.jar
directory classpath: /scala/inst/3/lib/scala-swing.jar
directory classpath: /scala/inst/3/lib/scalacheck.jar
error:
while compiling: b.scala
during phase: specialize
library version: version 2.10.0-20120510-134429-ce1d68ed19
compiler version: version 2.10.0-20120510-152646-ba4dfd1e63
reconstructed args:
last tree to typer: Select(This(trait Bounds$mcZ$sp), x$mcZ$sp)
symbol: method x$mcZ$sp in trait Bounds$mcZ$sp (flags: override <method> <specialized>)
symbol definition: override def x$mcZ$sp[B >: Boolean](): Unit
% cat a.scala
trait Foo { def f = 5 }
% scalac ./a.scala -Xprint:all
[[syntax trees at end of parser]] // a.scala
package <empty> {
abstract trait Foo extends scala.AnyRef {
def $init$() = {
()
};