There's a lot more to F# than its OCaml origins. It's obviously heavily based on OCaml, but the directions have diverged.
One of the most powerful features I've found is part of the LINQ framework - the expression tree output. You can specify parts of code to be 'half-compiled', it leaves an AST fragment in the output in addition to the regular code.
This means you can do runtime transformations, for example to JavaScript or HTML.
The pattern matching extensions also make these transformations easier than you'd expect.
One of the most powerful features I've found is part of the LINQ framework - the expression tree output. You can specify parts of code to be 'half-compiled', it leaves an AST fragment in the output in addition to the regular code.
This means you can do runtime transformations, for example to JavaScript or HTML.
The pattern matching extensions also make these transformations easier than you'd expect.