Skip to content

Instantly share code, notes, and snippets.

Nicolas Pouillard np

Block or report user

Report or block np

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
@np
np / testpipeline.hs
Created Feb 15, 2018
A pipeline example using MonadJob
View testpipeline.hs
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
import Data.Aeson
type URL = String
newtype JobServerURL i o = JobServerURL URL
class Monad m => MonadJob m where
callJob :: (ToJSON i, FromJSON o) => JobServerURL i o -> i -> m o
@np
np / test.hs
Created Feb 15, 2018
Cleaning Async resources upon cancel
View test.hs
{-# LANGUAGE ScopedTypeVariables #-}
import Control.Concurrent
import Control.Concurrent.Async
import Control.Exception
main :: IO ()
main = do
let f = 1000000
v <- newMVar ()
let debug = withMVar v . const . putStrLn
@np
np / gist:cd5f005a4e802af1d0973b7899244210
Created Oct 26, 2017
Verifying that "np.id" is my Blockstack ID. https://onename.com/np
View gist:cd5f005a4e802af1d0973b7899244210
Verifying that "np.id" is my Blockstack ID. https://onename.com/np
@np
np / RTTI.hs
Created Jun 12, 2017 — forked from edsko/RTTI.hs
Run-time type information in Haskell
View RTTI.hs
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE EmptyCase #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE KindSignatures #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE ScopedTypeVariables #-}
View 21log.json
[
{"timestamp": "2016-06-10 08:50:00 UTC+00:00", "amount": "+100 satoshis", "to": "npouillard@21.co",
"desc": "You submitted work through the 21 Bitcoin Computer."},
{"timestamp": "2016-06-10 08:50:00 UTC+00:00", "amount": "+5 satoshis", "to": "npouillard@21.co", "from": "21dotco@21.co",
"desc": "You sold 'http://10.244.165.172:6002/?uri=21.co' to 21dotco"}
]
View timestamps
c691e1b19a5e46d63eeaa37a455b6e74de9890ee
d6b02c6055b6bd4253ced4b0ad91070481032c76
View onename verification
Verifying I am +np on my passcard. https://onename.com/np
@np
np / .emacs
Created May 11, 2015
.emacs for agda (crypto-agda include dirs)
View .emacs
(setq np-home (concat (getenv "HOME") "/"))
(setq agda-pkg (concat np-home ".agda-pkg/"))
(eval-after-load 'agda2
'(progn
(set-default 'agda2-include-dirs
(list
(concat agda-pkg "github/agda/agda-stdlib/src")
(concat agda-pkg "github/crypto-agda/agda-nplib/lib")
(concat agda-pkg "github/crypto-agda/explore/lib")
(concat agda-pkg "github/crypto-agda/protocols")
View gist:2e48ef7d8ce09eabf3fb
Verifying that +npouillard is my Bitcoin username. You can send me #bitcoin here: https://onename.io/npouillard
@np
np / keybase.md
Created Aug 27, 2014
Proving my github identity on keybase.io
View keybase.md

Keybase proof

I hereby claim:

  • I am np on github.
  • I am np (https://keybase.io/np) on keybase.
  • I have a public key whose fingerprint is 326B FF50 7855 62A4 AC88 55CF 8826 FA56 57EF 6CA0

To claim this, I am signing this object:

You can’t perform that action at this time.