Skip to content

Instantly share code, notes, and snippets.

View syzer's full-sized avatar
🐕
Woof! Woof!

syzer syzer

🐕
Woof! Woof!
View GitHub Profile
function train(fileName, splitter) {
var parts = fs.readFileSync(fileName).toString().split(splitter).map(function (el) {
return _.prepare(el).split(' ');
});
return mergeBig(parts);
}
// simples would be return dataBase[word];
// string => array
function predict(word) {
var needle = dataBase[word];
if (!needle) {
return [];
}
var total = _.reduce(needle, function (acc, el) {
var dataBase; // cache
function mergeBig(texts) {
texts = texts || text;
return q.all(texts.map(function (el) {
return task(el)
.reduce(bigramArray)
.run()
})).then(function reducer(data) {
@syzer
syzer / gist:ebaf3ddec5c1b91f9e16
Created April 8, 2015 18:26
mergeSmallSample
function mergeSmall() {
var task1 = task(ch01)
.reduce(bigramArray)
.run();
var task2 = task(ch02)
.reduce(bigramArray)
.run();
return q.all([task1, task2]).then(function (data) {
function bigramText(arr) {
return arr.reduce(bigramArray);
}
function bigramArray(acc, word, i, arr) {
if (1 === i) {
acc = {last: acc, out: {}};
}
var out = acc.out;
var last = acc.last;
@syzer
syzer / gist:207e6e9e1bbb1412e2e1
Created April 8, 2015 16:02
dracula loading text
var jsSpark = require('js-spark')({workers: 4});
var task = jsSpark.jsSpark;
var q = jsSpark.q;
var _ = require('lodash');
var lib = require('./lib')(_);
_.mixin(lib);
var fs = require('fs');
var DRACULA = './data/text/dracula/';
/**
* Created by syzer on 4/8/2015.
*/
module.exports = function (_) {
'use strict';
return {
objectMerger: objectMerger,
mergeObjectsInArr: mergeObjectsInArr,
objToSortedArr: objToSortedArr,
@syzer
syzer / gist:a5ebde3031d76744397e
Last active August 29, 2015 14:11
Decorators are awesome
/**
* Created by syzer on 12/19/2014.
* ex shows how to decouple constant error checking from function/class body
* AKA TypeScript AKA WarnScript :)
*/
var _ = require('lodash');
function doStuffNumberPlusOneTimes(number, fun) {
"use strict";
function makeSandwich() {
var preparedFood = 'Here is a sandwich with: ';
return {
addLattice: function () {
// Lattice logic here
preparedFood += 'Lattice';
return this;
},
addBacon: function () {
@syzer
syzer / gist:e7a69e8a31205766a7c0
Created November 3, 2014 16:52
FP workshop gist
// task #function composiotion
var articles = [
{
title: 'Why OO Sucks by Joe Armstrong',
url: 'http://www.bluetail.com/~joe/vol1/v1_oo.html',
author: {
name: 'Joe Armstrong',
email: 'empty@email.com'
}
},