I like to use it whenever I need parser support (currently you can call it DSL) and whenever I implement character processing algorithms.
The last productive code I wrote in F # concerned filters (used to filter incoming messages to the logging service). I have several basic filters (which handle the topic, etc.) And higher order logic filters that combine other filters with AND / OR / NOT statements. The implementation simplifies such โexpressionsโ by converting them to CNF, collecting by type and using special rules (for example, <5 & a <10 => a <5, etc.). In addition to this, I create a simple parser with fsyacc to provide users of this service with an easier way to create filters.
I assume that a hole in F # has as many lines of code that I would need with C # to write just a simplification;)
Carsten
source share