The Smalltalk Programming Language

Hello World Example Program


Click below to go directly to a specific section:
Description | Source Code | Program Notes


Description

This program demonstrates how to count letters in a sentence and compares Smalltalk with Pascal


Source Code

Pascal Smalltalk
program frequency
const
size = 80;
var
s: string[size]; |scfk|
i: integer;
c: char;
f: array[1..26] of integer; f := Array new: 26.
k: integer;
begin
writeln('enter line'); s := Prompter prompt: 'Enter line'
readln(s); default: ''.
for i := 1 to 26 do 1 to: 26 do [:i | f at: i put: 0].
f[i] := 0;
for i := 1 to size do 1 to: s size do: [:i |
   begin
c : = c := (s at: i) asLowerCase.
   asLowerCase(s[i});
if isLetter(c) then c isLetter
begin ifTrue: [
K := ord(c) - ord('a') + 1; k := c asciiValue - &a asciiValue + 1
f[k] := f[k] + 1
end ]
end ].
for i := 1 to 26 do ^f
write(f[i], ' ')
end.

Using Smalltalks powerful built-in buiding blocks the same code could have been written as this:

| s f |

s := Prompter prompt: 'Enter line' default: ''.

f := Bag new.

s do [ :c | c isLetter ifTrue: [f add: c asLowerCase}}.

^f


Program Notes

This program was created using Smalltalk Express for Windows.


[Back] [Home]


Last modified: 03:37 PM on 10/01/1999