akkadotnet/akka.net — pull request #202 by Horusiath (2014-07-13 10:42:55+00:00)
Title: F# API - extended spawn functions for supervisor strategy definition

I've noticed that current `spawn` function doesn't allow programmers to define a custom supervisor strategies. I've extended them by defining `spawns` function, which takes one more parameter - SupervisorStrategy builder function.

Example usage:
```

let oneforone (system:ActorSystem) name (decider: Exception -> Directive) (f: Actor<'m> -> Cont<'m,'v>) =
spawns system name (fun() -> OneForOneStrategy(System.Func<_,_>(decider)) :> SupervisorStrategy) f

let decider (e:Exception) =
match e with
| :? ArgumentNullException as exc -> Directive.Escalate
| _ -> Directive.Restart

let act =
oneforone system "one" decider
<| fun mailbox -> ...
```

I'm not sure if presented `oneforone` (an analogously `allforone`) should be a part of F# API. @thinkbeforecoding could you review that one?