Search code examples
f#code-metrics

Lines of code and other metrics in F#


How to get some nice statistics about my F# code?

I could imagine things like

  • number of lines of my code
  • number of files
  • number of characters?
  • number of functions, classes, modules etc

Solution

  • Why not use some simple shell utilities?

    Answers in order

    wc -l *.fs
    ls -l *.fs | wc -l
    wc -c *.fs
    grep module *.fs | wc -l
    grep type *.fs | wc -l
    grep "^let\|member" *.fs | wc -l
    

    Update: Some examples for recursive folders - I hope the pattern is obvious

    wc -l `find . -name "*.fs" `
    find . -name "*.fs" | wc -l
    wc -c `find . -name "*.fs" `
    grep module `find . -name "*.fs" ` | wc -l