type safety

Where did the notions of static type safety (as in, say ML or Java)
and dynamic type safety (as in, say, Scheme or Smalltalk) first enter
computing?  Was type safety first defined by Strachey, by the Algol
committee, or elsewhere?  Is the concept directly traceable to work on
types in the logic community, or was it rediscovered?  And if it was
rediscovered, how many times?  Answers within this millennium or the
next, please.  Cheers, -- P

Philip Wadler                             wadler@research.bell-labs.com
Bell Labs, Lucent Technologies      http://www.cs.bell-labs.com/~wadler
600 Mountain Ave, room 2T-402                   office: +1 908 582 4004
Murray Hill, NJ 07974-0636                         fax: +1 908 582 5857
USA                                               home: +1 908 626 9252
       ``There may, indeed, be other applications of the system
            than its use as a logic.''  -- A. Church, 1932