My favorite PL/I type conversion example:
Declare A, B, and C as three-character strings. B='123';C='456';A=B+C;
What does A contain? PL/I automatically coerces strings to decimal numbers
in arithmetic context, so it correctly converts B and C and adds them to
get 579. Then it converts it back to a string of a default length,
which is ' 579'. Then it truncates the string from the right, so the
result is ' '. Oops. -John
Quote #434
((lambda(a) (a a((lambda(a)(lambda()(set! a(+ a 1))a))1)))(lambda(a c)
((lambda(b) (newline)(write b)(a a((lambda(c)(lambda()(c c)))(lambda(a)
((lambda(c) (if(=(modulo c b)0)(a a)c))(c))))))(c))))...