None of these differences correctly classifies Hello as both a program and documentation, as far as I can tell. Hello is an example program. It is difficult to deal with such grey areas and I assume that it requires a case-by-case review. I have never found it difficult. When it's hard to decide, neither choice is really wrong, so pick whichever seems better.