save_and_open_page
have_button(locator)| /* Read this comment first: https://gist.github.com/tonious/1377667#gistcomment-2277101 | |
| * 2017-12-05 | |
| * | |
| * -- T. | |
| */ | |
| #define _XOPEN_SOURCE 500 /* Enable certain library functions (strdup) on linux. See feature_test_macros(7) */ | |
| #include <stdlib.h> | |
| #include <stdio.h> | 
| /* | |
| * Scaffolding | |
| * Basic and global styles for generating a grid system, structural layout, and page templates | |
| * ------------------------------------------------------------------------------------------- */ | |
| .container | |
| Sets a width of 940px which also centres the content (clears floated elements before/after) | |
| .container-fluid | |
| Sets a minimum width of 940px (clears floated elements before/after) | 
| case class Tree[A](root: A, forest: List[Tree[A]]) { | |
| def map[B](f: A => B): Tree[B] = | |
| coflatMap(t => f(t.copoint)) | |
| // categorical dual to canonical "flatMap" | |
| def coflatMap[B](f: Tree[A] => B): Tree[B] = { | |
| import Tree.unfoldTree | |
| unfoldTree(this, (a: Tree[A]) => (f(a), a.forest)) | |
| } | 
| const daggy = require('daggy'); | |
| const {foldMap} = require('pointfree-fantasy') | |
| const {concat, toUpper, prop, identity, range, compose} = require('ramda'); | |
| // Contravariant functors usually have this shape F(a -> ConcreteType). | |
| // In other words, some type holding a function which is parametric on its input, but not output. | |
| // They don't always have that shape, but it's a good intuition | |
| // Covariant functors are what we're used to, which are parametric in their output | |
| //================================================================ |