The introduction to Reactive Programming you've been missing:
https://gist.github.com/staltz/868e7e9bc2a7b8c1f754
2 minute introduction to Rx:
https://medium.com/@andrestaltz/2-minute-introduction-to-rx-24c8ca793877#.si76lvua0
// Use Gists to store code you would like to remember later on | |
console.log(window); // log the "window" object to the console |
// ---------- Default Binding --------- | |
// | |
function aFoo(){ | |
console.log(this.aBar); // this is undefinied or global unless in strict mode | |
} | |
var aBar = "Default bar1"; | |
aFoo(); // default binding rule | |
var a_o2 = {aBar: "Default bar2", aFoo: aFoo}; | |
var a_o3 = {aBar: "Default bar3", aFoo: aFoo}; | |
a_o2.aFoo(); a_o2.aFoo(); // implicit binding rule |
import Cycle from '@cycle/core'; // the core Cycle | |
import {h, makeDOMDriver} from '@cycle/dom'; // this is a side effect driver | |
import Rx from 'rx'; // RxJS | |
function main({DOM}) { // our Cycle app, it's simple a function | |
const DEFAULT_VALUE = 50; // a default config | |
// we select and watch our slider input from the DOM which is comes in via our function definition | |
// these avents are turned into Rx streams | |
let changeValue$ = DOM.select('#slider').events('input') |
The introduction to Reactive Programming you've been missing:
https://gist.github.com/staltz/868e7e9bc2a7b8c1f754
2 minute introduction to Rx:
https://medium.com/@andrestaltz/2-minute-introduction-to-rx-24c8ca793877#.si76lvua0
made with esnextbin
,d
88
88,dPYba,,adPYba, ,adPPYba, ,adPPYba, MM88MMM
88P' "88" "8a a8" "8a I8[ "" 88
88 88 88 8b d8 "Y8ba, 88 88 88 88 "8a, ,a8" aa ]8I 88, 88 88 88
"YbbdP"' `"YbbdP"' "Y888
o o o-o o-o o-O-o
function map (toSomething, obj) { | |
const newObj = {} | |
const keys = Object.keys(obj) | |
for (let i = 0; i < keys.length; ++i) { | |
const name = keys[i] | |
newObject[name] = toSomething(obj[name]) | |
} | |
return newObj | |
} |
module NestedListExercise where | |
import Test.QuickCheck | |
import Test.QuickCheck.Monadic | |
------------------------------------------------------------------------------- | |
-- ** Implemetation | |
------------------------------------------------------------------------------- | |
-- I wanted to do this little test using Haskell due to the type safety and how | |
-- we can randomly generate different nested lists to tests against our implementation. |
;; -*- mode: emacs-lisp; lexical-binding: t -*- | |
;; This file is loaded by Spacemacs at startup. | |
;; It must be stored in your home directory. | |
(defun dotspacemacs/layers () | |
"Layer configuration: | |
This function should only modify configuration layer settings." | |
(setq-default | |
;; Base distribution to use. This is a layer contained in the directory | |
;; `+distribution'. For now available distributions are `spacemacs-base' |
;; -*- mode: emacs-lisp; lexical-binding: t -*- | |
;; This file is loaded by Spacemacs at startup. | |
;; It must be stored in your home directory. | |
(defun dotspacemacs/layers () | |
"Layer configuration: | |
This function should only modify configuration layer settings." | |
(setq-default | |
;; Base distribution to use. This is a layer contained in the directory | |
;; `+distribution'. For now available distributions are `spacemacs-base' |