#!/usr/bin/pugs use v6; my @array = (); say @array.end; # prints -1 (empty array) @array = (1..43); # array from 1 to 42 . say " now array size is " ~ @array.end; my $get_last_element = pop @array; say "removed last element $get_last_element "; say " now array size is " ~ @array.end; say "getting first element " ~ shift @array; say " now array size is " ~ @array.end; unshift @array, 'foo';#adding first element say @array[0]; push @array, 'bar';#adding bar to last element say @array[@array.end]; my @arr = <1 2 3 4>; # say "another way of getting the size " ~ +@arr;#getting the size splice @arr; say " size after splice " ~ +@arr;#getting the size my @a = ; say " splice() in scalar context returns last element of array " ~ splice(@a, 1, 2); @a = (2..10); splice(@a,0,0,0,1);## adding 0 an 1 to the beginning splice(@a,5,1,'x');## Replacing the 5th element with x say @a; splice(@a, @a, 0, 12, 13);##append 12 and 13 to the array say @a; say @a.exists(0); ## exists(positive index) on arrays (0) say @a.keys;# without spaces say ~@a.keys; # print with spaces ~ say ~@a.values; @array = ; my @kv = @array.kv; say @kv;# prints 0a1b2c3d @array = ; say @array.sort;# prints abcd @array = ; my @pairs = @array.pairs; say @pairs;#prints 0 a1 b2 c3 d say @pairs[0].key;# print 0 say @pairs[0].value;# print a @array.delete(2);#deletes c @array = ; @array.delete(0, 3);# deletes 'a' and 'd' say @array; @array = ; @array.delete(-2);#deletes c say @array; @array = ; @array.delete(2, -3, -1);# deletes "c d f" say @array; ## Grep my @list = (1 .. 10); my @result = grep { ($_ % 2) }, @list;## grep say @result;# prints 1 3 5 7 9 @result = @list.grep():{ ($_ % 2) };## another way to do it ## Map @result = map { $_ * 2 } @list; @result = @list.map():{ $_ * 2 };## another way to do it say @result;# @array = ; # @array.uniq @array.max @array.min; to do in pugs