Skip to content

Instantly share code, notes, and snippets.

Lincoln Atkinson latkin

Block or report user

Report or block latkin

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
@latkin
latkin / README.md
Last active Aug 29, 2015
Extended 'for' loops for F#
View README.md

Backing code and examples for two different mini-frameworks adding extended imperative-style for loops in F#.

Discussed in blog post here.

@latkin
latkin / readme.md
Last active Aug 29, 2015
Blog: Non-transitive dice
@latkin
latkin / test.fsx
Created Apr 22, 2015
Try block perf overhead
View test.fsx
#time ;;
let testNoTry () =
let mutable x = 0
for i in 1 .. 1000000000 do
x <- x + 1
x
let testTry () =
let mutable x = 0
@latkin
latkin / code.fsx
Last active Aug 29, 2015
Benchmark of groupBy perf
View code.fsx
open System.Collections.Generic
open System.Diagnostics
let groupBy keyMaker elements =
elements |> Seq.groupBy keyMaker |> Seq.length
let loopGroup keyMaker elements =
let d = Dictionary<string, seq<'a>>()
for p in elements do
let key = keyMaker p
@latkin
latkin / ops.fsx
Created Apr 30, 2015
Scoping nonstructural operators
View ops.fsx
[<AutoOpen>]
module Ops =
open NonStructuralComparison
let inline nsHash x = hash x
let inline nsCompare x = compare x
let inline (=&) a b = a = b
let inline (<>&) a b = a <> b
let inline (<&) a b = a < b
let inline (>&) a b = a > b
let inline (<=&) a b = a <= b
@latkin
latkin / code.fsx
Last active Aug 29, 2015
Seq.cache repro
View code.fsx
open System.Collections.Generic
let someDataSource = seq{ 1 .. 100 }
let ordersForTask = Dictionary<int, seq<int>>()
let getOrdersForTask task =
match ordersForTask.TryGetValue task with
| true, orders -> orders
| false, _ ->
let orders =
@latkin
latkin / readme.md
Last active Aug 29, 2015
Blog: A handy Powershell filter for converting plain text to objects
@latkin
latkin / readme.md
Last active Aug 29, 2015
Blog: Null-checking considerations in F#
@latkin
latkin / ProvidedTypes.fs
Last active Oct 6, 2015
Static params to provided methods
View ProvidedTypes.fs
(*
* all of ProvidedTypes.fs
* as of https://github.com/fsprojects/FSharp.TypeProviders.StarterPack/blob/245fe3b0126ac6a326a14a0f6b1ef569680b08b3/src/ProvidedTypes.fs
*)
// then add to the bottom
interface ITypeProvider2 with
member __.GetStaticParametersForMethod(methodWithoutArguments:MethodBase) =
match methodWithoutArguments.Name with
You can’t perform that action at this time.