Skip to content

Instantly share code, notes, and snippets.

@awwaiid
Created May 6, 2016 15:44
Show Gist options
  • Save awwaiid/d29955eefc31de8a22995ecd8dbcf427 to your computer and use it in GitHub Desktop.
Save awwaiid/d29955eefc31de8a22995ecd8dbcf427 to your computer and use it in GitHub Desktop.
Strange Loop talk proposal -- due 2016-05-09
http://thestrangeloop.com/cfp.html
Title: Rakudo/Perl6, The Polyglot Langauge
Abstract (max 1500 chars)
========
Taking multi-paradigm to a new level, Perl 6 goes far beyond it's Perl 5 roots, adopting concepts from many languages. From Haskell/Elixir style typed multi-dispatch to Ruby style objects-all-the-way-down, you can pick a model that best fits your problem domain. Add to this some very practical innovations, such as a grammar engine and native stream/promise async/concurrency, and you have both a useful tool and an interesting experimention platform. The production-ready Rakudo implementation of Perl 6 targets both it's own MoarVM and the JVM, and a JS target is in progress!
In this talk I'll highlight both some of the expected/standard features of a modern gradually-typed dynamic language, along with highlights of where Perl 6 provides some innovative concepts.
What will the attendee learn? [private]
=======================================
Instructions: Describe (briefly) what the attendee will learn from this session beyond what we can see in the abstract. This section will be avaialable only to organizers and reviewers. Please avoid any personally identifying information.
Attendees will learn some Perl 6! I'll especially highlight two things:
* "boring" code is what you'll normally see in day-to-day life
* Demonstrate some advanced language features that fit nicely into the language. Example:
# No parallel map-reduce
@big-data.map(*.calculate).grep(*.is-good)
# Parallel map-reduce, add 'race'
@big-data.race.map(*.calculate).grep(*.is-good)
Adding .race makes this use multiple threads (separate cpu cores), under the hood switching from plain lists to basically streams of promises.
I'll use this and other similar examples, looking to both inspire people to try Perl 6 and steal some ideas back into their own systems!
Talk history [private]
======================
Instructions: Please list where you have given or may give this talk prior to Strange Loop, and whether videos of the tlak are available. Reviewers will NOT see this information but the organizers may use it during final consideration - we WILL accept talks that have been previously given elsewhere.
I haven't presented this exact talk, but have presented similar material at the DC Polyglot Programming Meetup and at the 2015/2016 DC-Baltimore Perl Workshop. I've been an active contributor to the Perl 6 and Rakudo projects.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment