CREATE (:Value {value_ref: 42})
CREATE (:Value {value_ref: 1789})
CREATE (:Function)
MATCH (f:Function) WHERE id(f) = 33 SET f.function_name = "inc"
#!/usr/env/bin bash | |
# vim: set ft=bash | |
ROOT=$PWD | |
read -r -d '' ADJECTIVES <<'EOF' | |
agreeable | |
brave | |
calm |
let | |
# Use pinned packages | |
_nixpkgs = import <nixpkgs> {}; | |
nixpkgs = _nixpkgs.fetchFromGitHub | |
({ | |
owner = "nmattia"; | |
repo = "nixpkgs"; | |
rev = "02359c639193103812f7356564326556cbb41ca4"; | |
sha256= "1rg0czkxqynycw23v0dmk0vd2v17d6v3yr06bg23wqwpm3b5z0nd"; | |
}); |
{-# LANGUAGE DataKinds #-} | |
{-# LANGUAGE FlexibleInstances #-} | |
{-# LANGUAGE GADTs #-} | |
{-# LANGUAGE InstanceSigs #-} | |
{-# LANGUAGE MultiParamTypeClasses #-} | |
{-# LANGUAGE NoMonomorphismRestriction #-} | |
{-# LANGUAGE RankNTypes #-} | |
{-# LANGUAGE RebindableSyntax #-} | |
{-# LANGUAGE ScopedTypeVariables #-} | |
{-# LANGUAGE TupleSections #-} |
# Store the nix-created `dist` in `localSrc/.nix-cache` after build (whether | |
# successful or not) and re-injects it for subsequent builds. | |
# | |
# `./mask` should contain a haskell project with an `out.nix` file. That file | |
# should describe a typical cabal derivation with the extra field: | |
# | |
# preUnpack = '' | |
# localSrc=${toString ./.} | |
# ''; | |
# |
{anyPkgs ? import <nixpkgs> { }}: | |
let | |
pkgs = import (anyPkgs.fetchFromGitHub { | |
owner = "NixOS"; | |
repo = "nixpkgs"; | |
rev = "deec3c1dae62e8345451cd8c4ad41134ab95e88d"; | |
sha256 = "1l951xzklxfi2c161mcrps9dfsq76sj8fgq8d60y093bry66d3yc"; | |
}) {}; | |
ghc = pkgs.haskell.compiler.ghc7103; | |
# tweak haskellSrc2nix to disable (failing) tests |
#!/usr/bin/env bash | |
set -e | |
the_pattern=$1 | |
# We need to export because xargs runs in a subshell | |
export the_file=$2 | |
if [ -z "${the_pattern}" ]; then | |
echo pattern missing |
CREATE (:Value {value_ref: 42})
CREATE (:Value {value_ref: 1789})
CREATE (:Function)
MATCH (f:Function) WHERE id(f) = 33 SET f.function_name = "inc"
{-# LANGUAGE FlexibleContexts #-} | |
{-# LANGUAGE ConstraintKinds #-} | |
{-# LANGUAGE ScopedTypeVariables #-} | |
{-# LANGUAGE TypeApplications #-} | |
{-# LANGUAGE AllowAmbiguousTypes #-} | |
{-# LANGUAGE RankNTypes #-} | |
{-# LANGUAGE FlexibleInstances #-} | |
{-# LANGUAGE GADTs #-} | |
{-# LANGUAGE MultiParamTypeClasses #-} | |
{-# LANGUAGE TypeInType #-} |
integer/serialise/small positive -14% | |
integer/serialise/small negative -10% | |
integer/serialise/large positive -10% | |
integer/serialise/large negative -8% | |
integer/deserialise/small positive -62% | |
integer/deserialise/small negative -61% | |
integer/deserialise/large positive -27% | |
integer/deserialise/large negative -33% | |
time/serialise UTCTime -18% | |
time/deserialise UTCTime -21% |
#!/usr/bin/env stack | |
-- stack --install-ghc runghc --package cassava --package vector | |
{-| | |
Compare two criterion outputs. Results are displayed in percent. Takes two | |
filepaths: original csv and new csv. | |
To generate csvs: | |
stack bench my-project:my-bench --benchmark-arguments "--csv out.csv" |