O que é o equivalente em F # do evento público C #?

Estou tentando traduzir para o código F # deste artigohttp://www.codeproject.com/Articles/35532/C-COM-Object-for-Use-In-JavaScript-HTML-Including

Eu tropecei nestas linhas:

public delegate void MyFirstEventHandler(string args);
public event MyFirstEventHandler MyFirstEvent;

Eu tentei traduzir isso em F # como:

type MyFirstEventHandler = delegate of string -> unit
type MyFsComComponent () = 
    let my_event = new Event<MyFirstEventHandler,string> ()

    [<CLIEvent>]
    member x.MyFirstEvent = my_event.Publish

E eu recebo:'MyFirstEventHandler' tem um delegado não padrão

Eu posso compilar com:

type MyFirstEventHandler = delegate of obj*string -> unit

Mas isso não é o que é necessário no controle de COM.

Esta questão também é levantadaC # para transição de classe F # - "evento público" ainda não teve solução

RESOLVIDO Graças à guirlanda de folhas

type MyFirstEventHandler = delegate of string -> unit
type MyFsComComponent () =    
    let my_event = new DelegateEvent<MyFirstEventHandler> ()

    [<CLIEvent>]
    member x.MyFirstEvent = my_event.Publish

faz o truque.

questionAnswers(1)

yourAnswerToTheQuestion