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
View ratcliff_obershelp_with_token_sort.rs
/*
RatcliffObserhelp distance
SEE tokenizer
[NIST Ratcliff/Obershelp pattern recognition](https://xlinux.nist.gov/dads/HTML/ratcliffObershelp.html):
Compute the similarity of two strings as the number of matching characters divided by the total number of characters in the two strings.
Matching characters are those in the longest common subsequence plus, recursively, matching characters in the unmatched region on either side of the longest common subsequence.
*/
View working_luhn_rust.rs
//Luhn trait
pub trait Luhn {
fn luhn(self) -> bool;
}
impl Luhn for String {
fn luhn(self) -> bool {
let s = remove_whitespace(&self);
let d = Digits::digits(s);
if d.len() < 16 {
return false;
@jbowles
jbowles / luhn_4_styles_julia.jl
Last active Jul 5, 2018
luhn in julia, 4 styles
View luhn_4_styles_julia.jl
using BenchmarkTools
dbl2nd(da::Array{Int64,1}) = for i in 1:2:(length(da))
da[i] *= 2
end
mod9(da::Array{Int64,1}) = for i in 1:2:length(da)
if da[i] > 9
da[i] -= 9
end
@jbowles
jbowles / cz_ue_world_data_enrollment.fsx
Last active Dec 10, 2017
From the fslabbasic template get world bank data (updated version of the fslab.org getting started example)
View cz_ue_world_data_enrollment.fsx
#load "../packages/FsLab/FsLab.fsx"
(* My Environment
visual studio code 2017 Version 1.18.1
mono --version ‹2.4.1›
Mono JIT compiler version 5.4.1.7 (2017-06/e66d9abbb27 Wed Oct 25 12:10:41 EDT 2017)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
TLS: normal
SIGSEGV: altstack
@jbowles
jbowles / fibonacci_two_ways.ex
Created Dec 3, 2014
tail call optimizations through pattern matching in elixir
View fibonacci_two_ways.ex
defmodule Mather do
def numbers(x,y) do
f = fn
x,y when x>0 -> x + y
x,y -> x*y
end
IO.puts f.(x,y)
end
# A tail call optimized fibonacci.
View macro_and_function.rs
// Using the Unicode Names package: http://www.rust-ci.org/huonw/unicode_names/doc/unicode_names/#cargo-enabled
//require macros...
// in Cargo.toml looks like this:
// [dependencies.unicode_names_macros]
// git = "https://github.com/huonw/unicode_names"
#![feature(phase)]
#[phase(plugin)] extern crate unicode_names_macros;
View rust_varibles.md

I can only rebind a variable that is explicitly declared as mutable; cool.

fn main() {
    let mut x: int = 5;
    x = 10i;
    println!("value of x: {}", x); // -> 10
}
View word_counter.ex
defmodule WordCounter do
def count(sent) do
sent |> normalize |> find_words |> count_unique |> Enum.sort()
end
def find_words(sent) do
Regex.scan(~r/\w+/, sent)
end
View gist:9946328
### Keybase proof
I hereby claim:
* I am jbowles on github.
* I am jbowles (https://keybase.io/jbowles) on keybase.
* I have a public key whose fingerprint is 18A2 A842 FEB6 3E60 3CB3 AC80 3A7B 98D5 D2AA FE72
To claim this, I am signing this object:
View go1.2_brew_install_hack_for_lazy_and_impatient.rb
# Too lazy to make a pull request and too impatient to wait,
# Just tuck 1.2 into the devel version
## First,
## $brew unlink go
## $vim /usr/local/Library/Formula/go.rb
## around line 20 under the `devel' block edit the following
devel do
#url 'https://go.googlecode.com/files/go1.2rc5.src.tar.gz'
#version '1.2rc5'
You can’t perform that action at this time.