Skip to content

Instantly share code, notes, and snippets.

View sleexyz's full-sized avatar

Sean Lee sleexyz

View GitHub Profile
@evincarofautumn
evincarofautumn / InlineDoBind.md
Last active April 20, 2023 21:16
Thoughts on an InlineDoBind extension

Thoughts on an InlineDoBind extension

An expression beginning with a left arrow (<-) inside a do block statement is desugared to a monadic binding. This is syntactically a superset of existing Haskell, including extensions. It admits a clean notation that subsumes existing patterns and comes with few downsides.

Examples

do
  f (<- x) (<- y)
-- ===
@hallettj
hallettj / adt.js
Last active March 21, 2019 12:56
Proposed implementation of GADTs with Javascript and Flow
/*
* `match` is a helper function for writing pattern matches on types that are
* implemented using Scott encoding.
*
* @flow
*/
export function match<A,B>(matcher: A): (match: (matcher: A) => B) => B {
return match => match(matcher)
}
@bishboria
bishboria / springer-free-maths-books.md
Last active May 10, 2025 04:28
Springer made a bunch of books available for free, these were the direct links
@puffnfresh
puffnfresh / extensions.el
Last active May 31, 2018 09:24
Proof General under spacemacs
(defvar coq-pre-extensions
'(
proof-general
))
(defun coq/init-proof-general ()
"Initialize Proof General"
(use-package proof-site
:defer t
:mode ("\\.v\\'" . coq-mode)
@CMCDragonkai
CMCDragonkai / higher_kinded_types_in_rust_and_haskell.md
Last active May 13, 2025 10:19
Rust/Haskell: Higher-Kinded Types (HKT)

Rust/Haskell: Higher-Kinded Types (HKT)

A higher kinded type is a concept that reifies a type constructor as an actual type.

A type constructor can be thought of in these analogies:

  • like a function in the type universe
  • as a type with a "hole" in it
@gilligan
gilligan / Xorg.0.log
Created May 25, 2015 00:26
xorg and nixos configuration files
[ 165.023]
X.Org X Server 1.16.4
Release Date: 2014-12-20
[ 165.023] X Protocol Version 11, Revision 0
[ 165.023] Build Operating System: Linux 3.12.27 x86_64
[ 165.023] Current Operating System: Linux nixoslappy 3.14.34 #1-NixOS SMP Thu Jan 1 00:00:01 UTC 1970 x86_64
[ 165.023] Kernel command line: initrd=\efi\nixos\pnhjgx3v9pkxyhqhjcxh62l2axwnwd3g-initrd-initrd.efi systemConfig=/nix/store/siybfc2y9prrwk6bab8bz8yh0460axwb-nixos-14.12.496.5f7d374 init=/nix/store/siybfc2y9prrwk6bab8bz8yh0460axwb-nixos-14.12.496.5f7d374/init loglevel=4
[ 165.023] Build Date: 01 March 2015 04:27:12AM
[ 165.023]
[ 165.023] Current version of pixman: 0.32.6
@miguel-negrao
miguel-negrao / vivid-0.1.0.3.nix
Created March 30, 2015 11:02
nix file for vivid generated by cabal2nix
{ mkDerivation, base, binary, bytestring, containers, deepseq
, hashable, mtl, network, split, stdenv, stm
}:
mkDerivation {
pname = "vivid";
version = "0.1.0.3";
sha256 = "034kjk2lxfbb4hd8z1axccz9alfkm76mpgw39nisvxngjs6si158";
editedCabalFile = "de2442ab5d53f8044c99cd0489281bf902ef6615028be780e0df937ae60266da";
revision = "0";
buildDepends = [
@miguel-negrao
miguel-negrao / config.nix
Created March 30, 2015 10:58
config.nix for vivid
{
packageOverrides = pkgs : rec {
haskellngPackages = pkgs.haskellngPackages.override {
overrides = self: super: rec {
vividNew = self.callPackage ./haskell/vivid-0.1.0.3.nix {};
};
};
ihaskell-with-packages = pkgs.callPackage ./haskell/ng-wrapper.nix {
@cvrebert
cvrebert / css_regression_testing.md
Last active March 30, 2025 19:49
Survey of screenshot-based CSS testing tools

Currently considering https://github.com/webdriverio/webdrivercss


Core Goals:

  • Can test in up-to-date versions of all major browsers
  • Can test on up-to-date versions of all major OSes
  • Can test in IE9 (because Bootstrap v4 will support IE9+)
  • Don't want to have to setup/maintain our own cluster of VMs running all the necessary OSes (and all the versions of Windows)
  • Workflow for management of reference/baseline/norm screenshots
@paf31
paf31 / 24days.md
Last active August 8, 2023 05:53
24 Days of PureScript

This blog post series has moved here.

You might also be interested in the 2016 version.