• TUX



Perl 5 version 16.1 documentation
Recently read



perlexperiment - A listing of experimental features in Perl


This document lists the current and past experimental features in the perl core. Although all of these are documented with their appropriate topics, this succinct listing gives you an overview and basic facts about their status.

So far I've merely tried to find and list the experimental features and infer their inception, versions, etc. There's a lot of speculation here.

Current experiments

  • fork() emulation

    Introduced in Perl 5.6.1

    See also perlfork

  • Weak references

    Introduced in Perl 5.6.0

  • Internal file glob

    Introduced in Perl 5.6.0

    Accepted in XXX

  • 64-bit support

    Introduced in Perl 5.005

    Accepted in XXX

  • die accepts a reference

    Introduced in Perl 5.005

    Accepted in Perl XXX

  • Unicode support

    Introduced in Perl 5.6.0

    Accepted in Perl 5.8.0 XXX

  • -Dusemultiplicity -Dusethreads

    Introduced in Perl 5.6.0

  • Long Doubles Still Don't Work In Solaris

    Introduced in Perl 5.7.0

  • GetOpt::Long Options can now take multiple values at once (experimental)

    Getopt::Long upgraded to version 2.35

    Removed in Perl 5.8.8

  • 5.005-style threading

    Introduced in Perl 5.005

    Removed in Perl 5.10 XXX

  • Test::Harness::Straps

    Removed in Perl 5.10.1

  • perlcc

    Introduced in Perl 5.005

    Removed in Perl 5.9.0

  • our can now have an experimental optional attribute unique

    Introduced in Perl 5.8.0

    Deprecated in Perl 5.10.0

  • Assertions

    The -A command line switch

    Introduced in Perl 5.9.0

    Removed in Perl 5.9.5

  • Linux abstract Unix domain sockets

    Introduced in Perl 5.9.2

    See also Socket

  • Pod::HTML2Pod
  • Pod::PXML
  • threads
  • The <:pop> IO pseudolayer

    See also perlrun

  • The <:win32> IO pseudolayer

    See also perlrun


    See also perldsc

  • internal functions with M flag

    See also perlguts

  • lex_start API

    Introduced in Perl 5.13.7

  • internal API for %H

    Introduced in Perl 5.13.7

    See also cophh_ in perlapi.

  • av_create_and_push
  • av_create_and_unshift_one
  • av_create_and_unshift_one
  • PL_keyword_plugin
  • hv_iternext_flags
  • lex_bufutf8
  • lex_discard_to
  • lex_grow_linestr
  • lex_next_chunk
  • lex_peek_unichar
  • lex_read_space
  • lex_read_to
  • lex_read_unichar
  • lex_stuff_pv
  • lex_stuff_pvn
  • lex_stuff_pvs
  • lex_stuff_sv
  • lex_unstuff
  • parse_fullstmt
  • parse_stmtseq
  • PL_parser->bufend
  • PL_parser->bufptr
  • PL_parser->linestart
  • PL_parser->linestr
  • Perl_signbit
  • pad_findmy
  • sv_utf8_decode
  • sv_utf8_downgrade
  • bytes_from_utf8
  • bytes_to_utf8
  • utf8_to_bytes
  • DB module

    Introduced in Perl 5.6.0

    See also perldebug, perldebtut

  • The pseudo-hash data type

    Introduced in Perl 5.6.0

  • Lvalue subroutines

    Introduced in Perl 5.6.0

    See also perlsub

  • There is an installhtml target in the Makefile.
  • Unicode in Perl on EBCDIC
  • (?{code})

    See also perlre

  • (??{ code })

    See also perlre

  • Backtracking control verbs


    Introduced in: Perl 5.10

    See also: Special Backtracking Control Verbs in perlre

  • Code expressions, conditional expressions, and independent expressions in regexes
  • The \N regex character class

    The \N character class, not to be confused with the named character sequence \N{NAME} , denotes any non-newline character in a regular expression.

    Introduced in: Perl 5.12

    See also:

  • gv_try_downgrade

    See also perlintern

  • Experimental Support for Sun Studio Compilers for Linux OS

    See also perllinux

  • Pluggable keywords

    See PL_keyword_plugin in perlapi for the mechanism.

    Introduced in: Perl 5.11.2

Accepted features

These features were so wildly successful and played so well with others that we decided to remove their experimental status and admit them as full, stable features in the world of Perl, lavishing all the benefits and luxuries thereof. They are also awarded +5 Stability and +3 Charisma.

  • (none yet identified)

Removed features

These features are no longer considered experimental and their functionality has disappeared. It's your own fault if you wrote production programs using these features after we explicitly told you not to (see perlpolicy).

  • legacy

    The experimental legacy pragma was swallowed by the feature pragma.

    Introduced in: 5.11.2

    Removed in: 5.11.3


brian d foy <>


Copyright 2010, brian d foy <>


You can use and redistribute this document under the same terms as Perl itself.