On Thu, Mar 13, 2003 at 06:28:00PM +0100, Angel Faus wrote:
:
: Damian Conway wrote:
: > But large projects -- where typing will be most important --
: > *can't* deal with that. That's the point of typing: to specify and
: > enforce interface contracts. At compile-time if at all possible.
:
: One quick question about this. If I write:
:
: sub foo (Bar $f) {..}
:
: my $x = some_function_that_returns_bar();
: foo($x);
:
: Will this fail because the compiler _requires_ that the type be known
: at compile-time, or will it work because it will the delay the
: type-checking until run-time?
In the absence of a pragma to the contrary, type checking will be done
at run time when the type can't be determined at compile time. But
surely the S&M&B&D types will create a pragma that requires the type
to be known at compile time.
larry