Skip to content

Instantly share code, notes, and snippets.

module Untyped.Context where
type Context = [String]
mkContext :: Context
mkContext = []
bindVarName :: Context -> String -> Context
bindVarName ctx x = x : ctx
(defn parse-necronomemoticon
[s]
(let [rdr (BufferedReader. (StringReader. s))
expr (->> (line-seq rdr) (map seq) first)]
(match [expr]
[([\( \; \, \; \)] :seq)] :evil
:else :failure)))
@zerokarmaleft
zerokarmaleft / Monoid.hs
Last active August 29, 2015 14:02 — forked from puffnfresh/Monoid.rs
Semigroups and Monoids
class Semigroup a where
mappend :: a -> a -> a
class Semigroup a => Monoid a where
mempty :: a
mconcat :: [a] -> a
mconcat = foldr mappend mempty
instance Semigroup Int where
(add-hook 'haskell-mode-hook (lambda () (run-with-idle-timer (seconds-to-time 1) t 'ghc-show-type)))
{-# LANGUAGE OverloadedStrings #-}
module Parsing.Examples where
import Data.Attoparsec.Text
import Control.Applicative
something :: Parser (String, Maybe String)
something =
do a <- manyTill anyChar (string "--") <|> many anyChar
(ns dsls.core)
(def x 4)
(comment
"Delaying evaluation with Quote"
x
'x
@zerokarmaleft
zerokarmaleft / http-kit.txt
Created November 20, 2013 20:36
silly latency comparison between ring adapters from http-kit and Jetty
∴ > ab -n 1000000 -c 1000 -p /dev/null http://localhost:3000/debug-count
This is ApacheBench, Version 2.3 <$Revision: 1430300 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking localhost (be patient)
Completed 100000 requests
Completed 200000 requests
Completed 300000 requests
Completed 400000 requests
@zerokarmaleft
zerokarmaleft / ping-pong.cljs
Last active December 20, 2015 06:09
core.async example: Ping Pong
(defn player
[msg table]
(go (loop []
(let [ball (<! table)] ;; the ball was hit to this player
(.log js/console msg)
(<! (timeout 100)) ;; wait 100msecs
(>! table (update-in ball [:hits] inc)) ;; hit the ball back
(recur)))))
(defn game
@zerokarmaleft
zerokarmaleft / actual.sql
Last active December 17, 2015 04:59
Sequel::DatabaseError: TinyTds::Error: Incorrect syntax near the keyword 'AS'. from /home/echo/.rvm/gems/ruby-2.0.0-p0/gems/sequel-3.47.0/lib/sequel/adapters/tinytds.rb:234:in `fields'
SELECT ([SUBJECTID], [NUM_BDI_TIMEPOINTS])
FROM [SUBJECTIDENTIFIERS]
INNER JOIN (SELECT [SUBJECTID], count([BDI_TP]) AS [NUM_BDI_TIMEPOINTS]
FROM [BDIS_OUTPUT]
WHERE ((([BDI_TP] COLLATE Latin1_General_CS_AS)
LIKE
(N'Y%' COLLATE Latin1_General_CS_AS) ESCAPE N'\\'))
GROUP BY [SUBJECTID]) AS [T1]
ON ([T1].[SUBJECTID] = [SUBJECTIDENTIFIERS].[SUBJECTID])
@zerokarmaleft
zerokarmaleft / stm.rb
Last active December 15, 2015 06:29
Adventures in Functional Ruby, Part 2
require 'java'
require 'jbundler'
require 'stunted'
java_import 'clojure.lang.Ref'
java_import 'clojure.lang.LockingTransaction'
java_import 'java.util.concurrent.Executors'
java_import 'java.util.concurrent.Callable'
module CoreBridge