This is what I get:
$ echo HI | LANG=C grep '^[a-z]'
$ echo HI | LANG=en_US.utf8 grep '^[a-z]'
$
How come? $ echo HI | LANG=C grep '^[a-z]'
$ echo HI | LANG=en_US.utf8 grep '^[a-z]'
$
How come? ; grep --version
GNU grep 2.6.3
; echo A | LANG=en_US.utf8 grep '[a-z]'
A