Skip to content

Instantly share code, notes, and snippets.

View ulve's full-sized avatar

Olov Johansson ulve

  • Future Ordering
  • Umeå
View GitHub Profile
@ulve
ulve / JSVerify.js
Created February 22, 2018 12:00
Propertyp based testing in JavaScript
const jsc = require("jsverify");
const _ = require("lodash");
const add = (a, b) => a + b;
const mult = (a, b) => a * b;
const sub = (a, b) => a - b;
const addIsCommunicative = jsc.checkForall(
jsc.integer,
jsc.integer,
@ulve
ulve / sum.cs
Last active February 28, 2018 11:34
Sum list
public void Calc()
{
var lists = new List<List<int>>
{
new List<int> { 1, 1, 2, 2 },
new List<int> { 1, 1, 1, 1 },
new List<int> { 1, 2, 3, 4 },
new List<int> { 9, 1, 2, 1, 2, 9 }
};
@ulve
ulve / hopactest.fsx
Created March 9, 2018 12:44
Hopactest
#r "packages/Hopac/lib/net45/Hopac.Core.dll"
#r "packages/Hopac/lib/net45/Hopac.Platform.dll"
#r "packages/Hopac/lib/net45/Hopac.dll"
open Hopac
open Hopac.Infixes
type Delkrav = {
DelkravId : int
Delkravsnamn : string
@ulve
ulve / Hopac api gateway.fsx
Created March 13, 2018 14:14
Using hopac as a api gateway in f#
#r "packages/Hopac/lib/net45/Hopac.dll"
#r "packages/Hopac/lib/net45/Hopac.Core.dll"
#r "packages/Hopac/lib/net45/Hopac.Platform.dll"
#r "packages/FSharp.Data/lib/net45/FSharp.Data.dll"
#r "packages/Http.fs/lib/net461/HttpFs.dll"
#r "packages/System.Net.Http/lib/net46/System.Net.Http.dll"
open Hopac
open Hopac.Infixes
open FSharp.Data
def get_request id do
:timer.sleep(:rand.uniform(10000))
IO.puts "#{id} klar"
end
def run_normal do
Enum.map(1..10_000, &get_request(&1))
end
def run_async do
public enum Målstatus
{
Nytt,
Diariefört,
Gallrat,
Avlutat
}
public interface IMål
{
@ulve
ulve / Combinator.cs
Last active April 4, 2018 13:17
Simple parser combinator
using System;
using System.Collections.Generic;
using System.Linq;
namespace ParserCombinator
{
public class Result<T, U>
{
public U Value { get; private set; }
@ulve
ulve / bättre interface.ts
Last active April 12, 2018 18:33
En enkel parser combinator för typescript
// Okej nu behöver vi lite typer
interface Success<T> {
kind: "success";
val: [T[], string];
}
interface Failure {
kind: "failure";
message: string;
}
@ulve
ulve / sara.cs
Created April 11, 2018 15:55
parsercombinator på jobbet
public static OrignalAdress ParseLine(string str)
{
var separator = Parse.String(",");
var quote = Parse.Char('\'');
var parsaNull = Parse.String("null").Return("null");
var parsaVärde = from open in quote
from content in Parse.AnyChar.Except(quote).Many()
from close in quote
@ulve
ulve / Difference types.ts
Created April 26, 2018 14:03
Keys of types that differ from a base type
interface IBase {
nånProp: string;
}
interface IFirst extends IBase {
fulProp: string;
}
interface ISecond extends IBase {
FulProp: string;