Skip to content

Instantly share code, notes, and snippets.

💭
still doing homework....

josh bowles jbowles

💭
still doing homework....
Block or report user

Report or block jbowles

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@jbowles
jbowles / easy_token.go
Last active Dec 26, 2015
Easy out of the box natural language tokenizer using Go standard library
View easy_token.go
package main
import (
"fmt"
"strings"
"unicode"
)
func main() {
@jbowles
jbowles / DefRecord.clj
Created Oct 16, 2013
quick example of defrecord
View DefRecord.clj
;; record Record
(defrecord User [fname lname address])
;; ActiveRecord generally (Object.Model), instead namespace.Record
(defrecord Address [street city state zip])
(defrecord Foo [a b c])
(class Foo) ;java.lang.Class
;; Create an instance of the User and Address records
(def stu (User. "FirstName" "LastName"
(Address. "300 N Street"
@jbowles
jbowles / gocql_cassandra_example.go
Last active Dec 24, 2015
Cassandra and gocql quick start
View gocql_cassandra_example.go
/*
* Assuming a schema similar to the Cassandra wiki quick start (http://wiki.apache.org/cassandra/GettingStarted):
* CREATE TABLE mykeyspace.users (
* user_id int PRIMARY KEY,
* fname text,
* lname text,
* user_id int
* )
*
* RETURNs THIS:
@jbowles
jbowles / hello_function.go
Last active Dec 23, 2015
Playing with function passing in golang
View hello_function.go
package main
import "fmt"
type HelloList struct {
people []string
}
func NewHelloList(names []string) *HelloList {
return &HelloList{people: names}
View letitfail.go
package main
import (
"bufio"
"fmt"
"os"
"time"
)
const numWorkers = 3
@jbowles
jbowles / simple_transport_example.go
Created Jul 27, 2013
simple web crawler using simple_transport
View simple_transport_example.go
package main
import (
"fmt"
"net/http"
"time"
"io/ioutil"
"github.com/pkulak/simpletransport/simpletransport"
)
var lotso_urls = []string{
@jbowles
jbowles / lev_part_four.go
Created Jun 29, 2013
Part four of Levenshtein Distance
View lev_part_four.go
package main
import "fmt"
// PART FOUR: in which we get the min value for delete, insert, substitute and set value in Vector, return significant Vector value.
func MinInt(a ...int) int {
min := int(^uint(0) >> 1)
for _, i := range a {
if i < min {
min = i
@jbowles
jbowles / lev_part_three.go
Created Jun 29, 2013
Part three of Levenshtein distance
View lev_part_three.go
package main
import "fmt"
// PART THREE: if characters are not the same, we step through a comparison against each character to
//// determine DELETION, INSERTION, SUBSTITUTION and get the minimum of the three values.
func MinInt(a ...int) int {
min := int(^uint(0) >> 1)
for _, i := range a {
if i < min {
@jbowles
jbowles / lev_part_one.go
Last active Dec 19, 2015
Part one of Levenshtein distance
View lev_part_one.go
package main
import "fmt"
// http://en.wikipedia.org/wiki/Levenshtein_distance
// FIRST PART: define vector/cell for the dynamic programming table based on string lengths
func PartOneLevenshtein(s1, s2 string) {
m := len(s1)
n := len(s2)
@jbowles
jbowles / lev_part_two.go
Last active Dec 19, 2015
Part two of Levenshtein Distance
View lev_part_two.go
package main
import "fmt"
// PART TWO: step through each string character and vector/cell of dynamic programming table to determine difference.
//// This handles the case where both characters are an exact match, and only the "no-change" condition is used.
func LevenshteinTwo(s1, s2 string) {
m := len(s1)
n := len(s2)
width := n - 1
You can’t perform that action at this time.