Prev: Array assignment

Command line options

Note! This site is about Perl 6.
If you are looking for a solution for Perl 5, please check out the Perl 5 tutorial.

@*ARGS is the array maintained by language that holds the values supplied on the comman line. It does NOT include the name of the program. Only the argument after the program. The name of the program, and the relative path to it, is in the variable $*PROGRAM-NAME.


#!/usr/bin/env perl6
use v6;

my $color = @*ARGS[0];

if not $color {
    my @colors = <Blue Yellow Brown White>;

    for 1 .. @colors.elems -> $i {
        say "$i) @colors[$i-1]";

    my $input = prompt "Please select a number: ";
    $color = @colors[$input-1];

say "You selected $color";

The Perl 6 Tricks and Treats newsletter has been around for a while. If you are interested to get special notification when there is new content on this site, it is the best way to keep track:
Full name:
This is a newsletter temporarily running on my personal site ( using Mailman, till I implement an alternative system in Perl 6.
Gabor Szabo
Written by Gabor Szabo

Published on 2012-01-01

Prev: Array assignment


In the comments, please wrap your code snippets within <pre> </pre> tags and use spaces for indentation.
comments powered by Disqus
Suggest a change
Elapsed time: 4.005871

Perl 6 Tricks and Treats newsletter

Register to the free newsletter now, and get updates and news.