121 reputation
2

Mark Cidade

http://www.marxidad.com/Aboutme

I first learned BASIC at age 11 on a Commodore 64.

Former SDET, ADO.NET Team @ Microsoft.

   
 class Maybe<T> 
  { T t;
    Maybe(){}

    public static Maybe<T> Just(T t){ return new Maybe<T>{t=t};}

    static Maybe<T> nothing = new Maybe<T>();
    public static Maybe<T> Nothing 
     { get {return nothing;}
     }

    public Maybe<U> Select<U>(Func<T,U> f) 
     { return Maybe<U>.Just(f(t));
     }

    public Maybe<V> SelectMany<U,V>(Func<T, Maybe<U>> f, Func<U,V> g)
     { var x = f(t);
       if (x == Maybe<U>.Nothing) return Maybe<V>.Nothing;
       return Maybe<V>.Just(g(x.t));
     }
  }

Top Tags (1)

Score 2
Posts 1
Posts % 100

Top Posts (1) All Questions Answers | Votes Newest

Badges (2)

Gold
Silver
Bronze 2

Rarest