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