Skip to content

Instantly share code, notes, and snippets.

package hellodotty
import java.util.concurrent.LinkedTransferQueue
import scala.collection._
import scala.concurrent.ExecutionContext
import scala.reflect.ClassTag
object Actors:
trait Channel[A]:

Keybase proof

I hereby claim:

  • I am weihsiu on github.
  • I am weihsiu (https://keybase.io/weihsiu) on keybase.
  • I have a public key ASB6GjLt6f3b4py5zOvdVa4qaBLoBjdXeSCxHNPXrsS5HAo

To claim this, I am signing this object:

package ngrams
import java.io.{ BufferedReader, FileReader }
import scala.collection.mutable
object NGrams2 extends App {
val start = System.currentTimeMillis
// download from https://github.com/codygman/faster-command-line-tools-with-haskell/raw/master/ngrams.tsv.tgz
val br = new BufferedReader(new FileReader("ngrams.tsv"))
val kvs = mutable.Map.empty[String, Int]
@weihsiu
weihsiu / GuessTheNumber.scala
Created April 11, 2017 17:05
Example of using Eff monad
package catssandbox
import aiyou._
import aiyou.implicits._
import cats._
import cats.data._
import org.atnos.eff._
import org.atnos.eff.all._
import org.atnos.eff.syntax.all._
import IOEffect._
package matryoshkasandbox
import matryoshka._
import matryoshka.data._
import matryoshka.implicits._
import scalaz.Functor
object Exprs extends App {
sealed trait Expr[A]
@weihsiu
weihsiu / gist:53c0e846a23156060272
Created October 18, 2014 04:28
Q10018: Reverse and Add
#include <stdio.h>
// recursive function, "a" is the accumulator
int _reverse(int n, int a) {
if (n < 10)
return n + a;
else
return _reverse(n / 10, (a + (n % 10)) * 10);
}
<link rel="import" href="../core-scaffold/core-scaffold.html">
<link rel="import" href="../core-header-panel/core-header-panel.html">
<link rel="import" href="../core-menu/core-menu.html">
<link rel="import" href="../core-item/core-item.html">
<link rel="import" href="../core-icon-button/core-icon-button.html">
<link rel="import" href="../core-toolbar/core-toolbar.html">
<link rel="import" href="../core-field/core-field.html">
<link rel="import" href="../core-icon/core-icon.html">
<link rel="import" href="../core-input/core-input.html">
<link rel="import" href="../core-icons/core-icons.html">
@weihsiu
weihsiu / interpreter.scala
Created March 11, 2012 03:27 — forked from chrislewis/interpreter.scala
quick interpreter for nescala
package necsala.embedded
import scala.tools.nsc.interpreter.AbstractFileClassLoader
import scala.tools.nsc.{Global, Settings}
import scala.tools.nsc.util.BatchSourceFile
import scala.tools.nsc.io.{AbstractFile, VirtualDirectory}
import java.io.File
import java.util.jar.JarFile
import java.net.URLClassLoader
@weihsiu
weihsiu / cake_pattern_di.scala
Created November 19, 2011 17:43 — forked from HarryHuang/cake_pattern_di.scala
Scala Dependency Injection: an improved cake pattern
//harry huang [[email protected]]
//
//After reading the original post [http://jboner.github.com/2008/10/06/real-world-scala-dependency-injection-di.html, ]
//the original cake pattern seems quite verbose for me, and it is quite invasive, so I spent a bit time
//and come up with an improved version of cake pattern, which I call it a "Auto Cake DI". It is working
//well with any POST(plain old scala trait)/POSO(plain old scala object) which means that anything can be
//injected without modification or introducing new traits.
/*---------inject trait---------*/
trait Inject[+T] { def inject: T }
// ==UserScript==
// @name Twitter Translate
// @namespace http://www.netgents.com/twitter-translate
// @description Translate tweets in a foreign language to English
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js
// @include http://twitter.com/*
// ==/UserScript==
$(document).ready(function() {
function addTranslate() {