Skip to content

Instantly share code, notes, and snippets.

View 0xYUANTI's full-sized avatar

JJS 0xYUANTI

View GitHub Profile
@0xYUANTI
0xYUANTI / bench.erl
Created February 16, 2011 12:41
disk_log vs file
-module(bench).
-compile(export_all).
%% Luke Gorrie's favourite profiling macro.
-define(TIME(Tag, Expr),
(fun() ->
%% NOTE: timer:tc/4 does an annoying 'catch' so we
%% need to wrap the result in 'ok' to be able to
%% detect an unhandled exception.
{__TIME, __RESULT} =
#!/usr/bin/mawk -f
# long lines
length() > 79
# trailing whitespace
/[ ]+$/
# tabs
/[\t]/
@0xYUANTI
0xYUANTI / cut.clj
Created December 25, 2011 11:28
My first Clojure program
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; Clojure port of Scheme's SRFI-26 ``Curry Upon This'' macro package
;;; (strictly inferior to Clojure's built-in lambda-syntax).
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;_* Declarations =====================================================
(ns cut
(:use clojure.test))
(declare gen slot? rest-slot? eval?)
@0xYUANTI
0xYUANTI / gist:4176424
Created November 30, 2012 15:28
The reftrick: code
-module(reftrick).
-compile(export_all).
%% Luke Gorrie's favourite profiling macro.
-define(TIME(Tag, Expr),
(fun() ->
%% NOTE: timer:tc/4 does an annoying 'catch' so we
%% need to wrap the result in 'ok' to be able to
%% detect an unhandled exception.
{__TIME, __RESULT} =
@0xYUANTI
0xYUANTI / gist:4176431
Created November 30, 2012 15:29
The reftrick: shell dump
Erlang R15B02 (erts-5.9.2) [source] [64-bit] [smp:4:4] [async-threads:0] [hipe] [kernel-poll:false]
Eshell V5.9.2 (abort with ^G)
1> c(reftrick).
{ok,reftrick}
2> spawn(fun() -> reftrick:plain() end).
<0.38.0>
time(reftrick): 3.410ms recv1
time(reftrick): 704.826ms recv2
3> spawn(fun() -> reftrick:plain() end).
@0xYUANTI
0xYUANTI / gist:4176609
Created November 30, 2012 15:57
The reftrick: assembly
{function, recv, 1, 9}.
{label,8}.
{line,[{location,"reftrick.erl",33}]}.
{func_info,{atom,reftrick},{atom,recv},1}.
{label,9}.
{test,is_eq_exact,{f,10},[{x,0},{integer,0}]}.
{move,{atom,ok},{x,0}}.
return.
{label,10}.
{allocate_zero,1,1}.
[info] Starting scala interpreter...
[info]
Welcome to Scala version 2.10.4 (OpenJDK 64-Bit Server VM, Java 1.6.0_32).
Type in expressions to have them evaluated.
Type :help for more information.
scala> def f = 1
def f = 1
f: Int
### Keybase proof
I hereby claim:
* I am cannedprimates on github.
* I am cannedprimates (https://keybase.io/cannedprimates) on keybase.
* I have a public key whose fingerprint is 734D ECBA C500 533A 95AA 32B7 333D C302 DD8D 2180
To claim this, I am signing this object:
// build.sbt
scalaVersion := "2.11.6"
libraryDependencies ++= Seq(
"org.scalaz" %% "scalaz-core" % "7.1.1",
"org.scalaz" %% "scalaz-effect" % "7.1.1",
"org.scalaz" %% "scalaz-concurrent" % "7.1.1",
"org.tpolecat" %% "doobie-core" % "0.2.1",
"org.tpolecat" %% "doobie-contrib-postgresql" % "0.2.1",
/* example from cohttp readme, works with rebuild -pkg cohttp.lwt wtf.native */
open Lwt;
open Cohttp;
open Cohttp_lwt_unix;
let coroutine =
Client.get (Uri.of_string "http://www.reddit.com/") >>= fun (resp, body) => {
let code = resp |> Response.status |> Code.code_of_status;
Printf.printf "Response code: %d\n" code;