=over

=item prototype FUNCTION
X<prototype>

=item prototype

Returns the prototype of a function as a string (or
L<C<undef>|/undef EXPR> if the
function has no prototype).  FUNCTION is a reference to, or the name of,
the function whose prototype you want to retrieve.  If FUNCTION is omitted,
L<C<$_>|perlvar/$_> is used.

If FUNCTION is a string starting with C<CORE::>, the rest is taken as a
name for a Perl builtin.  If the builtin's arguments
cannot be adequately expressed by a prototype
(such as L<C<system>|/system LIST>), L<C<prototype>|/prototype FUNCTION>
returns L<C<undef>|/undef EXPR>, because the builtin
does not really behave like a Perl function.  Otherwise, the string
describing the equivalent prototype is returned.

=back