Skip to content

Instantly share code, notes, and snippets.

// Learn more about F# at http://fsharp.org
open System
open System.Threading.Tasks
let ( ^ ) f x = f x
type IStore =
abstract member Save: 'T -> Guid
let inline ( ^ ) f x = f x
let debounce time f =
let loop = MailboxProcessor.Start ^ fun mailbox -> async {
let mutable lastMsg = None
while true do
let! msg = mailbox.TryReceive(time)
match msg with
| None when lastMsg.IsSome -> f lastMsg.Value
type BuilderStep =
| SetupProxy = 1
| SetupTimeouts = 2
type DriverBuilder() =
let steps = Dictionary()
let driverOpt = ChromeOptions()
do
module CounterBot =
type State = int
type Msg =
| Increment
| Decrement
let init = 0
type IStore =
abstract member GetState : unit -> Async<'T>
abstract member SaveState: 'T -> Async<unit>
type IServiceProvider =
abstract member Resolve : unit -> 'T
type GetTodoListQuery = unit
type AddCommand = { Title: string; }
type RemoveCommand = { Id: Id; }
@BashkaMen
BashkaMen / todo
Last active April 16, 2020 11:58
open System
type Id = int
type TodoValue =
| Text of string
| Markdown of string
| Html of string