Skip to content

Instantly share code, notes, and snippets.

@rylev
rylev / gist:b40ecce85750bd528c0d
Created August 27, 2014 10:15
Scala If-Bock Styles
if (resp.isSuccess)
Future{ NoContent }
else passthrough(resp)
if (resp.isSuccess) {
Future{ NoContent }
} else {
passthrough(resp)
}
enum Maybe<T> {
case Just(T)
case None
func maybe(def: T, fn: (T) -> (T)) -> T {
switch self {
case let Just(x): return fn(x)
case None: return def
}
}
### Keybase proof
I hereby claim:
* I am rylev on github.
* I am ryanlevick (https://keybase.io/ryanlevick) on keybase.
* I have a public key whose fingerprint is F379 58BE 0E1A ECE1 D1DB A8E5 243E 54BE D142 3716
To claim this, I am signing this object:
import Database.Redis
import Control.Monad.IO.Class
import Data.ByteString.Char8
main :: IO ()
main = do
conn <- connect defaultConnectInfo
runRedis conn $ do
set (pack "hello") (pack "hello")
hello <- get $ pack "hello"
@rylev
rylev / rgb.ex
Created April 8, 2014 21:20
Small Module For Parsing and Encoding RGB Values
defmodule RGB do
import Enum, only: [map: 2, join: 1, filter: 2, chunk: 2, count: 1]
def encode(rgb) when is_list rgb do
hex = rgb |>
map(&(integer_to_list &1, 16)) |>
map(fn [x] -> [x, x]; x -> x end) |>
map(&String.from_char_list!/1) |>
join
"#" <> hex
@rylev
rylev / stark_params.rb
Created March 11, 2014 14:49
Strong Parameters Wrapper
def TasksController
def index
Task.where(index_params)
end
def create
Task.create!(create_params)
end
private
@rylev
rylev / calc.hs
Created February 24, 2014 11:53
Simple and Incredibly Naive Calculator
module Main where
import System.Environment
import Text.ParserCombinators.Parsec
import Control.Monad
import Data.Char
main :: IO ()
main = do putStrLn "What would you like to calculate:"
input <- getLine
putStrLn $ readExpr input