Skip to content

Instantly share code, notes, and snippets.

Julian Birch JulianBirch

Block or report user

Report or block JulianBirch

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View yorgey3.hs
{-# OPTIONS_GHC -Wall #-}
module Golf where
import qualified Data.Map.Strict as M
import Data.List as L
import Data.Maybe
skip :: [a] -> Int -> [a]
skip l n = case drop n l of
(x:xs) -> x : skip xs n
@JulianBirch
JulianBirch / markov.hs
Last active Aug 29, 2015
Revised version of Kris Jenkin's Markov Generator
View markov.hs
{-# OPTIONS_GHC -Wall #-}
{-# LANGUAGE RankNTypes #-}
module Main where
-- Lots more imports
import Control.Applicative
import Data.List
import qualified Data.Map as Map
import System.Random
View Yorgey4.hs
{-# OPTIONS_GHC -Wall #-}
import Data.List
fun1 :: [Integer] -> Integer
fun1 [] = 1
fun1 (x:xs)
| even x = (x - 2) * fun1 xs
| otherwise = fun1 xs
View lein.ps1
#requires -version 2
# NB lein -? will give help for the powershell script
# lein help will give command help for Leiningen
Param(
[Parameter(Mandatory=$true, Position = 0, HelpMessage = "The command to pass to Leiningen")]
[string]$command,
[Parameter(HelpMessage = "The version of Clojure to run. Needs to be compatible with the version of Leiningen or strange things can happen.")]
[string]$clojureVersion = "1.1.0", # e.g. 1.2.0-master-20100430.160229-59
View RSpecRunner.cs
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text;
using IronRuby.Builtins;
using IronRuby.Runtime;
using Microsoft.Scripting.Hosting;
View delta.rb
### This assumes that appsettings configurationpath was equal to delta.rb
ext "fixConnection" do
senderCompId "IOM"
targetCompId "JEFNET"
heartbeatInterval 60
reconnectInterval 1
protocolVersion "FIX.4.2"
shouldCheckLatency false
isInitiator true
@JulianBirch
JulianBirch / redirect.clj
Created Dec 14, 2011
Dealing with redirects across schemes in Ring
View redirect.clj
[ring.util.response :as res]))
; This is the code I've currently got doing redirects between http and https
(def port-override {})
(def standard-ports {:http 80 :https 443})
(defn set-override [scheme port]
(if-not (= port (standard-ports scheme))
@JulianBirch
JulianBirch / Acrostic.txt
Created Aug 22, 2012
Scrum described without using the word stupid.
View Acrostic.txt
Scrum is a best-practice software development methodology.
There are many advantages to using it in an enterprise development environment.
Unlike other methodologies, such as extreme programming, there is no need to change coding practices.
Project Managers will therefore find it easy to adopt and incorporate into their existing workflows.
Iterations with strict time-limited sprints greatly improve productivity.
Developer participation is enforced through the use of constant stand-up meetings.
@JulianBirch
JulianBirch / sprang.clj
Created Sep 23, 2013
Recursively dependent types
View sprang.clj
(ns sprang
(:require [clojure.core.typed :refer :all]))
(declare-protocols IValidator)
(ann-record ValidationError [validator :- IValidator
value :- Any])
(defrecord ValidationError [validator value])
; TODO: Figure out how to make occurrence typing type :errors
(ann-record ValidationResult
View X.md

poppea

A couple of macros that do useful, general things.

Usage

The easiest way to use Poppea in your project is via Clojars.

Leiningen:

You can’t perform that action at this time.