Very true, thank you. But print hidden("hey"); would only pass myscript.pl?hey= which might not always be what you wanted. Especially if you want to maintain state in a HTTP authentication through hidden fields. Mostly, it depends on what your doing to decide what you want to use. Thanks. Later