--- rough notes ---
Gary introduces an side project that Gary has been working on part-time for an little over an year, including ...
#logback.classic pattern: %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n | |
#logback.classic pattern: %-5p [%d{ISO8601,Europe/London}] %c: %m | |
%ex | |
#logback.classic pattern: %-5p [%d{ISO8601,UTC}] %c: %m | |
%ex | |
DEBUG [2012-05-25 23:57:42,351] org.eclipse.jetty.util.log: Logging to Logger[org.eclipse.jetty.util.log] via org.eclipse.jetty.util.log.Slf4jLog | |
DEBUG [2012-05-25 23:57:42,381] org.hibernate.validator.engine.resolver.DefaultTraversableResolver: Cannot find javax.persistence.Persistence on classpath. Assuming non JPA 2 environment. All properties will per default be traversable. | |
DEBUG [2012-05-25 23:57:42,382] org.hibernate.validator.xml.ValidationXmlParser: Trying to load META-INF/validation.xml for XML based Validator configuration. | |
DEBUG [2012-05-25 23:57:42,382] org.hibernate.validator.xml.ValidationXmlParser: No META-INF/validation.xml found. Using annotation based configuration only | |
WARN [2012-05-25 23:57:42,446] com.yammer.dropwizard.config.ServerFactory: |
A Controlled Explosion | |
Well designed Rails controller methods follow very similar execution paths. Raptor is an experimental web framework designed to explode the Rails controller, reconstructing it inside the router. | |
This talk is a dive into Raptor's design, eventual goals and a small demonstration of what Raptor looks like today. |
class FuckYouPrivate | |
def initialize(thing) | |
@thing = thing | |
end | |
def method_missing(message, *args, &block) | |
@thing.send(message, *args, &block) | |
end | |
end |
class RubbishController | |
protected | |
def redirect_to(path) | |
puts "redirecting_to #{path}" | |
end | |
def render(renderable) | |
puts "rendering #{renderable}" | |
end | |
def current_user |
{-# LANGUAGE FlexibleInstances #-} | |
{-# LANGUAGE UndecidableInstances #-} | |
import Data.Traversable | |
instance (Traversable t) => (Functor t) |
--- rough notes ---
Gary introduces an side project that Gary has been working on part-time for an little over an year, including ...
require 'thread' | |
class Actor | |
class ActorDied < RuntimeError; end | |
def self.queue | |
@queue ||= Queue.new | |
end | |
def self.push(x) | |
queue.push(x) |
diff --git a/src/Data/RingBuffer/Vector.hs b/src/Data/RingBuffer/Vector.hs | |
index ed37817..4c6f05d 100644 | |
--- a/src/Data/RingBuffer/Vector.hs | |
+++ b/src/Data/RingBuffer/Vector.hs | |
@@ -51,25 +51,34 @@ newRingBuffer size zero = do | |
consumeFrom :: MVector a -> Int -> Barrier -> Consumer a -> IO () | |
consumeFrom (MVector mvec) modm barr (Consumer fn sq) = do | |
- vec <- V.unsafeFreeze mvec | |
- consumeFrom' vec |
set nocompatible | |
filetype off | |
silent! call pathogen#runtime_append_all_bundles() | |
silent! call pathogen#helptags() | |
filetype plugin indent on | |
runtime macros/matchit.vim | |
set hidden | |
set autoread | |
set nobackup |
highlight ExtraWhitespace ctermbg=red guibg=red | |
au ColorScheme * highlight ExtraWhitespace guibg=red | |
au BufEnter * match ExtraWhitespace /\s\+$/ | |
au InsertEnter * match ExtraWhitespace /\s\+\%#\@<!$/ | |
au InsertLeave * match ExtraWhiteSpace /\s\+$/ |