I hereby claim:
- I am dschobel on github.
- I am dschobel (https://keybase.io/dschobel) on keybase.
- I have a public key whose fingerprint is E704 9E0F 00B0 4423 FEE1 9E4E 167C 1C57 BB23 3D77
To claim this, I am signing this object:
// no external dependencies, just :paste the entire gist into a scala 2.11 repl | |
// scala> import State._ | |
// scala> StackExample.computed.run(List.empty) | |
// #result of push(1), push(2), push(3), pop() | |
// res0: (List[Int], Option[Int]) = (List(2, 1),Some(3)) | |
// #naive fibonacci impl | |
// scala> time(FibExample.fib(42)) | |
// took 1204 ms |
lazy val root = (project in file(".")). | |
settings( | |
name := "My Project", | |
version := "1.0", | |
scalaVersion := "2.11.6" | |
) | |
libraryDependencies += "com.twitter" % "util-core_2.11" % "6.23.0" | |
libraryDependencies += "org.scalatest" %% "scalatest" % "2.2.1" % "test" |
import com.twitter.finagle.Service; | |
import com.twitter.finagle.SimpleFilter; | |
import com.twitter.util.Future; | |
public class MyThriftRequest { public int Attribute = 123; } | |
public class LoggingFilter extends SimpleFilter<MyThriftRequest, MyThriftResponse> { | |
private static final Logger LOG = Logger.getLogger(LoggingFilter.class); |
I hereby claim:
To claim this, I am signing this object:
public class Volatile { | |
private static boolean ready; | |
private static int number; | |
public static class ReaderThread extends Thread { | |
public void run() { | |
while(!ready) | |
{ | |
Thread.yield(); | |
} |
(define (stream-maker seed fx) | |
(letrec ([f (lambda(x) (cons x (lambda () (fx x))))]) | |
(lambda () (f seed)))) | |
(define naturals (stream-maker 1 (lambda (x) (+ x 1)))) |
def gather_futures[A](xs: Seq[Future[A]]): Future[Seq[A]]= { | |
def combine[A,B,C](f1: Future[A], f2: Future[B])(f: (A,B) => C): Future[C] ={ | |
for(a <- f1; b <- f2) | |
yield f(a,b) | |
} | |
xs.foldLeft(Future{Seq[A]()}){(acc: Future[Seq[A]],x: Future[A]) => combine(x,acc)((a: A,b: Seq[A]) => b ++ Seq(a))} | |
} |
fun count_and_sort [] = ([],0) | |
| count_and_sort [x] = ([x],0) | |
| count_and_sort xs = | |
let | |
fun count_and_sort_split_inversions([],ys,acc,sum) = (List.rev(acc) @ ys,sum) | |
| count_and_sort_split_inversions(xs,[],acc,sum) = (List.rev(acc) @ xs,sum) | |
| count_and_sort_split_inversions(x :: xs, y :: ys,acc,sum) = | |
if x < y | |
then count_and_sort_split_inversions(xs, y :: ys, x :: acc, sum) | |
else count_and_sort_split_inversions(x :: xs, ys, y :: acc, sum + List.length(x :: xs)) |
def from(n: Int): Stream[Int] = n #:: from(n+1) | |
def sieve(nums: Stream[Int]): Stream[Int] = nums.head #:: sieve(nums.tail.filterNot(_ % nums.head == 0)) | |
def primes: Stream[Int] = sieve(from(2)) |
val r = new scala.util.Random() | |
val data = List.fill(10)(r.nextInt(100)) | |
def isort(xs: List[Int]): List[Int] = { | |
def insert(x: Int, xs: List[Int]): List[Int] = xs match { | |
case List() => List(x) | |
case y :: ys => if (x < y) x :: y :: ys else y :: insert(x, ys) | |
} |