Building a console-based user interface can be fun and powerful, with a good set of building blocks. This talk explores Terminal::UI -- a new module for writing terminal interfaces in Raku. We will walk through a number of examples, showing how to set up scrolling text boxes, popup alerts and keyboard-based events. We also look at the implementation, including concurrency, introspection, error handling and testing.
Jim will give us an opinionated introduction to Perl 7.
Console interactions such as the ruby on rails console, the python debugger, remote ssh sessions, and docker container shells often involve diverse environments and short lived sessions. Automation is often difficult because the console will sometimes require a tty. Historically, tools like `expect` and `script` were designed to facilitate automation in these environments. Tools like `screen` and `tmux` also provide wrappers to allow for multiplexing and better interactivity. Tmeta combines features from both -- providing interactivity and scripting capabilities. In this talk we describe some of the features of tmeta and its implementation in the Raku programming language.
Counting Better Voting Methods. The Ancient Greeks used Pebbles to count Ballots, today we use computers to count ballots, but the method of counting them is the same, and throwing Pebbles into Urns is more secure than many of our voting machines. Vote For One, Most Votes Wins only works well when there are only two choices. With Ranked Ballots Voters can express a list of preferences. Vote::Count is a Perl library for tabulating Election Results with Ranked and Range Ballots.