Skip to content

Instantly share code, notes, and snippets.

// Broken version
use std::convert::TryInto;
impl Solution {
pub fn find_smallest_interval<T, F>(elements : &Vec<T>, predicate : F)
-> Option<(usize, usize)>
where F : Fn(&T, &T) -> bool {
let mut minLength = elements.len();
let mut result = None;
@JulianBirch
JulianBirch / delta.rb
Created January 13, 2011 17:42
Dusty.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 / Day4.hs
Last active December 28, 2019 23:58
Solving Advent of Code 2019 Day4 using recursion schemes and the free list monad
{-# LANGUAGE FlexibleContexts, FlexibleInstances, RankNTypes, InstanceSigs, TypeApplications, ScopedTypeVariables, MultiParamTypeClasses #-}
{-# LANGUAGE StandaloneDeriving, DerivingVia, DeriveFunctor, DeriveFoldable, DeriveTraversable #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE TypeFamilies, GADTs #-}
{-# LANGUAGE AllowAmbiguousTypes, UndecidableInstances #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
module Day4 where
import Data.Functor.Foldable(hylo)
Good morning, oregenes and guardians
Stills and mother-losing grits
This a ten-ringer named 'Baster coming
And he's here to end your world,
Start a tale that will soon be classic
About a woman you already no
No four-ringer she but rather the saviour of your species
Geo Control (Are you ready?)
Our story begins in the fulcrum
module Day19 where
import Data.Maybe (maybe)
import Data.List (find, findIndex, unfoldr)
import Data.Char (isLetter)
day19text :: IO [[Char]] -- We could use a better data structure, but the code only gets run once
day19text = lines <$> readFile "C:\\Users\\me\\advent\\day19.txt"
isWire :: Char -> Bool
@JulianBirch
JulianBirch / IConsumer.cs
Created June 11, 2010 17:57
Shard Balancer
using System;
namespace ColourCoding.Parallel
{
public interface IConsumer : IDisposable
{
bool Wakeup();
}
public interface IConsumer<TShard> : IConsumer
where TShard : class
Exception in thread "main" java.lang.AbstractMethodError: cljsbuild.compiler.SourcePaths._find_sources(Ljava/lang/Object;)Ljava/lang/Object;, compiling:(/tmp/form-init5931832452504796267.clj:1:73)
at clojure.lang.Compiler.load(Compiler.java:7239)
at clojure.lang.Compiler.loadFile(Compiler.java:7165)
at clojure.main$load_script.invoke(main.clj:275)
at clojure.main$init_opt.invoke(main.clj:280)
at clojure.main$initialize.invoke(main.clj:308)
at clojure.main$null_opt.invoke(main.clj:343)
at clojure.main$main.doInvoke(main.clj:421)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.lang.Var.invoke(Var.java:383)
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
import Control.Monad.IO.Class
import Control.Monad.Trans.Class
import Prelude hiding (log)
--------------------------------------------------------------------------------
-- The API for cloud files.
class Monad m => MonadCloud m where
saveFile :: Path -> Bytes -> m ()
@JulianBirch
JulianBirch / lessc.clj
Created December 24, 2013 21:27
lessc watcher in Clojure
(ns lessc
(:require [pro.juxt.dirwatch :refer (watch-dir)]
[clojure.java.io :refer (file)]
[spyscope.core]
[clojure.core.async :as a]))
(defn run-less []
(println "Running LESS")
(doto
(ProcessBuilder. ["lessc" "resources/bootstrap/assets/mybootstrap.less" "resources/public/s.css"])
@JulianBirch
JulianBirch / X.md
Last active December 24, 2015 20:39

poppea

A couple of macros that do useful, general things.

Usage

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

Leiningen: