summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authormichelou <michelou@epfl.ch>2007-05-16 13:30:30 +0000
committermichelou <michelou@epfl.ch>2007-05-16 13:30:30 +0000
commit1f65685c9626929f3e6d7b81225f57fd4e68438c (patch)
tree54d3462ca86d36545ab6ef946a1095a0f15ac38f /docs
parent73b2db5db4fc7316467b51299994b47065bde74d (diff)
downloadscala-1f65685c9626929f3e6d7b81225f57fd4e68438c.tar.gz
scala-1f65685c9626929f3e6d7b81225f57fd4e68438c.tar.bz2
scala-1f65685c9626929f3e6d7b81225f57fd4e68438c.zip
updated examples
Diffstat (limited to 'docs')
-rw-r--r--docs/examples/Parsers.scala14
-rw-r--r--docs/examples/boundedbuffer.scala12
-rw-r--r--docs/examples/computeserver.scala6
-rw-r--r--docs/examples/fors.scala28
-rw-r--r--docs/examples/futures.scala6
-rw-r--r--docs/examples/iterators.scala10
-rw-r--r--docs/examples/maps.scala6
-rw-r--r--docs/examples/oneplacebuffer.scala8
-rw-r--r--docs/examples/parsers1.scala8
-rw-r--r--docs/examples/parsers2.scala3
-rw-r--r--docs/examples/patterns.scala6
-rw-r--r--docs/examples/sort.scala18
-rw-r--r--docs/examples/sort1.scala6
-rw-r--r--docs/examples/sort2.scala6
-rw-r--r--docs/examples/typeinf.scala9
15 files changed, 75 insertions, 71 deletions
diff --git a/docs/examples/Parsers.scala b/docs/examples/Parsers.scala
index b18d5d5188..4129edca2d 100644
--- a/docs/examples/Parsers.scala
+++ b/docs/examples/Parsers.scala
@@ -58,16 +58,16 @@ abstract class Parsers {
class Tokenizer(in: Iterator[char], delimiters: String) extends Iterator[String] {
- val EOI: char = 0;
+ val EOI: char = 0
def nextChar() =
- if (in.hasNext) in.next else EOI;
+ if (in.hasNext) in.next else EOI
private var ch = nextChar();
def isDelimiter(ch: Char) = {
- var i = 0;
- while (i < delimiters.length() && delimiters.charAt(i) != ch) { i = i + 1 }
+ var i = 0
+ while (i < delimiters.length() && delimiters.charAt(i) != ch) { i += 1 }
i < delimiters.length()
}
@@ -76,7 +76,7 @@ class Tokenizer(in: Iterator[char], delimiters: String) extends Iterator[String]
private val buf = new StringBuffer
def next: String = {
- while (ch <= ' ' && ch != EOI) nextChar();
+ while (ch <= ' ' && ch != EOI) nextChar()
if (ch == EOI) ""
else {
if (isDelimiter(ch)) ch.toString()
@@ -102,7 +102,7 @@ trait TokenParsers extends Parsers {
trait CharParsers extends Parsers {
def any: Parser[char]
def chr(ch: char) =
- for (c <- any; if c == ch) yield c
+ for (c <- any if c == ch) yield c
def chr(p: char => boolean) =
- for (c <- any; if p(c)) yield c
+ for (c <- any if p(c)) yield c
}
diff --git a/docs/examples/boundedbuffer.scala b/docs/examples/boundedbuffer.scala
index 414566adef..dceda62bd4 100644
--- a/docs/examples/boundedbuffer.scala
+++ b/docs/examples/boundedbuffer.scala
@@ -12,13 +12,13 @@ object boundedbuffer {
def put(x: a) = synchronized {
await (n < N)
- elems(in) = x; in = (in + 1) % N; n = n + 1
+ elems(in) = x; in = (in + 1) % N; n += 1
if (n == 1) notifyAll()
}
def get: a = synchronized {
await (n != 0)
- val x = elems(out); out = (out + 1) % N ; n = n - 1
+ val x = elems(out); out = (out + 1) % N ; n -= 1
if (n == N - 1) notifyAll()
x
}
@@ -27,17 +27,17 @@ object boundedbuffer {
def kill(delay: Int) = new java.util.Timer().schedule(
new java.util.TimerTask {
override def run() = {
- Console.println("[killed]")
+ println("[killed]")
System.exit(0)
}
},
delay) // in milliseconds
- def main(args: Array[String]) = {
+ def main(args: Array[String]) {
val buf = new BoundedBuffer[String](10)
var cnt = 0
- def produceString = { cnt = cnt + 1; cnt.toString() }
- def consumeString(ss: String) = Console.println(ss)
+ def produceString = { cnt += 1; cnt.toString() }
+ def consumeString(ss: String) = println(ss)
spawn { while (true) { val ssss = produceString; buf.put(ssss) } }
spawn { while (true) { val s = buf.get; consumeString(s) } }
kill(1000)
diff --git a/docs/examples/computeserver.scala b/docs/examples/computeserver.scala
index 50e2ed034f..bd6f536dfa 100644
--- a/docs/examples/computeserver.scala
+++ b/docs/examples/computeserver.scala
@@ -15,7 +15,7 @@ class ComputeServer(n: Int) {
private def processor(i: Int): Unit = {
while (true) {
val job = openJobs.read
- Console.println("read a job")
+ println("read a job")
job.ret(job.task)
}
}
@@ -40,7 +40,7 @@ object computeserver extends Application {
def kill(delay: Int) = new java.util.Timer().schedule(
new java.util.TimerTask {
override def run() = {
- Console.println("[killed]")
+ println("[killed]")
System.exit(0)
}
},
@@ -48,6 +48,6 @@ object computeserver extends Application {
val server = new ComputeServer(1)
val f = server.future(42)
- Console.println(f())
+ println(f())
kill(10000)
}
diff --git a/docs/examples/fors.scala b/docs/examples/fors.scala
index b36ac2b60f..f872980f28 100644
--- a/docs/examples/fors.scala
+++ b/docs/examples/fors.scala
@@ -16,7 +16,7 @@ object fors {
printOlderThan20(xs.elements)
def printOlderThan20(xs: Iterator[Person]): Iterator[String] =
- for (p <- xs; if p.age > 20) yield p.name
+ for (p <- xs if p.age > 20) yield p.name
val persons = List(
new Person("John", 40),
@@ -24,13 +24,13 @@ object fors {
)
def divisors(n: Int): List[Int] =
- for (i <- List.range(1, n+1); if n % i == 0) yield i
+ for (i <- List.range(1, n+1) if n % i == 0) yield i
def isPrime(n: Int) = divisors(n).length == 2
def findNums(n: Int): Iterator[Pair[Int, Int]] =
- for (i <- Iterator.range(1, n);
- j <- Iterator.range(1, i-1);
+ for (i <- 1 until n;
+ j <- 1 until (i-1);
if isPrime(i+j)) yield Pair(i, j)
def sum(xs: List[Double]): Double =
@@ -89,24 +89,24 @@ object fors {
if (xs.isEmpty)
xs
else
- xs.head :: removeDuplicates(for (x <- xs.tail; if x != xs.head) yield x)
+ xs.head :: removeDuplicates(for (x <- xs.tail if x != xs.head) yield x)
- def main(args: Array[String]) = {
- Console.print("Persons over 20:")
- printOlderThan20(persons) foreach { x => Console.print(" " + x) }
- Console.println
+ def main(args: Array[String]) {
+ print("Persons over 20:")
+ printOlderThan20(persons) foreach { x => print(" " + x) }
+ println
- Console.println("divisors(34) = " + divisors(34))
+ println("divisors(34) = " + divisors(34))
- Console.print("findNums(15) =");
+ print("findNums(15) =");
findNums(15) foreach { x => Console.print(" " + x); }
- Console.println
+ println
val xs = List(3.5, 5.0, 4.5)
- Console.println("average(" + xs + ") = " + sum(xs) / xs.length)
+ println("average(" + xs + ") = " + sum(xs) / xs.length)
val ys = List(2.0, 1.0, 3.0)
- Console.println("scalProd(" + xs + ", " + ys +") = " + scalProd(xs, ys))
+ println("scalProd(" + xs + ", " + ys +") = " + scalProd(xs, ys))
}
}
diff --git a/docs/examples/futures.scala b/docs/examples/futures.scala
index 79682b5b76..e05b6b330e 100644
--- a/docs/examples/futures.scala
+++ b/docs/examples/futures.scala
@@ -8,10 +8,10 @@ object futures {
def f(x: Int) = x + x
def g(x: Int) = x * x
- def main(args: Array[String]): Unit = {
+ def main(args: Array[String]) {
val x = future(someLengthyComputation)
anotherLengthyComputation
val y = f(x()) + g(x())
- Console.println(y)
+ println(y)
}
-} \ No newline at end of file
+}
diff --git a/docs/examples/iterators.scala b/docs/examples/iterators.scala
index b390f4007a..4f4aa79f28 100644
--- a/docs/examples/iterators.scala
+++ b/docs/examples/iterators.scala
@@ -1,16 +1,16 @@
-package examples;
+package examples
object iterators {
def Array(elems: Double*): Array[Double] = {
val ar = new Array[Double](elems.length)
- for (i <- Iterator.range(0, elems.length))
+ for (i <- 0 until elems.length)
ar(i) = elems(i)
ar
}
def printArray(xs: Array[Double]) =
- Iterator.fromArray(xs) foreach { x => Console.println(x) }
+ Iterator.fromArray(xs) foreach { x => println(x) }
def findGreater(xs: Array[Double], limit: Double) =
Iterator.fromArray(xs)
@@ -18,10 +18,10 @@ object iterators {
.filter{case Pair(x, i) => x > limit }
.map{case Pair(x, i) => i}
- def main(args: Array[String]): Unit = {
+ def main(args: Array[String]) {
val ar = Array/*[Double]*/(6, 2, 8, 5, 1)
printArray(ar)
- Console.println("Elements greater than 3.0:")
+ println("Elements greater than 3.0:")
findGreater(ar, 3.0) foreach { x => Console.println(ar(x)) }
}
diff --git a/docs/examples/maps.scala b/docs/examples/maps.scala
index 504966cf81..ac54068730 100644
--- a/docs/examples/maps.scala
+++ b/docs/examples/maps.scala
@@ -171,12 +171,12 @@ object maps {
override def equals(that: Any): Boolean =
that.isInstanceOf[Date] && {
- val o = that.asInstanceOf[Date];
- day == o.day && month == o.month && year == o.year
+ val o = that.asInstanceOf[Date];
+ day == o.day && month == o.month && year == o.year
}
}
- def main(args: Array[String]) = {
+ def main(args: Array[String]) {
val t = new OOBinTree[Date, String]()
()
}
diff --git a/docs/examples/oneplacebuffer.scala b/docs/examples/oneplacebuffer.scala
index ccdb0f8732..55d85068ad 100644
--- a/docs/examples/oneplacebuffer.scala
+++ b/docs/examples/oneplacebuffer.scala
@@ -2,7 +2,7 @@ package examples
object oneplacebuffer {
- import scala.concurrent._;
+ import scala.concurrent._
class OnePlaceBuffer {
private val m = new MailBox() {} // An internal mailbox
@@ -33,17 +33,17 @@ object oneplacebuffer {
},
delay) // in milliseconds
- def main(args: Array[String]) = {
+ def main(args: Array[String]) {
val buf = new OnePlaceBuffer
val random = new java.util.Random()
- def producer(n: int): unit = {
+ def producer(n: int) {
Thread.sleep(random.nextInt(1000))
buf.write(n)
producer(n + 1)
}
- def consumer: unit = {
+ def consumer {
Thread.sleep(random.nextInt(1000))
val n = buf.read
consumer
diff --git a/docs/examples/parsers1.scala b/docs/examples/parsers1.scala
index c9029ffb11..e4aeea3613 100644
--- a/docs/examples/parsers1.scala
+++ b/docs/examples/parsers1.scala
@@ -79,7 +79,7 @@ object parsers1 {
}
object TestList {
- def main(args: Array[String]): Unit =
+ def main(args: Array[String]) {
Console.println(
if (args.length == 1) {
val ps = new ParseString(args(0)) with ListParsers
@@ -93,10 +93,11 @@ object parsers1 {
else
"usage: java examples.TestList <expr-string>"
)
+ }
}
object TestExpr {
- def main(args: Array[String]): unit =
+ def main(args: Array[String]) {
Console.println(
if (args.length == 1) {
val ps = new ParseString(args(0)) with ExprParsers
@@ -110,9 +111,10 @@ object parsers1 {
else
"usage: java examples.TestExpr <expr-string>"
)
+ }
}
- def main(args: Array[String]): Unit = {
+ def main(args: Array[String]) {
TestList.main(Array("(a,b,(1,2))"))
TestExpr.main(Array("2+3+(4+1)"))
}
diff --git a/docs/examples/parsers2.scala b/docs/examples/parsers2.scala
index b8a497c904..71ece15552 100644
--- a/docs/examples/parsers2.scala
+++ b/docs/examples/parsers2.scala
@@ -52,7 +52,7 @@ object parsers2 {
}
}
- def main(args: Array[String]): unit =
+ def main(args: Array[String]) {
Console.println(
if (args.length == 1) {
val ps = new ParseString(args(0)) with ListParsers
@@ -64,5 +64,6 @@ object parsers2 {
else
"usage: scala examples.parsers2 <expr-string>"
)
+ }
}
diff --git a/docs/examples/patterns.scala b/docs/examples/patterns.scala
index e36149ad9c..208b216c34 100644
--- a/docs/examples/patterns.scala
+++ b/docs/examples/patterns.scala
@@ -29,8 +29,8 @@ object patterns {
case None => System.out.println("no match")
}
- def main(args: Array[String]): Unit = {
- Console.println("sum of leafs=" + sumLeaves(tree1))
+ def main(args: Array[String]) {
+ println("sum of leafs=" + sumLeaves(tree1))
printFinds(List(Pair(3, "three"), Pair(4, "four")), 4)
}
-} \ No newline at end of file
+}
diff --git a/docs/examples/sort.scala b/docs/examples/sort.scala
index cc06f19366..9a928f1107 100644
--- a/docs/examples/sort.scala
+++ b/docs/examples/sort.scala
@@ -2,23 +2,23 @@ package examples
object sort {
- def sort(a: Array[Int]): Unit = {
+ def sort(a: Array[Int]) {
- def swap(i: Int, j: Int): Unit = {
+ def swap(i: Int, j: Int) {
val t = a(i); a(i) = a(j); a(j) = t
}
- def sort1(l: Int, r: Int): Unit = {
+ def sort1(l: Int, r: Int) {
val pivot = a((l + r) / 2)
var i = l
var j = r
while (i <= j) {
- while (a(i) < pivot) { i = i + 1 }
- while (a(j) > pivot) { j = j - 1 }
+ while (a(i) < pivot) { i += 1 }
+ while (a(j) > pivot) { j -= 1 }
if (i <= j) {
swap(i, j)
- i = i + 1
- j = j - 1
+ i += 1
+ j -= 1
}
}
if (l < j) sort1(l, j)
@@ -29,7 +29,7 @@ object sort {
sort1(0, a.length - 1)
}
- def println(ar: Array[Int]) = {
+ def println(ar: Array[Int]) {
def print1 = {
def iter(i: Int): String =
ar(i) + (if (i < ar.length-1) "," + iter(i+1) else "")
@@ -38,7 +38,7 @@ object sort {
Console.println("[" + print1 + "]")
}
- def main(args: Array[String]): Unit = {
+ def main(args: Array[String]) {
val ar = Array(6, 2, 8, 5, 1)
println(ar)
sort(ar)
diff --git a/docs/examples/sort1.scala b/docs/examples/sort1.scala
index 98f1370e65..39e5519fe0 100644
--- a/docs/examples/sort1.scala
+++ b/docs/examples/sort1.scala
@@ -13,10 +13,10 @@ object sort1 {
}
}
- def main(args: Array[String]) = {
+ def main(args: Array[String]) {
val xs = List(6, 2, 8, 5, 1)
- Console.println(xs)
- Console.println(sort(xs))
+ println(xs)
+ println(sort(xs))
}
}
diff --git a/docs/examples/sort2.scala b/docs/examples/sort2.scala
index 1e471b89df..8e0b070250 100644
--- a/docs/examples/sort2.scala
+++ b/docs/examples/sort2.scala
@@ -16,10 +16,10 @@ object sort2 {
}
}
- def main(args: Array[String]): Unit = {
+ def main(args: Array[String]) {
val xs = List(6, 2, 8, 5, 1)
- Console.println(xs)
- Console.println(sort(xs))
+ println(xs)
+ println(sort(xs))
}
}
diff --git a/docs/examples/typeinf.scala b/docs/examples/typeinf.scala
index da9ba9384c..80980ebc9a 100644
--- a/docs/examples/typeinf.scala
+++ b/docs/examples/typeinf.scala
@@ -32,7 +32,7 @@ case class Tycon(k: String, ts: List[Type]) extends Type {
object typeInfer {
private var n: Int = 0
- def newTyvar(): Type = { n = n + 1 ; Tyvar("a" + n) }
+ def newTyvar(): Type = { n += 1; Tyvar("a" + n) }
trait Subst extends Function1[Type, Type] {
def lookup(x: Tyvar): Type
@@ -169,7 +169,7 @@ object typeInfer {
/** Non-keyword identifiers */
def ident: Parser[String] =
- for (s <- id; if s != "let" && s != "in") yield s
+ for (s <- id if s != "let" && s != "in") yield s
/** term = '\' ident '.' term | term1 {term1} | let ident "=" term in term */
def term: Parser[Term] = (
@@ -181,7 +181,7 @@ object typeInfer {
yield Lam(x, t): Term )
|||
( for (
- letid <- id; if letid == "let";
+ letid <- id if letid == "let";
x <- ident;
_ <- wschr('=');
t <- term;
@@ -234,7 +234,7 @@ object typeInfer {
"\n reason: " + msg
}
- def main(args: Array[String]): unit =
+ def main(args: Array[String]) {
Console.println(
if (args.length == 1) {
val ps = new ParseString(args(0)) with MiniMLParsers
@@ -248,5 +248,6 @@ object typeInfer {
else
"usage: java examples.typeinf <expr-string>"
)
+ }
}