|
|
researchv10 Dan Cross
#
# W O R D C O U N T I N G
#
# This program tabulates the words in standard input and writes the
# results with the words in a column 20 characters wide. The definition
# of a "word" is naive.
procedure main()
wordcount(20)
end
procedure wordcount(n)
local t, line, x, i
static letters
initial letters := &lcase ++ &ucase
t := table(0)
while line := read() do
line ? while tab(upto(letters)) do
t[tab(many(letters))] +:= 1
x := sort(t,3)
every i := 1 to *x - 1 by 2 do
write(left(x[i],n),x[i + 1])
end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.