Prev: Object Oriented Perl 6

Simple Point class

In Perl 6 we define classes with the "class" keyword. It can be used either as the first line of a files or infront of a block defining the class. The has keyword is used to create attributes and the various twigils can be used to fine tune the meaning of those attributes. Using dot (.) as the twigil will create a public attribute meaning it will automatically create and accessor for that attribute. When a class is defined it automatically provides a constructor called new that can get a hash to set the attributes. WHAT helps with introspection so we can ask what class does an object belong to. By default the accessors are read only so you cannot assign to them.
use v6;

class Point {
    has $.x;
    has $.y;

my $a = => 23, y => 42);

say $a.WHAT;     # Point()

say $a.x;        # 23

#$a.x = 10;      # Exception: Cannot assign to readonly variable.

Prev: Object Oriented Perl 6

Table of Contents


In the comments, please wrap your code snippets within <pre> </pre> tags and use spaces for indentation.
comments powered by Disqus

Perl 6 Tricks and Treats newsletter

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