Skip to content

Instantly share code, notes, and snippets.

View t0yv0's full-sized avatar

Anton Tayanovskyy t0yv0

View GitHub Profile
# Downloads a file from a given URL to the current directory.
function wget($url)
{
$path = $url.Substring($url.LastIndexOf('/') + 1)
$dir = pwd
$location = [System.IO.Path]::Combine($dir, $path)
$client = new-object System.Net.WebClient
$client.DownloadFile($url, $location);
}
module Specialization =
type ITyped<'T1,'T2> =
abstract member Run<'T3> : 'T1 -> 'T2
type private Function<'T1,'T2> = delegate of 'T1 -> 'T2
let Specialize<'T1,'T2> (algorithm: ITyped<'T1,'T2>) =
let aT = typeof<ITyped<'T1,'T2>>
let def = aT.GetMethod("Run").GetGenericMethodDefinition()
let dT = typeof<Function<'T1,'T2>>
let rec fac = function
| 0 -> 1
| n -> fac (n - 1) * n
def readFile(path):
f = open(path, 'r')
r = map(lambda x: x.strip(), f.readlines())
f.close()
return r
animals = readFile('animals.txt')
@t0yv0
t0yv0 / List.v
Created October 24, 2010 15:00
The only list of length zero is the empty list.
Require Import Coq.Lists.List.
(** The only list of length zero is the empty list. *)
Lemma length_zero : forall (a : Type) (x : list a),
length x = 0 <-> x = nil.
Proof.
intros; split; intro.
induction x; auto; discriminate.
rewrite H; compute; auto.
Qed.
type Action =
| HomePage
| AboutUs
| BlogHomePage
| Blog of BlogId
Router.Infer<'T>() : Router<'T>
A [Href (ctx.Link (Blog 5))] [Text "Next blog"]