Perl 6: Transparadigm Programming

Date 27 April 2016
Speaker(s) Damian Conway
Fees *academic: 20 CHF   -   for-profit: 0 CHF
Cancellation deadline 26 Apr 2016
City Lausanne
*academic fee includes non for-profit organisations as well as unemployed participants at the time of application.

Overview

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, the designers of Perl 6 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, Damian will explain, discuss, and demonstrate Perl 6 by examining 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.

This class is taught by Damian Conway, a well-known speaker and lecturer (see his official biography or his Wikipedia page). Damian already lectured at SIB several times, and consistently received the best feedback over all courses ever organized at SIB.

Audience and prerequisites

This tutorial is designed for those with some experience in one or more functional, procedural, declarative, OO, or concurrent programming languages.

Application

The course itself is free, but registration is compulsory and a payment of 20 CHF is required from non-SIB members for the course documentation.

You will be informed by email of your registration confirmation.

Location

University of Lausanne

Additional information

Coordination: Frédéric Schütz, Training group at SIB

You are welcome to register to the SIB courses mailing-list to be informed of all future courses and workshops, as well as all important deadlines using the form here.

Please contact training@sib.swiss if you have any question.

Tags