Como analisar comentários com o FParsec

Estou tentando analisar comentários no estilo lisp de uma linguagem de expressão s com o FParsec. Eu recebi ajuda para analisar comentários de linha única neste tópico anterior -Como converter um analisador FParsec para analisar o espaço em branco

Enquanto isso foi resolvido, ainda preciso analisar comentários de várias linhas. Aqui está o código atual -

/// Read whitespace character as a string.
let spaceAsStr = anyOf whitespaceChars |>> fun chr -> string chr

/// Read a line comment.
let lineComment = pchar lineCommentChar >>. restOfLine true

/// Read a multiline comment.
/// TODO: make multiline comments nest.
let multilineComment =
    between
        (pstring openMultilineCommentStr)
        (pstring closeMultilineCommentStr)
        (charsTillString closeMultilineCommentStr true System.Int32.MaxValue)

/// Read whitespace text.
let whitespace =
    lineComment <|>
    multilineComment <|>
    spaceAsStr

/// Skip any white space characters.
let skipWhitespace = skipMany whitespace

/// Skip at least one white space character.
let skipWhitespace1 = skipMany1 whitespace

Infelizmente, a análise multilineComment nunca é bem-sucedida. Como esse é um combinador, não posso colocar pontos de interrupção nem analisar por que ele não funcionar

Alguma idéia por que não vai funcionar?

questionAnswers(1)

yourAnswerToTheQuestion