summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authormichelou <michelou@epfl.ch>2010-11-17 12:26:13 +0000
committermichelou <michelou@epfl.ch>2010-11-17 12:26:13 +0000
commitc09f6173e96ec741c9b38edfee969ae8c6b74d4e (patch)
tree1f06579f72afa12092acd0b5bbb7c678291cf619 /docs
parent363a1456f671323b35dcacf2c8b8eb39180b8a53 (diff)
downloadscala-c09f6173e96ec741c9b38edfee969ae8c6b74d4e.tar.gz
scala-c09f6173e96ec741c9b38edfee969ae8c6b74d4e.tar.bz2
scala-c09f6173e96ec741c9b38edfee969ae8c6b74d4e.zip
updates Scala examples, added detach plugin
Diffstat (limited to 'docs')
-rw-r--r--docs/examples/boundedbuffer.scala8
-rw-r--r--docs/examples/gadts.scala10
-rw-r--r--docs/examples/iterators.scala4
3 files changed, 11 insertions, 11 deletions
diff --git a/docs/examples/boundedbuffer.scala b/docs/examples/boundedbuffer.scala
index dceda62bd4..359bfd8d06 100644
--- a/docs/examples/boundedbuffer.scala
+++ b/docs/examples/boundedbuffer.scala
@@ -4,19 +4,19 @@ object boundedbuffer {
import concurrent.ops._
- class BoundedBuffer[a](N: Int) {
+ class BoundedBuffer[A](N: Int)(implicit m: ClassManifest[A]) {
var in, out, n = 0
- val elems = new Array[a](N)
+ val elems = new Array[A](N)
def await(cond: => Boolean) = while (!cond) { wait() }
- def put(x: a) = synchronized {
+ def put(x: A) = synchronized {
await (n < N)
elems(in) = x; in = (in + 1) % N; n += 1
if (n == 1) notifyAll()
}
- def get: a = synchronized {
+ def get: A = synchronized {
await (n != 0)
val x = elems(out); out = (out + 1) % N ; n -= 1
if (n == N - 1) notifyAll()
diff --git a/docs/examples/gadts.scala b/docs/examples/gadts.scala
index 88e1ff9fdb..d2792f4ada 100644
--- a/docs/examples/gadts.scala
+++ b/docs/examples/gadts.scala
@@ -3,10 +3,10 @@ package examples
object gadts extends Application {
abstract class Term[T]
- case class Lit(x: int) extends Term[int]
- case class Succ(t: Term[int]) extends Term[int]
- case class IsZero(t: Term[int]) extends Term[boolean]
- case class If[T](c: Term[boolean],
+ case class Lit(x: Int) extends Term[Int]
+ case class Succ(t: Term[Int]) extends Term[Int]
+ case class IsZero(t: Term[Int]) extends Term[Boolean]
+ case class If[T](c: Term[Boolean],
t1: Term[T],
t2: Term[T]) extends Term[T]
@@ -16,7 +16,7 @@ object gadts extends Application {
case IsZero(u) => eval(u) == 0
case If(c, u1, u2) => eval(if (eval(c)) u1 else u2)
}
- Console.println(
+ println(
eval(If(IsZero(Lit(1)), Lit(41), Succ(Lit(41)))))
}
diff --git a/docs/examples/iterators.scala b/docs/examples/iterators.scala
index 4f4aa79f28..e2e5e050a0 100644
--- a/docs/examples/iterators.scala
+++ b/docs/examples/iterators.scala
@@ -10,10 +10,10 @@ object iterators {
}
def printArray(xs: Array[Double]) =
- Iterator.fromArray(xs) foreach { x => println(x) }
+ xs.iterator foreach { x => println(x) }
def findGreater(xs: Array[Double], limit: Double) =
- Iterator.fromArray(xs)
+ xs.iterator
.zip(Iterator.from(0))
.filter{case Pair(x, i) => x > limit }
.map{case Pair(x, i) => i}