NAME
kurila16delta - what is new for Perl Kurila 1.6
DESCRIPTION
This document describes differences between Perl Kurila 1.5 and Perl Kurila 1.6
Highlights In Perl Kurila 1.6
An error is raised if an undefined subroutine is called (Any AUTOLOAD subroutine is ignored).
v-syntax create 'version' objects.
v-syntax must be used to do version checks
If a globs is attempted to be stringified or numified an error is given.
Core Enhancements
An error is raised if an undefined subroutine is called.
If you call a undefined subroutine and it isn't defined you get an error. No attempt to use AUTOLOAD is made. The same applies of course to method calls: if the method isn't found an error is raised.
Rationale
Prevents all the problems associated with AUTOLOAD
v-strings create 'version' objects.
Use of v-string create version objects, i.e. v1.2.3
would be similar to version-
new("v1.2.3")>. Use of numbers with multiple decimal dots (like 1.2.3
, thus without a 'v'), will give a compile error. There is no VSTRING type.
Rationale
Promotes the use of version object for versions.
v-syntax must be used to do version checks
The VERSION
in use Module VERSION LIST
and use Module VERSION
should be v-syntax, i.e. a 'v' followed by a digit, anything else will not be seen as a version.
Rationale
Makes it more explicit that a version check is done.
Globs throw an error when stringified or numified.
There is a new function Symbol::glob_name($glob)
which returns the name of the glob. Symbol::glob_name returns the name fully qualified, but without a leading '*'. For example: Symbol::glob_name($^STDERR) eq "main::STDERR"
Rationale
Makes finding glob stringification errors easier.
Modules and Pragmas
Removal of the modules AutoLoader, AutoSplit, SelfLoader, Encode::Encoder, FileCache, Object::Accessor, NEXT, Shell
Most of these modules don't work without AUTOLOAD, but there should be no reason to use them.
Adjustment for removal of AUTOLOAD
Many modules have small adjust, because of the removal of AUTOLOAD. Including ExtUtils::Constant of which ExtUtils::Constants::WriteConstants should be used with PROXYSUBS =
1>.
KNOWN BUGS
Documentation
Documentation has not been updated for many of the changes for kurila.
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>.