The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

kurila113delta - what is new for Perl Kurila 1.13

DESCRIPTION

This document describes differences between Perl Kurila 1.12 and Perl Kurila 1.13

Highlights In Perl Kurila 1.13

Values passed to subroutines or elements of an array or hash are no longer restricted to being a scalar, but can also be arrays or hashes. Making it possible to use complete data structures without needing references.

Core Enhancements

Values can be any type

A value can be a plain-value, array or hash. There are no distinctions between. The sigils are meaningless, and don't indicate anything containing the type

expand operator <

Arrays are no longer automaticly expanded to a list. The expand operator < should be used to expand an array to a list.

Subroutines always return a scalar; wantarray keyword removed

Subroutines always return a scalar, and behave as if called in scalar context. As a consequence the wantarray keyword has been removed.

New operators nelems and nkeys

nelems returns the number of elements of an array. nkeys returns the number of keys in a hash.

Only Hashes can be tied

Scalars, arrays and handles can no longer be tied.

Forward subroutine declarations are no longer supported.

KNOWN BUGS

Documentation

Documentation has not been updated for many of the changes for kurila.

Extensive use of lists

Lists are used in a lot of places where arrays are probably more appropriate.

Self referential assignment problems

Assigning some value to a part of itself behaves unexpected.

Tied hashes with complex data

Tied hashes do not work correctly with complex data structures. Assigning arrays or hashes to a value of tied hash might behave strange.

Limited platform support

Perl Kurila has only been tested/build for x86_64-linux-gnu-thread-multi platform.

SEE ALSO

The INSTALL file for how to build Perl Kurila.

The README file for general stuff.

The Artistic and Copying files for copyright information.

HISTORY

Written by Gerard Goossen <gerard@tty.nl>.