Jonathan Worthington – Perl 6: beyond dynamic vs. static



Jonathan Worthington – Perl 6: beyond dynamic vs. static

Jonathan Worthington - Perl 6: beyond dynamic vs. static

Is Perl 6 dynamic? Well, it sure looks like it: you can eval code at runtime, do all kinds of late-bound lookups, write code without a type declaration in sight, dynamically generate types, and even mutate the language and the way its object model works.

But hang on a moment! Misspell a variable or object attribute? That’s a compile time error. Call a subroutine that doesn’t exist? Yup, same deal. Passing just one argument to a sub that needs two? There’s a good chance you’ll be told about that too…at compile time. Want to write code that uses native integers and floating point numbers? Go right ahead and throw in some types. Oh, and those super-dynamic modules that extend the language? They can get in on the act, and flag up things to the programmer at compile time too!

In this session, we’ll explore how Perl 6 strikes a balance between static and dynamic, and how the language and implementation being dynamic enough at compile time actually enables more useful static checking.

Comments are closed.