Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions doc/Language/structures.rakudoc
Original file line number Diff line number Diff line change
Expand Up @@ -44,17 +44,18 @@ internal pointer representation are printed. However

for ^2 {
my $list = (1, 1);
say $list.WHICH
say $list.WHICH;
} # OUTPUT: «List|94674814008432␤List|94674814008432␤»

In this case, C<$list> is using the Scalar sigil and thus will be a L<C<Scalar>|/type/Scalar>. Any scalar with the same value will be exactly the same, as shown when printing the pointers.

=head1 Complex data structures

Complex data structures fall in two different broad categories:
L<C<Positional>|/type/Positional>, or list-like and
L<C<Associative>|/type/Associative>, or key-value pair like, according to how you
access its first-level elements. In general, complex data structures, including
L<C<Positional>|/type/Positional> or list-like on the one hand, and
L<C<Associative>|/type/Associative> or key-value pair like on the other hand,
according to how you access its first-level elements.
In general, complex data structures, including
objects, will be a combination of both, with object properties assimilated to
key-value pairs. While all objects subclass L<C<Mu>|/type/Mu>, in general complex objects
are instances of subclasses of L<C<Any>|/type/Any>. While it is theoretically possible to mix
Expand Down