I hereby claim:
- I am endziu on github.
- I am endziu (https://keybase.io/endziu) on keybase.
- I have a public key whose fingerprint is C14B 3B64 58BA 14DC 9036 7B0E 06BB FAE5 7D43 76F3
To claim this, I am signing this object:
import { map, range, reduce, addIndex, identity, ompose, pipe, any, join, contains, update, equals, prop, juxt, repeat, reverse } from 'ramda'; | |
const mapIdx = addIndex(map); | |
const fillGrid = arr => arr.concat(map(() => repeat(' ', arr[0].length), arr)); | |
const shiftGrid = mapIdx((el,i,arr) => repeat(' ', arr.length - i).concat(el).concat(repeat(' ', i))); | |
const initBoard = size => map(() => Array(size).fill(' '), range(0,size)); | |
const updateBoard = move => grid => update(move.x, update(move.y, move.val, grid[move.x]), grid); | |
const performMoves = moves => reduce(compose, identity, map(updateBoard, moves)); | |
const xWins = compose(contains('XXX'), join('')); | |
const oWins = compose(contains('OOO'), join('')); | |
const getColumns = grid => mapIdx((el, i) => map(prop(i), grid), grid); |
I hereby claim:
To claim this, I am signing this object: