November 2014
Intermediate to advanced
366 pages
9h 17m
English
In the following exercises, you will use ScalaSTM to implement various transactional programming abstractions. In most cases, their implementation will closely resemble a sequential implementation, but use transactions. In some cases, you might need to consult external literature or ScalaSTM documentation to correctly solve the exercise.
TPair class:class TPair[P, Q](pinit: P, qinit: Q) {
def first(implicit txn: InTxn): P = ???
def first_=(x: P)(implicit txn: InTxn): P = ???
def second(implicit txn: InTxn): Q = ???
def second_=(x: Q)(implicit txn: InTxn): Q = ???
def swap()(implicit e: P =:= Q, txn: InTxn): Unit = ???
}In addition to getters and setters for the two fields, ...
Read now
Unlock full access