I hereby claim:
- I am trane on github.
- I am andrewk (https://keybase.io/andrewk) on keybase.
- I have a public key whose fingerprint is 8F19 9936 E354 E9F6 0B91 042A 986F A6BA 0BEB EE51
To claim this, I am signing this object:
| [ david@samwise ] $ cat salt.sls | |
| /etc/salt/minion: | |
| file: | |
| - managed | |
| - owner: root | |
| - group: root | |
| - mode: 444 | |
| - source: salt://salt/files/salt-minion.config | |
| - template: jinja | |
| - context: { |
| [ david@samwise ] $ cat salt.sls | |
| /etc/salt/minion: | |
| file: | |
| - managed | |
| - owner: root | |
| - group: root | |
| - mode: 444 | |
| - source: salt://salt/files/salt-minion.config | |
| - template: jinja | |
| - context: { |
I hereby claim:
To claim this, I am signing this object:
| # case class Stuff(name: String, value: String) | |
| # Set[Stuff] | |
| [{"name": "a", "value": "1"}, {"name": "123", "value": "something"}, {"name": "$#!@", "value": "other"}] | |
| # What if the key constructors are inferred? | |
| # How do you create a Set[Stuff]? | |
| {"a": "1", "123": "something", "$#!@": "other"} | |
| # this is relatively easy to do via an intermediate representation | |
| # Map[String, String] -> Set[Stuff] |
| def merge[A](t: (List[A], List[A]))(implicit p: (A, A) => Boolean): List[A] = { | |
| t match { | |
| case (as, Nil) => as | |
| case (Nil, bs) => bs | |
| case (a :: as, b :: bs) => if (p(a, b)) a :: merge((as, t._2)) | |
| else b :: merge((t._1, bs)) | |
| } | |
| } | |
| def split[A](s: List[A]): (List[A], List[A]) = |
| import argonaut._ | |
| import Argonaut._ | |
| case class Session0(request: Int, data: Int) extends Session[Int, Int] | |
| case class Session1(request: Int, data: String) extends Session[Int, String] | |
| case class Session2(request: Int, data: Session0) extends Session[Int, Session0] | |
| implicit def Session0CodecJson: CodecJson[Session0] = | |
| casecodec2(Session0.apply, Session0.unapply)("request", "data") | |
| implicit def Session1CodecJson: CodecJson[Session1] = |
| package com.twitter.zipkin.collector | |
| import com.twitter.conversions.time._ | |
| import com.twitter.finagle.stats.InMemoryStatsReceiver | |
| import com.twitter.util.{Await, Future, FuturePool} | |
| import java.util.concurrent.CountDownLatch | |
| import org.scalatest._ | |
| /** | |
| * Tests the BlockingItemQueue to make sure that it can store and consume elements even when adding |
| import algebra._, std.int._ | |
| import cats._, free._, Free._ | |
| trait Expr[A] | |
| case class Const[A](term: A) extends Expr[A] | |
| case class Add[A](e1: Expr[A], e2: Expr[A])(implicit val r: Ring[A]) extends Expr[A] | |
| case class Sub[A](e1: Expr[A], e2: Expr[A])(implicit val r: Ring[A]) extends Expr[A] | |
| case class Mul[A](e1: Expr[A], e2: Expr[A])(implicit val r: Ring[A]) extends Expr[A] | |
| type Exp[A] = FreeC[Expr, A] |
| package com.lookout.borderpatrol.example | |
| import java.net.InetSocketAddress | |
| import java.nio.ByteBuffer | |
| import com.twitter.finagle.stats.{Counter, Gauge, Stat, StatsReceiver} | |
| import java.nio.channels.DatagramChannel | |
| import com.twitter.io.Buf |
| val a = Some(1) | |
| val b = Some(2) | |
| val c = Some(3) | |
| for { | |
| x <- a | |
| y <- b | |
| z <- c | |
| } yield x + y + z // Some(6) |