Perl 6 by Example
Perl 6 by Example

Retired

This book is no longer available for sale.

Perl 6 by Example

This book is 85% complete

Last updated on 2018-09-10

About the Book

This book will be published by Apress as Perl 6 Fundamentals A Primer with Examples, Projects, and Case Studies. All readers who have purchased it so far will get a free ebook version of th finished book.

About the Author

Moritz Lenz
Moritz Lenz

Moritz is a Perl 6 core developer. He has contributed signficantly to the official test suite, the Rakudo Perl 6 compiler, and is the initiatior of the official Perl 6 documentation project. He has also authored several modules, and runs infrastructure for the Perl 6 community. In his day job, he develops Perl 5 and Python code, and maintains a Continuous Delivery system for his employer.

Table of Contents

  • 1. How To Get a Copy of the Apress Version of This Book
  • Foreword
  • 2. What is Perl 6?
    • 2.1 Perl 5, the Older Sister
    • 2.2 Library Availability
    • 2.3 Why Should I Use Perl 6?
    • 2.4 Summary
  • 3. Running Rakudo Perl 6
    • 3.1 Installers
    • 3.2 Docker
    • 3.3 Building from Source
    • 3.4 Testing your Rakudo Star Installation
    • 3.5 Documentation
    • 3.6 Summary
  • 4. Formatting a Sudoku Puzzle
    • 4.1 Making the Sudoku Playable
    • 4.2 Shortcuts, Constants, and more Shortcuts
    • 4.3 IO and other Tragedies
    • 4.4 Get Creative!
    • 4.5 Summary
  • 5. Datetime Conversion for the Command Line
    • 5.1 Libraries to the Rescue
    • 5.2 DateTime Formatting
    • 5.3 Looking the Other Way
    • 5.4 Dealing with Time
    • 5.5 Tighten Your Seat Belt
    • 5.6 MAIN Magic
    • 5.7 Automated Tests
    • 5.8 Summary
  • 6. Testing say()
    • 6.1 Summary
  • 7. Silent Cron, a Cron Wrapper
    • 7.1 Running Commands Asynchronously
    • 7.2 Implementing Timeouts
    • 7.3 More on Promises
    • 7.4 Possible Extensions
    • 7.5 Refactoring and Automated Tests
      • Refactoring
      • Mocking and Testing
      • Improving Reliability and Timing
      • Installing a Module
    • 7.6 Summary
  • 8. Stateful Silent Cron
    • 8.1 Persistent Storage
    • 8.2 Developing the Storage Backend
    • 8.3 Using the Storage Backend
    • 8.4 Room for Expansion
    • 8.5 Summary
  • 9. Review of the Perl 6 Basics
    • 9.1 Variables and Scoping
    • 9.2 Subroutines
    • 9.3 Classes and Objects
    • 9.4 Concurrency
    • 9.5 Outlook
  • 10. Parsing INI files using Regexes and Grammars
    • 10.1 Regex Basics
      • Character Classes
      • Quantifiers
      • Alternatives
    • 10.2 Parsing the INI Primitives
    • 10.3 Putting Things Together
    • 10.4 Backtracking
    • 10.5 Grammars
    • 10.6 Extracting Data from the Match
    • 10.7 Generating Good Error Messages
      • Failure is Normal
      • Detecting Harmful Failure
      • Providing Context
      • Shortcuts for Parsing Matching Pairs
    • 10.8 Write Your Own Grammars
    • 10.9 Summary
  • 11. A File and Directory Usage Graph
    • 11.1 Reading File Sizes
    • 11.2 Generating a Tree Map
    • 11.3 Flame Graphs
    • 11.4 Functional Refactorings
    • 11.5 More Language Support for Functional Programming
    • 11.6 More Improvements
    • 11.7 Explore!
    • 11.8 Summary
  • 12. A Unicode Search Tool
    • 12.1 Code Points, Grapheme Clusters and Bytes
    • 12.2 Numbers
    • 12.3 Other Unicode Properties
    • 12.4 Collation
    • 12.5 Summary
  • 13. Plotting Using Inline::Python and Matplotlib
    • 13.1 Extracting the Stats
    • 13.2 Plotting with Python
    • 13.3 Bridging the Gap
    • 13.4 Using the Bridge to Plot
    • 13.5 Stacked Plots
    • 13.6 Idiomatic Use of Inline::Python
      • Types of Python APIs
      • Mapping the Function API
      • An Object-Oriented Interface
    • 13.7 Summary
  • 14. What’s Next?
    • 14.1 Scaling Your Codebase
    • 14.2 Packaging Your Application
      • Packaging as a Traditional Perl 6 Module
      • Deploying with Docker
      • Windows Installers
    • 14.3 Closing Thoughts
  • Acknowledgements
  • Notes

The Leanpub 45-day 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms...

Write and Publish on Leanpub

Authors, publishers and universities use Leanpub to publish amazing in-progress and completed books and courses, just like this one. You can use Leanpub to write, publish and sell your book or course as well! Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks. Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. It really is that easy.

Learn more about writing on Leanpub