Tuple

provide an immutable List value type

NAME

Tuple - provide an immutable List value type

SYNOPSIS

use Tuple;

my @a is Tuple = ^10;  # initialization follows single-argument semantics
my @b is Tuple = ^10;

set( @a, @b );  # elems == 1

my $t = tuple(^10);  # also exports a "tuple" sub

DESCRIPTION

Raku provides a semi-immutable Positional datatype: List. A List can not have any elements added or removed from it. However, since a list can contain containers of which the value can be changed, it is not a value type. So you cannot use Lists in data structures such as Sets, because each List is considered to be different from any other List, because they are not value types.

Since Lists are used very heavily internally with the current semantics, it is a daunting task to make them truly immutable value types. Hence the introduction of the Tuple data type.

AUTHOR

Elizabeth Mattijsen [email protected]

Source can be located at: https://github.com/lizmat/Tuple . Comments and Pull Requests are welcome.

COPYRIGHT AND LICENSE

Copyright 2018, 2020, 2021 Elizabeth Mattijsen

This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.

Tuple v0.0.9

provide an immutable List value type

Authors

  • Elizabeth Mattijsen

License

Artistic-2.0

Dependencies

Test Dependencies

Provides

  • Tuple

The Camelia image is copyright 2009 by Larry Wall. "Raku" is trademark of the Yet Another Society. All rights reserved.