
Task

Write a computer program that computes and shows its own   entropy.



Related Tasks

   Fibonacci_word
   Entropy


without js -- command_line, file i/o
function entropy(sequence s)
    sequence symbols = {},
             counts = {}
    integer N = length(s)
    for i=1 to N do
        object si = s[i]
        integer k = find(si,symbols)
        if k=0 then
            symbols = append(symbols,si)
            counts = append(counts,1)
        else
            counts[k] += 1
        end if
    end for
    atom H = 0
    for i=1 to length(counts) do
        atom ci = counts[i]/N
        H -= ci*log2(ci)
    end for
    return H
end function
 
?entropy(get_text(open(substitute(command_line()[2],".exe",".exw")),"rb"))
