Perl 6 is a new production-ready multi-paradigm language in the Perl family. It offers everything from low-level bitwise operations on raw bytes, to a full range of built-in system commands, to hygenic source code macros, to direct symbol-table introspection and manipulation, to run-time composition of multiply-dispatched multimethods from mixins, to object-oriented parsing grammars with hybrid DFA/NFA rules, to concurrent higher-order functions applied over infinite lists of pipelined arbitrary precision integers.
More importantly, Perl 6 does not restrict you to a single paradigm across your entire application; nor within a single compilation unit, namespace, block, subroutine, or even statement. Instead, you can easily combine and integrate all these functional, procedural, declarative, OO, and concurrent constructs within any chunk of code, no matter how small, without losing readability or efficiency. We call it “transparadigm programming”: not five separate choices of computation model, but a single computation model with five integrated choices.
In other words, we stole the best features from 20 different languages, and then spent over a decade working out how to fit them together in a way that is clean, efficient, powerful, and still usable by actual human beings. Perl 6 was the result.
In this class, Dr Damian Conway (one of the principle designers of Perl 6) will discuss and demonstrate some of the most interesting transparadigmatic features of the language, using familiar real-world examples stolen from every Programming 101 class you’ve ever taken.
Damian Conway is an internationally renowned speaker, author, and trainer, and a prominent contributor to the Perl community. Currently he runs Thoughtstream, an international IT training company that provides programmer training from beginner to masterclass level throughout Europe, North America, and Australasia. Most of his spare time over the past decade has been spent working with Larry Wall on the design and explication of the Perl 6 programming language. He has a PhD in computer science and was until recently an adjunct associate professor in the Faculty of Information Technology at Monash University, Australia.
Comments on this page are now closed.
©2015, O'Reilly Media, Inc. • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • firstname.lastname@example.org