Skip to content

Instantly share code, notes, and snippets.

type System.Net.WebClient with
member inline internal this.DownloadWithWebClient(addHandler, removeHandler, extract, start) =
let downloadAsync =
Async.FromContinuations (fun (cont, econt, ccont) ->
let userToken = new obj()
let rec handler (_: obj) (args: 'T :> ComponentModel.AsyncCompletedEventArgs) =
if userToken = args.UserState then
removeHandler handle
if args.Cancelled then
ccont (new OperationCanceledException())
function foo(v) {
var x;
var y;
function bar() {
return x + y;
}
if (v) {
x = 5;
return bar();
let rec takeFreshConsTail cons n l =
match l with
| [] ->
if n <> 0 then failwith "insufficient length"
setFreshConsTail cons []
| x::xs ->
if n > 0 then
let cons2 = freshConsNoTail x
setFreshConsTail cons cons2
takeFreshConsTail cons2 (n - 1) xs
let rec takeWhileFreshConsTail cons p l =
match l with
| [] ->
setFreshConsTail cons []
| x::xs ->
if p x then
let cons2 = freshConsNoTail x
setFreshConsTail cons cons2
takeWhileFreshConsTail cons2 p xs
else
@v2m
v2m / list.fs
Last active August 29, 2015 14:03
[<CompiledName("SplitAt")>]
let splitAt (n: int) (list: 'T list) = Microsoft.FSharp.Primitives.Basics.List.splitAt n list
@v2m
v2m / Guess.cs
Last active January 4, 2016 21:29
using System;
interface IContainer
{
object Obj { set; }
}
struct P : IContainer
{
public object Obj { set { this.o = value; } }
object o;
var x = /°+/
type A private() =
[<DefaultValue>]
val mutable x: string
new(x : string) =
if x = null then nullArg "x"
A()
then
printfn "x=%s" x
type B(x : string) =
type A() =
[<DefaultValue>]
val mutable x: string
new(x : string) =
if x = null then nullArg "x"
A()
then
printfn "x=%s" x
type B(x : string) =
type A =
val x: string
new(x : string) =
if x = null then nullArg "x"
{x = x}
then
printfn "x=%s" x